Re: Roles, againDon Dwiggins <email@example.com>
Date: Thu, 5 Oct 1995 02:29:21 -0400
From: Don Dwiggins <firstname.lastname@example.org>
CC: email@example.com, firstname.lastname@example.org, email@example.com,
firstname.lastname@example.org, email@example.com, firstname.lastname@example.org
Subject: Re: Roles, again
Reply-to: Don Dwiggins <email@example.com>
Pat, I think we've probably been talking past each other somewhat (speaking
of deja vu :-); nevertheless, I've found this dialogue helpful, not least by
forcing me to clarify my own ideas about the connections among design,
conceptualization, and representation.
>Ive been assuming that we are talking about a formalism suitable for
>representation, not how to design an interface for engineers to use. (At
>that level the people to talk to are probably perceptual psychologists and
>graphic designers, not logicians.) The issue is not whether people find
>conventional logical notation a handy one to use, but whether extensional
>logic is capable of encoding all the distinctions in meaning that a
>suitable interface might need. Its a representation language, not a
And I've been assuming that we're talking about the use of conceptual
tools to support the process of design (including, but not limited to,
representation formalisms). (I wouldn't have spoken up in this forum
except for my perception that CGs, KIF, standard logic, etc., are
beginning to be applied in engineering contexts.)
Specifically, whether designing a knowledge base or an executable
application, the goal of the game is to capture some aspects of a real
situation in a formal model, for some particular purpose. In order to
do this for a complex situation, the process must go through
intermediate stages in which the descriptions are informal or
semi-formal. Also, unless only one person will ever care about the
results, communication is an important goal of representation; if noone
else can understand your formal model, you have much less assurance that
you've properly represented the real situation.
To me, the issue is not just whether extensional logic is capable of
encoding all the distinctions, but whether this encoding can be
understood and communicated to serve the purpose of the effort. (In
software engineering, there's a growing realization that software
development isn't just a dialogue between a programmer and the computer;
qualities such as readability, modifiability, and reusability are very
important to "industrial strength" software. This may not be currently
true of knowledge bases, but it certainly will be when large KBs get
serious use and have to evolve to meet changing situations and new
About my rough characterization of "level", you say:
>Thats too vague to be helpful. With this definition, my son's tinkertoys
>might be higher-level than a pencil and paper one minute and lower-level
>the next. Also, A might be higher-level than B for one person but
>simultaneously lower-level for another. You just mean something like
>"handier" (as your examples illustrate).
Actually, you're close there. My notion of level includes the person
using the tool and the purpose for which it's used (chemists do use
tinkertoys seriously for understanding certain characteristics of
molecules). I do mean something like "handier", but more fundamental.
When you're working at the limit of your ability to keep a complex
structure under control, a "handier" tool may make the difference
between success and failure (and in any case, will make conceptual
errors less likely).
Even within logic, this force is at work. If a defined predicate can
always be replaced by its definiens, why bother making definitions? If
a single propositional connective, the Sheffer stroke, can replace
three, why not use it exclusively? What's the attraction of many-sorted
logic? In what sense is a notational variant that produces a 100-line
description better than one that takes 1000 lines for the same semantics?
About whether relations have structure, and the difference between
relations and compound objects:
I agree that a predicate in logic doesn't have any "internal structure".
But that's also true for whatever representation in logic that you
choose for your car. If we choose a reified representation for my
"selling" relation, the connection between the relation and the seller
will be expressed in the same way as the connection between the car and
its engine. In such a theory of your car, some definitions and axioms
will be mostly concerned with the interactions among components, and
between components and the car as a whole (i.e., structural), while
others will deal with the car's function and interactions with other
things. I claim the same is true of the assertions involving the
reified relation; we can speak of structure in one case as coherently as
I agree it's hard to think of a concrete object like a car as a
relation, but the distinction becomes less clear when dealing with
abstract (but no less real) concepts like home sales, corporations,
marriages, and sporting events. Actually, I've come to this view in a
similar way to that of the CYC folks in abandoning a distinction that
didn't seem to make a difference.
Don Dwiggins "All models are false,
firstname.lastname@example.org but some are useful"
-- George Box, "Statistics for Experiments"