- From: naudts guido <naudts_vannoten@yahoo.com>
- Date: Fri, 29 Feb 2008 15:56:34 -0800 (PST)
- To: cwm <public-cwm-talk@w3.org>
Hallo, for those who are intrested: the implementation of sudoku in swap (it's only a grid of 3 X 3 but this can easily be extended): @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix : <http://www.example.com/sudoku#> . @prefix log: <http://www.w3.org/2000/10/swap/log#>. @prefix list: <http://www.w3.org/2000/10/swap/list#>. :l1 :hasCells (:c11 :c12 :c13). :l2 :hasCells (:c21 :c22 :c23). :l3 :hasCells (:c31 :c32 :c33). :l4 :hasCells (:c11 :c21 :c31). :l5 :hasCells (:c12 :c22 :c32). :l6 :hasCells (:c13 :c23 :c33). :c11 :hasValue "1". :c22 :hasValue "2". :c33 :hasValue "3". {?l :hasCells ?L. ?x1 list:in ?L} => {?l :hasCell ?x1}. {?x1 :hasValue ?V.?l :hasCell ?x1. ?l :hasCell ?x2. ?x1 log:notEqualTo ?x2.} => {?x2 :notHasValue ?V}. {?x :notHasValue "1". ?x :notHasValue "2"} => { ?x :hasValue "3"}. {?x :notHasValue "1". ?x :notHasValue "3"} => { ?x :hasValue "2"}. {?x :notHasValue "3". ?x :notHasValue "2" } => { ?x :hasValue "1"}. and the query is: ?x :hasValue ?y. I find this to be an intresting example of using what I call a declarative negation: the negation of having a value is done by creating a negative predicate: :notHasValue. In the same sense we could replace log:notEqualTo with declarations: :c11 :notEqualTo :c12. etc... and in the rule: ?x1 :notEqualTo ?x2. which will have the desired effect because there will be no declaration: :c11 :notEqualTo :c11. But surely the builtin is more easy to use. Anyway, I think the point is that negation in logic can not be avoided. With kind regards, Guido Naudts Lic. zoologie Ir.informatica Adviseur Department of Justice Secretarisdreef 5@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . 2288 Bouwel Belgium ____________________________________________________________________________________ Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
Received on Friday, 29 February 2008 23:56:48 UTC