Re: Roles, email@example.com (John F. Sowa)
Date: Thu, 7 Sep 1995 08:25:20 +0500
From: firstname.lastname@example.org (John F. Sowa)
To: email@example.com, firstname.lastname@example.org
Subject: Re: Roles, again
Cc: email@example.com, firstname.lastname@example.org
There are many issues that Nicola Guarino raised in his last note.
We started to discuss them at IJCAI, but were interrupted before
we could come to a satisfactory resolution.
In general, I agree with Nicola's concerns. I also think that we
both recognize the same distinctions, but we have not come to an
agreement about terminology. I'll say more about this in another
From email@example.com Thu Sep 7 16:31:01 1995
Received: from algol.cs.umbc.edu (firstname.lastname@example.org [22.214.171.124]) by HPP.Stanford.EDU (8.6.10/8.6.10) with ESMTP id QAA15131; Thu, 7 Sep 1995 16:30:58 -0700
Received: (from daemon@localhost) by algol.cs.umbc.edu (8.6.12/8.6.9) id TAA01319 for srkb-outgoing; Thu, 7 Sep 1995 19:28:54 -0400
Content-Type: text/plain; charset="us-ascii"
Date: Thu, 7 Sep 1995 18:29:12 -0600
To: "Nicola Guarino" <email@example.com>, firstname.lastname@example.org,
From: email@example.com (Pat Hayes)
Subject: Re: Roles, again
Cc: "Pierdaniele Giaretta" <firstname.lastname@example.org>,
"Massimiliano Carrara " <email@example.com>
At 6:49 PM 9/6/95 +0200, Nicola Guarino wrote:
>On 28 Aug 95 Jan Schmidt wrote:
>>On 28-AUG-1995 John Sowa wrote:
>>Are Entity, Role, eventually Agent primitives? If not, what would
>>be the definition of, say, Role?
>>It seems to me that the above definition requires Entity an Role to have
>>non-empty intersection (i.e. their common subtype must not be bottom).
>John Sowa answered:
>>Role is not a primitive in the logic, but in the ontology that I am
>>suggesting (which, strictly speaking, is not part of the CG formalism,
>>but of the top-level ontology that is optional) I have been following
>>CG Peirce's categories of Firstness, Secondness, and Thirdness. Since
>>those labels sound strange to most people (and even to Peirce himself,
>>who chose those labels precisely because they had no common associations),
>>I have been using the type labels Form, Role, and Mediation. Form is
>>defined as the top (or Entity) with the differentia Firstness; Role is
>>Entity with differentia Secondness; and Mediation is Entity with
Oh, thats a GREAT help. There were three incomprehensible words and now
there are four. Could I put in a plea for good old Fregean extensionality
here? In spite of its evident ability to intellectually seduce, I cant see
a single practical reason why we should take any of this Peircian mysticism
seriously: it belongs with Freemasonry.
>>Jan's question of whether Agent is primitive is related to Keith Campbell's
>>earlier question of how new primitives can be introduced.
>>In effect, every theory must start with some primitive [...]
If I understand this, its just wrong. Most theories have no primitives (or
perhaps, consist of nothing but primitives: the point being that there are
no eliminative definitions.) The very notion of 'primitive' is a danger,
since it leads to (meaningless) questions (like, where do they come from.)
>>To get back to Keith's question, perhaps we should adopt some notation
>>to indicate when we are introducing a new primitive that is not fully
Let me suggest rather that we might have a special notation to indicate
when a definition is being given, as KIF does, and a 'new primitive' is
simply the default case and requires no special notation: it is just a
symbol that hasnt been used before. If one is to distinguish 'sorts' then
some notational indication must be given of when an assertion is to be
considered a sortal assignment, but again that is not the default case (and
its not the same as being a definition).
>This should answer - at least in part - the questions raised by Peter Clark
>in a recent message:
>On Aug 31, Peter Clark wrote:
>>I'm worried (well, I always have been) about the distinction between roles
>>and concepts, and also how things keep slipping betweeen the two -- eg. as
>>reflected by often having relations and concepts with the same name
>> - On the one hand: saying a concept C is in a role R isn't exactly
>> the same as saying C isa R. An isa hierarchy gets messy with
>> "concepts" in it like "Product", "Transportee", etc., which
>> happens if you write things like [Production]->(PRODUCT)->[Product] etc.
>> Often almost anything can fill these roles.
>> - On the other hand: If a concept is playing some role R, then it
>> presumably should acquire some of information about the role.
>> eg. if John's stomach is filling the role of container in eating (say),
>> then presumably we should be able to infer it's a concave structure,
>> has a boundary and free-space inside it, has a portal etc.
>> If a "role" is reduced to just being another relation then we
>> lose any information about what that role *means*. Surely
>> by filling a role you aquire some properties (somehow) automatically???
>>Maybe a role is a kind of "temporary isa link"? And when is something
>>a role or a concept? Eg. "Agent", and "Mother" are perhaps roles rather
>>concepts? (Or is everything a role)??
Surely there is a well-known path through this tangle. The naming
coincidence arises because in English we often use a relation name to
indicate an individual (as in "Mother! You're safe!" where the full meaning
is clearly "My Mother!..", rather than "A Mother!.." or "Motherhood!..").
We shouldnt let this enthymematic elegance of our communication language
confuse our conceptual language, but always clearly distinguish between the
individual (my mom) from the relation (is-the-the-mother-of) it might have
to another individual (me). If we do this, then to capture the linguistic
regularity noted (that in certain
cases the relation name can be used to denote the property), we need to
talk about the relations. Elegant and powerful notations already exist for
doing this: in this case for example we could say
(lambda x)(x is-the-mother-of a) = (Mother a).
These notations can of course be strongly typed, if necessary.
>I would say that, roughly, every unary predicate is either a concept or a
>property: Mother, Pedestrian and Person are all concepts, while Red may be a
>property (within a particular ontological commitment); the former two are
>roles, accordinto the definitions above, but only Mother has a
>corresponding *relational interpretation*, namely Has-Mother.
I suppose you mean that (Mother a) implies (exists x)(x is-the-mother-of
a); or possibly (exists R)(exists x)(x R a). If so, you can 'define' being
an attribute thus:
(forall A) (Attribute A) iff
(forall x)((A x) implies (exists R)(exists x)(x R a) )
Of course if you want uniqueness conditions, etc., these can all be
asserted as needed. (By the way, this is all essentially first-order...if
you give it the right (Henkin) semantics.)
>A final comment deserves Peter's concern regarding the proliferation of
>concepts: one of the advantages of a clean distinction between types and
>roles is the possibility to superimpose a "skeleton" of types on a huge
>network of concepts: such a skeleton (which in most cases turns to be a
>tree) would help a lot for indexing purposes.
Types are indeed an excellent idea for this reason, but they can get a bit
complicated if you want to utilise them fully, as for example in
unification. (See for example Tony Cohn's doctoral thesis.)
By the way, interesting 'sort' structures are not then usually trees. For
example, consider the relation of being-a-boundary-of. This can hold
between a line and a surface or a surface and a volume, but not between a
line and a volume. Or for a more mundane example, consider
being-married-to, which can hold between a male and a female or vice versa,
but not between two males or two females. In cases like these there isnt
any way to make the sortal structure tree-like: there isnt any sort above
Male and Female which one can assign to the arguments of the
being-married-to relation which captures the needed constraint.
Beckman Institute (217)244 1616 office
405 North Mathews Avenue (415)855 9043 or (217)328 3947 home
Urbana, Il. 61801 (217)244 8371 fax