Re: lifting rules send cwm into a tailspin

I confirm in latest CVS. It might like an issue caused by cwm being
confused by variable renaming, but I'm that seems wrong. I really don't
see what its doing. This is likely a result of cwm trying to avoid
formula c14n whenever possible. In essence, an infinite number of

{ S a Man } => { S a Mortal }

triples are being generated. I don't know enough yet. I'll look into it
later.

Thanks,
Yosi


Dan Connolly wrote:
> I'm trying to do some lifting and policy reasoning,
> but it's not working. I reduced it to this testcase:
>
> --8<--
> @keywords is, of, a.
>
> @forAll S, P, O.
>
> @prefix log: <http://www.w3.org/2000/10/swap/log#>.
> @prefix s: <http://www.w3.org/2000/01/rdf-schema#>.
>
> # truth predicate, limited to simple triples. hmm.
> { ?F a Truth; log:includes { S P O }. P a s:Property }
>  => { S P O }.
> log:implies a s:Property.
>
> { { S a Man } => { S a Mortal } } a Truth.
> socrates a Man.
> --8<--
>
> If I put that in test/truthpred.n3 and run it thusly
>
> $ python cwm.py test/truthpred.n3 --chatty=10 --think
>
> I get an endless stream of...
>                   warning - reopen formula:{1216111124 type Man}
>                   warning - reopen formula:{1216111124 type Man}
>                   warning - reopen formula:{1216111124 type Man}
>                   warning - reopen formula:{1216111124 type Man}
>                   warning - reopen formula:{1216111124 type Man}
>                   warning - reopen formula:{1216111124 type Man}
>
> I'm not sure how this sort of lifting is supposed to work
> when S and O bind to formulas with variables, but I don't think
> it should send cwm into an infinite loop.
>
>   

Received on Monday, 12 February 2007 16:18:30 UTC