Predicate Logic
The first of these, predicate logic,
involves using standard forms of logical symbolism which have been familiar to
philosophers and mathematicians for many decades. Most simple sentences, for
example, ``Peter is generous'' or ``Jane gives a painting to Sam,'' can be
represented in terms of logical formulae
in which a predicate is applied to
one or more arguments (the term
`argument' as used in predicate
logic is similar to, but not identical with, its use to refer to the inputs to
a procedure in POP-11):
PREDICATE ARGUMENTS
generous (peter)
gives (jane,
painting, sam)
Consider the following sentence:
``Every respectable villager worships a deity.'' A moment's reflection will
reveal that this is ambiguous. Is it saying that there is one single deity to
which each respectable villager offers worship? Or does each worshipper have
his or her own deity, to which a fellow respectable villager may or may not be
also praying? With predicate logic it is easy to reveal the nature of the
ambiguity, by a device known as quantification.
Quantification allows one to talk in a general way about all things of a
certain class or about some particular but unspecified thing of a certain
class. We can, for instance, express the proposition ``All of Jane's friends
are generous'' in terms of the following formula:
For
any X: IF friend(X,jane) THEN generous(X)
while the sentence ``Jane has at
least one friend who is generous'' can be expressed as follows:
For
some X: friend(X,jane) AND generous(X)
The expressions `For any X' and `For
some X' are known as quantifiers. We
can now use quantification to exhibit the ambiguity of the sentence about the
respectable villagers. The first reading of it can be represented as
It is
thus possible to show in a clear way that the original sentence can express (at
least) two quite distinct propositions. It is possible to infer from the first,
but not from the second, that if Margaret and Neil are two respectable
villagers, then they both worship the same entity. (In the interests of
ecumenical peace, however, it is sometimes better to refrain from letting such
ambiguities come out into the open!)
Predicate logic has a long pedigree.
Its roots go back at least as far as Aristotle, although in its current form it
was developed starting in the late nineteenth century. Associated with it are
techniques for the analysis of many
conceptual structures in our common thought. Because these analytical
techniques are well-understood, and because it is relatively easy to express
the formulae of predicate logic in AI languages such as LISP or POP-11, it has
been a very popular knowledge representation symbolism within AI. Predicate
logic also embodies a set of systematic procedures for proving that certain formulae can or cannot be logically derived
from others and such logical inference procedures have been used as the
backbone for problem-solving systems in AI. Predicate logic is in itself an
extremely formal kind of representation mechanism. Its supporters believe,
however, that it can be used to fashion conceptual tools which reproduce much
of the subtlety and nuance of ordinary informal thinking.
A popular method for incorporating
predicate logic in AI programs has involved a machine-based inference procedure
called resolution, first proposed by
J. A. Robinson (1965). This makes it relatively easy to represent expert, or
commonsense, knowledge in terms of a set of axioms expressed in a special form
of predicate calculus formulae and then derive consequences from these axioms.
Indeed an AI programming language has been developed called Prolog (PROgramming
in LOGic) which employs a resolution inference mechanism together with a restricted
form of predicate logic (Clocksin and Mellish, 1981) and its proponents claim
that it is a powerful tool for building knowledge-based systems.
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2023 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.