(I’ve been travelling for the last week, so haven’t been able to respond to this discussion until now. But Ed capture the key point.)
“The ternary predicate approach that John describes is viable, but clumsy. The ternary predicate approach requires a different ternary predicate if you want to specify location instead of time, or a quaternary predicate to specify both, etc.”
This is why I claimed that IKL “that” (or Sowa “describes”) is necessary. It is just plain unrealistic to expect every predicate to have variants for time and location – not to mention other modifiers that English would express using adverbs. As soon as you want to have a general-purpose ontology (e.g. for time) that can be used with ANY predicate, you need this capability.
From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx [mailto:ontolog-forum-bounces@xxxxxxxxxxxxxxxx] On Behalf Of Barkmeyer, Edward J
Sent: Friday, June 20, 2014 3:08 PM
Subject: Re: [ontolog-forum] Requesting Opinions on the Benefits of Predicates as Nodes
Tara's model is close to the approach used in the OMG Date Time Vocabulary (DTV): http://www.omg.org/spec/DTV/1.0. The included "CLIF ontology" uses the IKL 'that', partly because most of the developers were supporters of OMG SBVR, which has proposition nominalization.
We found Tara's model to be annoying in that it explicitly creates the notion of temporal truth, which most of the DTV team wanted to avoid. The DTV model uses an analogue of John Sowa's DSCR operator to relate 'occurrences' and 'situation kinds' to 'propositions'. Basically, a proposition 'corresponds to' a 'situation kind', whose instances are occurrences, and the proposition 'describes' the occurrences. (Why 'situation kind' is not called 'occurrence type', I can't remember.)
[Part of this was complicated by the fact that SBVR uses 'state of affairs' to conflate 'situation kind' -- a category of events or states -- with 'occurrence' -- an actual event or state -- and then wanders off into possibilia to explain situation kinds that may have no occurrences.]
The 'situation kind' idea is much closer to the natural language processing (Davidsonian) approach of turning verbs into simple predicates that are classifiers of "states of affairs" (UoD things that are events and states). Then other predicates can relate the states of affairs to time, location, and other interesting "adverbial" notions. That approach is useful in specifying procedures and complex event processes, and was used in the ISO 18629 Process Specification Language [where 'language', like 'vocabulary', is a paint job on 'ontology' for communities who fear AI :-)]. The pure NLP approach does not require DSCR or 'that'; it just uses additional predicates to relate the subject and object of the verb, and possibly other participants, to the situations. That is, the Davidsonian/NLP approach is properly first-order. For example:
(cl:comment 'John gives Mary $1 on 18 June 2014'
(exists (s) and(
(actor s John)
(object s "$1")
(recipient s Mary)
("situation occurs within time interval" s "18 June 2014")
Technically in DTV, the reference to "18 June 2014" is to "all time intervals t such that '18 June 2014' indicates t", i.e.,
(if ("time coordinate indicates time interval" '18 June 2014' t)
(exists (s) ....) ))
This generalizes to "all time intervals t such that '18 June' indicates t", and the like.
The point of the DTV approach is that it can be used with the Davidsonian style above, or with Tara's proposition nominalization style, e.g.:
(exists (s) (and
("proposition describes occurrence" (that (give John $1 Mary)) s)
("situation occurs within time interval" s "18 June 2014")
[Yes, the DTV predicates are mostly elaborate verb phrases born of the SBVR vocabulary approach. The CLIF ontology would benefit greatly from "synonymous forms" for the verbs.]
The ternary predicate approach that John describes is viable, but clumsy. The ternary predicate approach requires a different ternary predicate if you want to specify location instead of time, or a quaternary predicate to specify both, etc.
The other problem I have with John's model is a personal dislike of 'instants'. The DTV vocabulary has only 'time interval'. The problem with 'instants' is that it raises the issue of whether time intervals are "open" or "closed". If a time interval has a "starting instant", is that instant in or not in the time intervals that end at that time instant? If it IsIn both, do those time intervals "overlap", as distinct from "meet" in the Allen terminology? (Pat Hayes' treatise covered this point in some detail.) "Instants" are time intervals whose duration is 0, and those only exist theoretically. The fundamental ontological predicate in DTV is 'occurrence occurs throughout time interval'.
Footnote: DTV v1.1 is currently in ballot in OMG, but, except for splitting up one conflation, it just cleans up the text in various places, including the CLIF text.
> -----Original Message-----
> From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx [mailto:ontolog-forum-
> bounces@xxxxxxxxxxxxxxxx] On Behalf Of John F Sowa
> Sent: Thursday, June 19, 2014 12:30 PM
> To: ontolog-forum@xxxxxxxxxxxxxxxx
> Subject: Re: [ontolog-forum] Requesting Opinions on the Benefits of
> Predicates as Nodes
> Tara and Pat,
> I agree with Pat that you don't need a 'that' operator for reasoning
> about time. But I agree with Tara that you need 'that' for many other purposes.
> For the first point, I recommend the following book, which shows how a
> sorted FOL (with time as a sort) can be used to represent anything in
> temporal logic or dynamic logic:
> Gergely, Tamás, & László Úry (1991) First-Order Programming
> Theories, Berlin: Springer.
> They show that you can't reduce temporal logic to dynamic logic or
> vice- versa. But you can translate either one to a version of FOL
> that quantifies over time. A sorted logic is desirable, but not required.
> > (forall C P
> > (if
> > (cl:comment 'C employs P'
> > (employs C P) )
> > (exists T
> > (cl:comment 'It holds during some time interval T that C employs P'
> > (during (that (employs C P)) T )
> > ) ) )
> To express this sentence without IKL, you could use a 2-argument and a
> 3- argument version of 'employs':
> (forall (C P)
> (if (employs C P)
> (exists ((T Interval)) (forall ((t Instant))
> (if (isin t T) (employs C P t)) ))))
> Comment: If C employs P, there is an implicit interval T, and for all
> instants t in T, C employs P at t.
> But a more general option would be an entity of type Employ, which may
> have any number of qualifiers attached to it.
> For required qualifiers, you could state appropriate axioms:
> (forall ((x Employ)) (exists ((T Interval)) (forall ((t Instant))
> (if (isin t T) (at_Time x t)) )))
> Comment: For any instance x of Employ, there is an implicit interval
> T, and for all instants t in T, x occurs at time t.
> With this representation, an assertion that C employs P could be
> represented with "case relations" as
> (exists ((x Employ)) (and (Agent x C) (Theme x P))
> With the above axiom, this would imply that there exists such an interval T.
> The English verb 'occurs' in the comment suggests a more general
> representation: Define Employ as a subtype of Occurrent that persists
> for some interval.
> You could say that the entity of type Employ is a reification.
> But I would rather say that it's just an entity of type Employ.
> Re Tara's examples about using 'that' to represent possibility,
> prohibition, knowledge, etc.:
> > all they do is put the entire burden of representing their meanings
> > on the relation names... and implicitly make a claim that the
> > relevant concepts ... are indeed properly representable as relations
> > between propositions and something else.
> Something like the IKL 'that', McCarthy's 'ist', or the methods of
> situation semantics for relating 'infons' to situations is an
> important first step. But you need a full-blown theory, not just a
> few axioms. That's still a major research area.
> > BTW, did I ever send you my ideas on how to reduce IKL to CL by
> > eliminating "that" constructions recursively? I would be interested
> > in your reactions.
> That report is important. Could you put it on your web site?
> Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
> Config Subscr: 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 join: http://ontolog.cim3.net/cgi-
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Shared Files: http://ontolog.cim3.net/file/ Community Wiki: http://ontolog.cim3.net/wiki/ To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J