[Top] [All Lists]

Re: [ontolog-forum] Ontology, Information Models and the 'Real World': C

To: Waclaw Kusnierczyk <Waclaw.Marcin.Kusnierczyk@xxxxxxxxxxx>
Cc: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: Pat Hayes <phayes@xxxxxxx>
Date: Sat, 2 Jun 2007 01:25:27 -0700
Message-id: <p0623091fc286bca8fbb9@[]>
>Pat Hayes wrote:
>>  This message, and indeed this sub-thread,
>>  illustrate perfectly what seems to me to be the
>>  key advantage of using a 'context ontology' (as
>>  IKL does: that is, treating contexts as objects
>>  and making non-contextual assertions about them)
>>  as opposed to a 'context logic' (that is, a logic
>>  in which assertions are understood as being made
>>  in a context and interpreted there using
>>  contextually local criteria). In a word, contexts
>>  in a context logic make meaningful things
>>  meaningless.
>I have an uncomfortable feeling that IKL prevents me from making some
>simple statements, or that it forces me to do it in an awkward way.    (01)

Perhaps. But it is after all only a version of 
classical first-order logic. Much of what you say 
below would apply to any classical logic.    (02)

>The sentence
>(sleeps pat)
>(that (sleeps pat))
>i.e., its meaning is the proposition that Pat sleeps, simply,
>context-independently, eternally -- which is nonsense.    (03)

Its not nonsense, but it is false.    (04)

But there is something wrong with your exposition 
here. "simply, context-independently" is not the 
same as "eternally", ie "in all contexts". 
Simple logical truth is not contextual *at all*. 
It has nothing to do with contexts, just as 2+2=4 
has nothing to do with times or tenses.  To be 
context-independent is not the same as being true 
in all contexts. It puts the sentence or 
proposition into a completely different category. 
The actual formal language is different. 
Classical logic is not contextual in any way. It 
is not a schema for generalizing over contexts.    (05)

>  Let me want to
>say that Pat sleeps during some specific interval, say int.  If I make
>the statement
>(ist int (that (sleeps pat)))
>what I say is that the (simply and eternally false) proposition that Pat
>sleeps, simply, context-independently, eternally is (the proposition) in
>the relation ist with the context int.  But what does that mean?    (06)

I have no idea. Im not sure I can even parse what 
you say here. But in any case I would not 
recommend this way of representing it, myself. I 
would follow a long tradition in KR and 
relativize the relation to the time, ie treat it 
as a fluent:    (07)

(sleeps Pat int)    (08)

>Instead of making a statement about Pat's sleeping during int, I make a
>statement that some proposition -- which I already know is simply false
>-- stands in a relation to an interval.  Pat suggests -- insists, in
>fact -- that (ist c p) does not mean that p is true, it just means that
>p ist-stands to c, which incidentally is read out as 'p is c-true', and
>which has nothing to do with p's truthness.    (09)

Right. Which is one reason why it is    (010)

>So perhaps I would need to say
>(sleeps-during pat int)    (011)

Yes. Or, an alternative formulation,    (012)

(sleeps (pat int))
or perhaps
(sleeps (during pat int))    (013)

where during is a function from spatiotemporal 
entities and times to temporally restricted 
spatiotemporal entities ("pat during the interval 
int"). Both versions can be made to work 
coherently, but it is probably a mistake to get 
them confused with one another.    (014)

>for which I need to introduce the predicate sleeps-at, or maybe even
>(sleeps-during-int pat)    (015)

No, you want 'int' to be a genuine argument. But why change the relation name?    (016)

>If we deny that (ist c p) means that p (somehow) is true when c is the
>case (by which I mean *is true* in c, not is-true-in-c) -- given that it
>is just false, immutably -- then (ist int (that (sleeps pat))) cannot
>mean that Pat sleeps during int    (017)

Sure it can. In fact, that is exactly what it is 
usually interpreted to mean. But notice that the 
inner '(sleeps pat)' sentence is now being 
interpreted in a context-relative way. It is not 
being treated in the same way that it would be if 
it were simply a bare IKL sentence. (Remember 
that IKL is not a context logic. IKL assertions 
are not made "in" a context: they are just made.) 
It does not predicate a property of pat: it 
predicates a property of pat *in a context*. This 
is a *relation* between pat and the context, not 
merely a property of pat. That is why its logical 
truth (as a simple predication) has no real 
connection to its contextual truth: they are 
simply different meanings. There is a whole topic 
of how to translate a contextual assertion into a 
noncontextual one, eg by translating    (018)

(ist C (that (P a b)))    (019)

into    (020)

(P a b C)    (021)

and    (022)

(ist C (forall (x)(P x)))    (023)

into    (024)

(forall ((x C))(P x C))    (025)

where the C parameter name is being used also to 
refer to the universe of discourse of the context 
(such multiple uses of a single name are allowed 
in CL and IKL)    (026)

>, because it is neither about Pat's
>sleeping, nor about (that (sleeps pat))'s truth.    (027)

Not about its logical truth, no. But surely you 
would expect that: you are the one who wants pat 
to be sleeping in some intervals and not in 
others. If this referred to logical truth, how 
can it *possibly* be both true and false? In a 
logic which does not have tenses, and is not 
indexical, and is not paraconsistent?    (028)

>Can I say that Pat sleeps during int?    (029)

Of course; in fact you can say it many different 
ways. (see for example slide 14 of 
http://ontolog.cim3.net/file/resource/presentation/PatHayes_20061026/OntologyWorkshopSlides.html    (030)

) But everything is clearer if you simply avoid 
contextual talk altogether.    (031)

>(I must be deeply wrong about IKL, I guess.)    (032)

I think you are having two problems. First, you 
seem to be thinking essentially contextually, but 
IKL isn't a contextual language. Second, you seem 
to be being misled by the idea that 
truth-in-a-context must refer to what the logic 
considers to be truth, perhaps because there is, 
or should be, only one basic notion of truth. But 
this does not work for IKL, since IKL provides 
not a context logic but (at best) a context 
*ontology*, i.e. a logical *theory of* contexts. 
Since truth-in-a-context is being modelled by 
this theory, we are free to specify how it is 
realized: and the IKL strategy is to say that P 
is true-in-C just when (ist C P) is logically 
true. I would add, this corresponds very closely 
to what John McCarthy, who introduced the 'ist' 
notion and the use of context logic, says (ist C 
P) should mean.    (033)

Hope this helps.    (034)

Pat    (035)

>Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/ 
>Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/ 
>Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
>Shared Files: http://ontolog.cim3.net/file/
>Community Wiki: http://ontolog.cim3.net/wiki/
>To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx
>    (036)

IHMC            (850)434 8903 or (650)494 3973   home
40 South Alcaniz St.    (850)202 4416   office
Pensacola                       (850)202 4440   fax
FL 32502                        (850)291 0667    cell
phayesAT-SIGNihmc.us       http://www.ihmc.us/users/phayes    (037)

Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/  
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/ 
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx    (038)

<Prev in Thread] Current Thread [Next in Thread>