Dave Reynolds wrote: > 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. Sorry, yes, you are completely right. Jos > > Dave -- +43 1 58801 18470 debruijn@inf.unibz.it Jos de Bruijn, http://www.debruijn.net/ ---------------------------------------------- Many would be cowards if they had courage enough. - Thomas Fuller
This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:34:08 GMT