[topicmapmail] Re: Logicians do not rule the world (fortunately)
Murray Altheim
murray06 at altheim.com
Wed Apr 26 20:03:51 EDT 2006
Quoting Eirik Jensen Opland <opland at ontopia.net>:
> Hi Murray,
>
> Sorry to extend this beyond infinity (c.f. your ad infinitum), but I
> think there's an important point missed in this discussion; the
> distinction between symmetry and bidirectionality.
Hi Eirik,
Fair enough. Lead on...
> On Wed, 26 Apr 2006 09:35:51 +0200, Murray Altheim
> <murray06 at altheim.com> wrote:
>
>> Before this continues ad infinitum,
>>
>> I think what Steve Pepper's lighthearted subject line expresses
>> quite well is that people generally don't like logic, or perhaps
>> even logicians, who are thought of as cold, calculating, possibly
>> not even entirely human beings.
>
> You may be right that some topic mappers don't like logic in it's
> purest sense, or don't care so long as their technology does what
> they want. With all due respect for people who have only a moderate
> interest in logic, I must say I do like logic and I think it's
> important that people like you feel you can safely do inferencing on
> them. I would argue that TM associations are inherently
> bidirectional, but only become symmetric (in the logical sense) if
> the role types are the same.
Before we move on too far down this path I might point out that
one of your assumptions about Topic Map Associations is incorrect,
in that there is no restriction on the number of members. An
Association can be monadic, dyadic, n-adic. So if we limit the
discussion of "symmetry" to dyadic (two-membered) Associations
we can continue.
I must admit that in my own work I've actually modeled all
Associations as dyadic predicates, as I prefer to always model
as you describe below, using the subject-verb-object metaphor,
creating what is called a "bipartite graph." But this isn't a
restriction in TMs per se, just a convenience that permits us
to talk about all Associations within the graph using a subject
and object model that people more easily grok (and we can then
design Association editors that operate upon that basis, etc.).
> You were discussing the expression of symmetry, so I will start with
> the definition. I will use the definition from the wikipedia
> definition of symmetry, i.e. "for all x, y: xRy -> yRx". Please
> correct me if it's not sufficiently accurate.
If we're talking simply English, that's fine, and while accurate, it's
not sufficiently precise. And while it may seem like I'm being overly
pedantic about this, it's only because we are literally discussing
definitions (I'm normally a great deal less formal).
But you'll note that even Wikipedia does go to the trouble of
explicating about 20 different contexts in which the term is used, and
that is without actually delving into which specific branch of logic.
http://en.wikipedia.org/wiki/Symmetry#Symmetry_in_logic
Absent a context, we're just speaking English, not logic. If we state
that we're speaking in logical terms, we know a bit more, but we still
aren't being very precise about matters, but precise enough though for
this discussion's purposes.
> The above relation has implicit roles, i.e. the subject and the
> object. x is the subject because it's written before the R. y is the
> object because it's written after R. What it means to be
> subject/object depends on the definition of R. The key point here is
> that the statement has the implicitly defined roles subject and
> object, which are not the same. One could lay it out as in TM
> structure:
> x <-- subject <-- R --> object --> y
> Where 'x' is a role player, 'subject' is a role type, 'R' is an
> association type, 'object' is the other role type and 'y' is the
> other role player. That's an association. It is bidirectional, in
> the sense that it doesn't matter at which end you start inspecting
> (in this case reading) it. It gives the same meaning.
All is as is expected, yes. A basic logic. We haven't mentioned
whether we're using syllogistic logic, predicate logic, or some
form of propositional calculus, or perhaps some other logic.
Symmetry is either not defined, or is defined differently,
depending on the form. While the most common form taught in
schools is nowadays either predicate logic or "first order logic"
(which is the basis of the ISO Common Logic work), let's assume
that since we've not mentioned quantification we're using a form
of propositional logic. But if we want to use our Topic Map to
make generalized statements about reality and not about specific
operands, we're then using quantification (the "for all" or
"universal quantifier") and are probably using FOL. If we're
talking about Norway we probably don't need that, but if we're
talking about "all dogs" we do.
Point is, until we contextualize our vocabulary we're just
talking in English, not logic -- we don't have the context in
which to speak precisely, as is required in logic. The answer
Rani Pinchuk's question
"I actually asked if by adding rule such as: 'An association
which has two members having the same role types represents
a symmetrical relation' to the Topic Map standard one can
make logical inferences using symmetry. I thought that
adding such a rule (and maybe others) will do the trick.
then becomes not a yes or no, but a question of context. Adding
a statement in the standard *could* define symmetry under those
conditions (and indeed, would), but would still leave out the
more important question from which logical, mathematical context
the word "symmetry" is being taken and used. Absent this, one
can write some software, but under certain conditions it will
fail to make the correct inferences (i.e., any conditions that
fail to conform to the requirements of the logic).
To make this clearer, using the existing example
borders-with(norway : neighbour, sweden : neighbour)
we're using four undefined terms:
borders-with
neighbor
norway
sweden
and if we're all comfortable with that, and we're willing to live
with the limitations of our lack of precision, fine. Norway and
Sweden have had fairly stable borders for a long time, and have
been around for a long time. If we were talking about Israel and
Syria (and we really should generalize this discussion since we're
talking about Topic Map Associations in general) it becomes more
clear that all four of the terms in a similar relation are much
more contentious, that what constitutes each country (as either a
political, national, cultural, religious body) is important to
define, and what defines "borders-with" comes down to what defines
a border, and "neighbor" even gets a bit touchy.
We haven't mentioned time either. There are logical toolkits that
include temporality (and do a fine job of it), and if we aren't
meaning a statement to mean "for all time" (or don't care for the
purposes of our modeling), then we can leave it out. But we need
to be aware of that issue. A country, its borders, the relationships
with its neighbors are all subject to change, sometimes rapidly.
Point is, if we're happy with the level of precision of a statement,
fine. But if we're modeling, and if in particular we expect a
computer to use the "rules" we are stating in order to do inferencing,
such as the inference of symmetricality, then we need to be more
precise, define terms, and the context in which the terms are used.
> However, it is not symmetric, since 'subject' and 'object' are
> different roles.
>
> One way to say that R is symmetric is to assert that the subject and
> the object roles are interchangable. In other words, one could
> assert that:
> x <-- subject <-- R --> object --> y
> implies
> x <-- object <-- R --> subject --> y
>
> This could be written more concisely as:
> x <-- role1 <-- R --> role1 --> y
> where role1 is a kind of placehoder for both subject and object.
>
> This is effectively what topic maps do. Rather than having relations
> with direction, they make role types explicit. If both role types
> are the same, then the association is symmetric. Otherwise it's not.
Actually, despite the specific form of expression in Topic Maps,
the relations inherently have the directionality implicit in
their roles, in that most expressions (in most forms of logic
that permit the complexity of expressions we've been using in
our examples) have the implicit subject-object dichotomy. I don't
see the translation into expressing these statements into Topic
Maps as altering anything.
As for dyadic (two-membered) Associations having identical role
types on each member as defining that Association as symmetric,
so long as we're speaking simply in English. Without contexualizing
the logic we're using it's still just in English.
When we designed the PSI sets for XTM 1.0 we included two
"Association templates" (though we were loath to call them that
because we at that time didn't have the time to be able to properly
define the necessary constraint language for Association Templates),
but for both types, superclass-subclass and class-instance and their
associated roles, we used an undefined logical language, an
informality that was at the time necessary, and something that has
worked well enough for the kinds of informal relational modeling
that a lot of people do, as evidenced by this discussion.
I've certainly been very thankful we were able to squeeze that into
the XTM 1.0 spec, even if it had some warts.
> Having explicit role types also adds expressibility, as one can make
> more specific role types than just 'subject' and 'object'. This is
> particularly useful for associations with more than two roles, as
> they necessitate additional role types.
Yes, absolutely.
> The role type type also improves the expressiveness further for
> relations with more than two roles. You can express partial symmetry,
> that allows your inferencing to differentiate associations like:
>
> Parenthood(father, mother, child) (not symmetric)
> Parenthood(parent, parent, child) (partially symmetric)
> FrendshipClique(friend, friend, friend) (very symmetric)
>
> Surely these kinds of distinctions must useful for inferencing, aren't they.
Agreed. But we've begun informally using a different form of logic
again. This isn't a problem, it just opens up a different toolkit
with different rules and even some more interesting inferencing,
as you note. You've introduced the idea of "partial symmetry."
> The way I see it, TM associations have three main constraints
> regarding symmetry and direction:
>
> 1. They are inherently bidirectional.
> 2. You can't have a symmetric association with different role types.
> 3. You can't have an asymmetric association with the same role types.
>
> These are constraints on the modeller, as he has to take into account
> assumtions in the model, such as repeated role types implying
> symmetry. I don't see a big problem with these constraints, but if
> you see any, I'd be eager to hear about them.
Apart from the mistaken assumption about TM Associations being
inherently bidirectional (which you yourself contradict with your
ParentHood example), yes, certainly.
Murray
...........................................................................
Murray Altheim <murray06 at altheim.com> === = =
http://www.altheim.com/murray/ = = ===
SGML Grease Monkey, Banjo Player, Wantanabe Zen Monk = = = =
In the evening
The rice leaves in the garden
Rustle in the autumn wind
That blows through my reed hut. -- Minamoto no Tsunenobu
More information about the topicmapmail
mailing list