- From: Dave Reynolds <der@hplb.hpl.hp.com>
- Date: Fri, 01 May 2009 10:36:14 +0100
- To: Jos de Bruijn <debruijn@inf.unibz.it>
- CC: Sandro Hawke <sandro@w3.org>, RIF <public-rif-wg@w3.org>
Jos de Bruijn wrote: > > Sandro Hawke wrote: >> Hmmm. I'm wondering how far you'd get by just adding rules like this: >> >> forall ?L ?x >> if is-list(?L) and count(?L) > 0 >> then ?L[rdf:first->get(?L, 0) and >> ?L[rdf:rest->sublist(?L, 1) >> >> forall ?L ?x >> if is-list(?L) and count(?L) = 0 >> then ?L = rdf:nil >> >> but I guess they aren't safe, and "?L = rdf:nil" isn't in Core or PRD, >> and they're ... rather wasteful. > > Actually, I think they are going to be safe, since there is the is-list > guard. ? Surely the safety definition requires each variable to be grounded by a non-external predicate. Certainly I don't see how those rules could be implemented in a PR system. Dave -- Hewlett-Packard Limited Registered Office: Cain Road, Bracknell, Berks RG12 1HN Registered No: 690597 England
Received on Friday, 1 May 2009 09:37:14 UTC