[comp.ai] Logic and AI

chandra@cis.ohio-state.edu (B Chandrasekaran) (05/17/91)

The relationship between logic and AI has been a recurrent subject in
discussions on the methodologies of AI.  I have been ambivalent about
its role, having been often impressed by the clarity that use of logic
sometimes brought to certain issues in AI, but also resisting the idea
of intelligence as a logic machine.  I have been attempting to
reconcile this ambivalence.  I have identified five distinct possible
roles for logic in AI.  These distinctions have helped me to develop a
view of logic which gives logic definite roles in AI.  I think the debates
in the field on this topic could be less polarized (and more illuminating)
if these distinct roles are recognized.  I would very much like to
have feedback on whether the ideas make sense.

     			Roles of Logic in AI

 	1. Logic as the study of justification patterns.  "A, A -> B,
B" is an example of a powerful, domain-independent, universal
justification pattern.  Whatever the methods by which thoughts may be
produced -- logic as a study of justification patterns is strictly
neutral about the generation process -- thoughts are often checked for
validity by the application of such justification patterns.  By the
age of three, my daughter knew that she couldn't fight modus ponens:
"Daddy, why can't I have ice cream?" "Because I had said that if you
didn't eat your spaghetti, no dessert.  Right?"  "Right."  "Did you
finish your spaghetti?" "No."  "That is why you can't have ice cream."
Even though she always followed it up with "But, daddy," she knew
modus ponens won.  Now logicists in AI are looking for more permissive
logical justification patterns, under the rubric of default logics and
nonmonotonic logics.

The spectacular success of deriving universal deductive rules has led
to the operational assumption that there are similarly a small number
of universal inference rules of a nonmonotonic character.  But it
seems to me that such small number of universal nonmonotonic rules may
not exist after all.  It is possible that the case of deduction is a
special one, that much of the nonmonotonicity or default character of
our reasoning is the sum total of a whole bunch of highly
contextualized non-monotonic justification patterns.  The contexts do
not all have to be concrete instances and totally ad hoc, but may be a
mixture of task- and domain- specific patterns.  Thus, taking the case
of abduction, while there may be an abstract set of specifications for
what constitutes useful abductive patterns, diagnosis, medical
diagnosis and scientific theory making, instances of abduction though
they might be, might all have somewhat different operational
justification patterns.  The route to understanding this phenomenon
may well be a study of specific types of tasks and knowledge, i.e., a
much greater immersion in the nitty gritty of human knowledge, with
attendant scruffiness in theory making.

	2. Logical Rule As Generator of Thought.  A rule such as modus
ponens was presented in the previous item as a validation pattern, but
it can also be viewed as a generation rule: If an agent has "A", and
"A-> B", generate "B".  Thus an agent armed with a set of inference
rules as operators will always generate "correct" thoughts.  Whether a
thought, correct as it might be, is useful for the current goals
of the agent is resolved in this view by giving the agent a
goal-directed search mechanism in which the operators always generate
a number of correct thoughts, but which thought is pursued next is
determined in a goal-directed manner.  In order to build an
intelligent agent in this framework, we need a corresponding theory of
tasks and rule selection and application criteria.

When the set of rules is enlarged to include nonmonotonic and various
approximation rules, the generator view becomes more problematic.  If
the number of nonmonotonic rules is anywhere near as large and the
rules themselves as encrusted with domain- and task-specific
application conditions as I suggested might be the case, the idea of a
generation system with this many rules as operators become
increasingly untenable because of the consequent complexity of the
search control machinery.  In my view, most of the objection of
non-logicists in AI to logicism really arises from this construal of
the logic position, namely that it is a proposal for a logic machine
in the sense in which I just described it.

By combining other forms of generation with an
evaluation/justification phase which uses a large repertoire of
justification patterns, ranging widely in the universality-specificity
spectrum, we can achieve what Simon has called substantive rationality
in our machines without a commitment to procedural rationality.

	3.  Logic as a language for describing the world and tasks.
Quite independent of one's theory of mind, one needs a language in
which to describe the objects of thought, i.e., some part of the
world.  Logic has been a pretty strong contender for this job, even
though controversy has surrounded this role for logic as well.  While
logic may not be entirely adequate for describing all aspects of the
world, it certainly has some role.  Sets, relations, functions and
predicates seem like good starting points.  Note that for this role of
logic one needs to make no commitments to use of this representation
for internal manipulation by an intelligence.  For example, consider
modeling the workings of a coin-sorting machine (of the sort that is
part of pop-dispensing machines). Suppose one wishes to know what
features of the coins are being used by the sorter in sorting them.
One might use a logical notation to describe the relation between the
diameter, the weight and the type of coin. Alternative theories can be
formulated within this formalism.  The implications of alternative
theories can be derived (e.g., according to one theory, a brazilian
coin will be classified as a dime, while another theory might predict
that it will be classified as a nickel.  All these predictions can be
done by manipulating the propositions.  Here logic is a very effective
tool for modeling the world.  However, this methodology does not imply
that the sorter is using and manipulating such propositions to make
the decision.

Whether logic is adequate for this task has been, as I said, a
controversial issue.  Wittgenstein is said to have changed his views
radically in his assessment of the role of logic for this purpose.  My
main point here is that logic has played this role for many
researchers in AI who are looking for a formalism in which to be
precise about the knowledge about the world.  Newell's Knowledge Level
proposal is one example where logic is used to describe knowledge
attributable to agents, without any implied commitment about a
logic-based internal representation.

	4.  Logic as a language for semantics of natural language.  To
the extent that a subset of natural language utterances are
propositions about some subject (fragment of the world) and to the
extent that one buys into a role for logic in describing the world,
logic has a natural role for grounding the semantics of natural
language utterances.  A number of caveats are in order. One, even if
one accepts this grounding role for logic in NL semantics, no
commitment needs to be made that the process by which internal mental
mechanisms come up with meaning is similar to the semantic evaluation
procedures of logic.  In particular, issues about how to organize this
computation and the existence of a number of higher level organizing
principles (such as semantic primitives) remain wide open.  Two, there
is significant difference of opinion within AI and philosophy about
treating natural language as mostly having to do with conveying
propositions about some domain of discourse.  If utterances are social
acts, and evoke moods and worldviews and mental images and so on, a
rather different grounding theory than the one provided by logic will
be needed.

	5. Logic as the language for semantics of computer programs.
To the extent one believes that intelligence is a computational
process, and to the extent that logic is currently the preferred
language for the semantics of computer programs, logic will in
principle play a role in describing the meaning of computer programs
which embody theories of some phenomenon of intelligence.  This brings
logic into computational AI in a fairly basic way, but it is possible
to misunderstand the significance of this from an AI point of view.
To take an analogy, architectural ideas are implemented using bricks
and steel and wood and other building materials, and classical statics
and mechanics describe the behavior of these materials under forces of
various kinds.  While statics and mechanics are the language of civil
engineering analysis, they are not the language of architecture as an
intellectual discipline.  Architecture uses a language of habitable
spaces.  Thus, implementation in computer programs notwithstanding,
the language of AI is not obviously that of propositions and truth
values, but rather of goals, concepts, organization,  strategies,
and the like.

What is the bottom line on logic and AI?  Personally, I now realize
that most of my reservations about the role of logic in AI has
concerned the role 2 above, the idea of intelligence as a logic
machine, one whose every step results from the application of logical
inference rules.  Some other roles for logic -- logic for
meta-description and logic for analysis -- seem unexceptionable, when
applied judiciously, i.e., without an automatic commitment to logical
inference as the underlying generative process.  Where I have been
impressed by the use of logic is when it is used for precision in the
definition of tasks and knowledge.  Regarding logic for validation, I
have already expressed my betting that once we move away from
deduction, and go on to nonmonotonic and default inferences, we are no
longer in the realm of a few universal justification rules, but rather
a large variety of highly contextualized patterns, indexed by the type
of goals and domains and so on.  There are still useful general
patterns to be sure, but in application they take on numerous mutant
forms.  A study of nonmonotonic reasoning then is then ipso facto a
study of the multiplicity of tasks and methods and goals.  The use of
these rules again are as validators rather than as generators.

--
B. Chandrasekaran
Department of Computer & Information Science
The Ohio State University
Columbus, OH 43210  Phone: 614-292-0923