Re: file version to demonstrate flakiness bug in Pychinko with no bNodes at all:

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