- From: Yosi Scharf <syosi@MIT.EDU>
- Date: Mon, 22 Aug 2005 09:34:58 -0400
- To: Yarden Katz <yarden@umd.edu>
- CC: public-cwm-talk@w3.org
Yarden Katz wrote:
>Yarden Katz <yarden@umd.edu> writes:
>
>
>
>>Yosi Scharf <syosi@MIT.EDU> writes:
>>
>>
>>
>>>Here is a version of these two files, one of which has the rule fire,
>>>one of which does not, when run in Pychinko.
>>>
>>>a.n3 has the rule fire, c.n3 does not. The two are almost identical,
>>>excecpt for order of triples in the rule. There are no anonymous nodes
>>>anywhere in the file.
>>>
>>>
>>Hi Yosi, sorry for the late reply - still waiting for my dev laptop to
>>return from repair (it has latest pychinko src on it) but I didn't
>>want to keep you waiting anymore. Anyway, c.n3 doesn't fire for the
>>simple reason that you asserted :I :Win :Today. as a fact, which is
>>what the RHS of the rule was going to add. Firing the rule would be
>>redundant as it would add nothing new to the KB. Am I missing
>>something?
>>
>>
It seems so. We seem to have file versions mixed up. I sure hope I never
asserted ``:I :Win :Today.'' as a fact. If in fact I messed up and did
assert it, I would like to see where in c.n3 I asserted this fact. To
recap, c.n3:
----------------------------
@prefix : <#> .
@prefix log: <http://www.w3.org/2000/10/swap/log#> .
@prefix rdf: <http://www.example.com/22-rdf-syntax-ns#> .
@forAll :A,
:B,
:X,
:Y,
:Z .
:a1 rdf:first 1; rdf:rest :a2 .
:a2 rdf:first 2; rdf:rest rdf:nil .
:a1 a :List;
:help2 rdf:nil;
:reverse_helper rdf:nil .
{:A
rdf:first :X;
rdf:rest :Y;
:reverse_helper :Z;
.
:B :help2 :Z; .
}
=>
{:I :Win :Today } .
--------------------------------------------
This is as opposed to a.n3, which is as follows:
---------------------------------------------
@prefix : <#> .
@prefix log: <http://www.w3.org/2000/10/swap/log#> .
@prefix rdf: <http://www.example.com/22-rdf-syntax-ns#> .
@forAll :A,
:B,
:X,
:Y,
:Z .
:a1 rdf:first 1; rdf:rest :a2 .
:a2 rdf:first 2; rdf:rest rdf:nil .
:a1 a :List;
:help2 rdf:nil;
:reverse_helper rdf:nil .
{:A
:reverse_helper :Z;
rdf:first :X;
rdf:rest :Y;
.
:B :help2 :Z; .
}
=>
{:I :Win :Today } .
---------------------------------------------
>
>Typo: it's the other way around. The rule in a.n3 *does not* fire since :I :Win
>:Today is asserted, while the rule in c.n3 does.
>
>
I don't see the above at all. This way:
-------------------------------------------
syosi@mr-burns:/tmp$ diff a.n3 c.n3
18c18
< :reverse_helper :Z;
---
>
21c21
<
---
> :reverse_helper :Z;
---------------------------------------------
Yosi
Received on Monday, 22 August 2005 13:35:27 UTC