- From: Bijan Parsia <bparsia@isr.umd.edu>
- Date: Fri, 16 Feb 2007 14:01:09 +0000
- To: drew.mcdermott@yale.edu
- Cc: www-rdf-rules@w3.org
On Feb 16, 2007, at 1:38 PM, Drew McDermott wrote: >> [Bijan Parsia] >> >> [...] >> However, another way to deal with your specific issue is to make #nil >> related by first and rest to itself. Indeed, nothing prevents cyclic >> models, as you said. In some Lisps, for example, ... > > Yikes! This is just a (notorious) hack, I am aware of the tendentiousness of this solution in the Lisp community. > and doesn't solve, or even > address, the problem. What *is* the problem? Infinite models? If so, it solves the problem. Cyclic models? If so, it clearly doesn't :) > The idea of letting the 'car' and 'cdr' of nil > be nil is a "convenience," and not true to the semantics of nil qua > empty list at all. Is this about modeling lists? If so, we're going to have plenty of other problems too trying to do that in OWL (or FOL). > It can't be literally true that the empty list is > equal to the "list" with itself as head and tail, I don't see why not. I guess it depends on whatyou mean "literally". And "empty list". After all, lists aren't *literally* full or empty (e.g., physically). Is the empty list a member of itself? I can see arguments yes and arguments no depending on how you want to use it or conceive of it and how you define membership. I guess I don't have strong prior intuitions about the nature of empty lists. Well, I guess I do, but then they don't involve pair/ cons structures *at all*. > and if it were then > testing whether a list was empty would be a nightmare. Er if the first and rest of a list is #nil, then the list is #nil. Since #nil has a specific identity in OWL, there's no worries about distinct "equivalent" #nils. So I have no nightmares. Perhaps I'm missing something? I tried to get a problem out of list membership vs. list termination, e.g., '(#nil . (a . #nil)) but i don't see it. Yes, the car is #nil, but the cdr isn't, so the list isn't #nil. Hrm. You couldn't have a list of nothing but #nils, e.g., '(#nil . (#nil . #nil) that was distinct from #nil. Somehow, I'm not too worked up over that, though I guess I can imagine circumstances where it'd be annoying. Cheers, Bijan.
Received on Friday, 16 February 2007 14:01:20 UTC