IEEE TRANSACTIONS ON COMPUTERS, VOL.
852
C-25, NO. 8, AUGUST 1976
Methods for Automated Theorem Proving in Nonclassical
Logics
CHARLES G. MORGAN
Abstract-In this paper we outline two basic methods for automated theorem proving in nonclassical logics, including modal,
many-valued, relevance, and intuitionistic logics. We discuss advantages and disadvantages of each method and give several illustrative examples. We outline a procedure for attacking more
complex problems using a combination of the two basic methods.
Results of experimental applications of the techniques are reported.
Index Terms-Inductive logic, intuitionism, modal logic, relelogic, theorem proving.
vance
INTRODUCTION
T HERE are almost no treatments of automated theorem proving techniques for nonclassical logics to be
found in the literature. The only exceptions seem to be [12]
and [18]. In [12] there is a treatment of what appears to be
a nonclassical fuzzy logic, but the set of theorems turns out
to be exactly the classical theorems, and no new techniques
are developed. In [18] a new technique is developed for
handling virtually any finite-valued logic; however, the
method does not generalize to modal (see [10], [21]), relevance (see [1]), intuitionistic (see [5], [9]), or infinite-valued
logics (see [20] for a survey of noncomputing science literature). This paucity of treatment is somewhat surprising
in view of the importance for artificial intelligence which
is claimed for nonclassical (particularly modal) logics by
various authors (e.g., see [4], [6], [7], [11], [14], [15]). Further, recent results in [13] seem to indicate that an intuitively quite respectable treatment of counterfactual conditionals may be obtained by considering a nonclassical
framework. Thus, in addition to its technical interest, it
seems that there might be important AI applications for
a nonclassical theorem prover.
Many (if not all) propositional and first-order nonclassical logics may be treated as second-order theories. As
such, automated theorem proving can be accomplished by
almost any of the extant higher order theorem provers.
However, higher order theorem provers are theoretically
and practically more complicated and less efficient than
I.
Manuscript received September 22, 1975; revised February 24, 1976.
These results were presented at the IEEE Workshop on Automated
Theorem Proving, Argonne National Laboratory, Argonne, IL, June 3-5,
1975.
The author is with the Department of Philosophy, University of Victoria, B.C., Canada.
first-order routines. If automated theorem proving is to be
developed as a practical tool either for the logician in the
area of nonclassical logics or for the Al researcher wishing
to use nonclassical logics, it seems that avoidance of higher
order techniques is desirable.
In this paper we present two quite general first-order
methods of automated theorem proving for nonclassical
logics. Each method has its own advantages and disadvantages which will be examined in due course. These
methods have actually been employed as tools in our own
study of various nonclassical systems and have proved to
be of some practical importance. But just as important, we
believe a study of these methods can serve to bring to light
several interesting points about the general field of automated theorem proving. We will discuss such points later
in the paper.
In quite general terms, both our techniques involve
maintaining a sharp distinction between the object-language under study and the meta-language in which the
study is carried out. There is virtually no likelihood of
confusing the object-language of some particular group
(involving a dyadic operation function, a monadic complementation function, constants and/or free variables for
the members of the group, and the equality predicate) with
the mathematical meta-language which is generally used
to state very powerful theorems and proofs about group
theory. However, when the material under study is an
object-language for a logic which uses connectives and
quantifiers bearing a superficial resemblance to those of
a formal meta-language, the possibility of confusion is high
enough to warrant an admonition to pay close attention
to the object-language meta-language distinction.
Both of our techniques depend on finding a mapping
from the object-language under study into a first-order
meta-language. The logic underlying the first-order
meta-langauge is ordinary classical logic. Hence, standard
automated theorem proving techniques can be applied to
the first-order meta-language. In our own work we have
used a simple binary resolution theorem prover, but any
automation of first-order theory would do. The main difference between the two techniques is that the one uses a
syntactically oriented meta-language, whereas the other
technique uses a meta-language which reflects the characteristic semantics underlying the object-language being
853
MORGAN: AUTOMATED THEOREM PROVING IN NONCLASSICAL LOGICS
studied. (Given a syntactic theory-a theory of proof-and
a formal semantic theory-a formal theory of truth and
validity-the semantic theory is said to be characteristic
if and only if all and only valid expressions are provable;
for examples, see Theorems 2 and 3 below.) We turn now
to a more explicit description of the two methods.
II. THE SYNTACTIC METHOD
Because of inherent limitations, the syntactic method
can be applied to propositional logics only. In propositional
logics, we generally distinguish between sentence parameters, which essentially play the role of free variables, and
sentential constants, which may be thought of as actual
sentences like "The cat is on the mat." In actual practice,
sentential constants are seldom specified. The only exceptions are usually some arbitrary universally true
proposition designated by t, and perhaps also some arbitrary universally false proposition designated by f.
In -addition to sentential parameters and constants,
propositional logics make use of a number of "connectives," also called "sentence operators." Examples of
sentence operators are the familar material conditional,
commonly designated by "D," and the familiar negation,
logics include most versions of classical logic, intuitionistic
logics, relevance logics, modal logics, tense logics, deontic
logics, many-valued logics, and systems consisting of only
proper subsets of axioms and rules of more common logics.
To illustrate the procedure, we will consider a standard
problem: Given a set of axioms AX1, *, AX, and a set
of inference rules RL1, * *, RLm we would like to (try to)
derive expression THM. Note that for systems defined in
terms of axioms and inference rules, we do not have a disproof procedure as long as we restrict ourselves to "proof'
as an ordered sequence of expressions as usually defined.
If we do not obtain a proof of THM, we cannot, in general,
conclude that no proof exists. Thus, we did not word the
problem "determine if THIM is a theorem," although that
is usually the task before us. Semantic considerations are
generally required for disproof procedures. And even in
those cases in which semantic considerations assure us of
the theoremhood of an expression, they do not provide us
with a syntactic proof of the theorem in the sense defined
above. (Even in those cases in which we have an effective
procedure for constructing an object-language derivation
from the semantic argument guaranteeing theoremhood,
that procedure is not a part of the semantic theory.) Now,
we may have various reasons for seeking a "proof" in this
strict syntactic sense; e.g., we may not have a semantic
theory for the system under consideration.
A real example will help to clarify our discussion and
illustrate the method. Consider a propositional language
whose only connective is the material conditional and
whose sentence parameters are E, El, E2,..,-.. Suppose
our logic contains the following two axioms and rule of
inference:
Al) El D (E2 D El).
A2) (El D)(E2 D E3)) D ((El D E2) D (El D E3)).
R1) From El D E2 and El, conclude E2.
Suppose our proposed theorem is
(a.1) E D E.
The core of the syntactic method consists of mapping these
expressions of the object-language into first-order expressions of a syntactic meta-language.
We treat the axioms, the inference rule, and the theorem
as statements about what is provable. For example, consider Al); intuitively it says
(a.2) For any expression El and any expression E2,
the expression El D (E2 D El) is provable.
The sentence operator "D" may be thought of as a syntactic function "i" taking two expressions as arguments
and mapping them into a more complex expression. Using
variables for the sentence parameters and "PR" for the
monadic predictate "is provable," we can express (a.2)
commonly designated by "'."
Once the propositional language is specified, a particular
logic is delimited by its set of inference rules and axioms.
We will assume that our logics do not contain a rule of
substitution; i.e., a rule to the effect that any expression
may be uniformly substituted for any given sentence parameter in a theorem to obtain another theorem. Rather,
we will always regard axioms with sentence parameters as
axiom schemes, i.e., as standing for an infinite set of axioms
having the specified form. All inference rules are assumed
to be syntactically based. By this phrase we simply mean
that the rules can be stated in the form B1, *, B,,/C where
B1, * * *, Bn and C are all expression schemes of the language (i.e., composed of sentence parameters, sentential
constants, and sentence operators). The B1, *--, B, are
said to be the antecedents of the rule, while C is said to be
the consequent. The rule allows us to write down in a proof
an appropriate instance of C, providing instances of B1
through Bn are already found (in any order) in the proof.
(Of course, the only "instance" of an expression containing
only sentential constants is the expression itself.) We assume finally that our logic contains a finite set of axiom
schemes and a finite set of inference rules. As always, a
proof is just a finite sequence of expressions, each one of
which is either (an instance of) an axiom or else follows
from previous members of the sequence by an inference
rule; a theorem is just the last line of some proof.
The method to be sketched here is applicable to any
propositional logic with a finite list of axioms and a finite
list of syntactically based rules. Not all logics are given in
this form. However, the vast majority of logics studied by formally as
logicians can be specified in this manner. Examples of such
(a.3) (x)(y)PR(i(x,i(y,x))).
- -
-
-
854
IEEE TRANSACTIONS ON COMPUI'ERS, AUGUST
In a similar fashion, we could obtain the following from
A2):
(a.4) (x)(y)(z)PR(i(i(x,i(y,z)),i(i(x,y),i(x,z)))).
The rule of inference is just a conditional statement about
provability. It simply says the following:
(a.5) For any expressions El and E2, if El D E2 is
provable and El is provable, then E2 is
provable.
Using "v " as meta-linguistic disjunction and "_" as
meta-linguistic negation, (a.5) may be formally expressed
as follows:
(a.6) (x)(y)(- 1PR(i(X,y)) v -,PR(x) v PR(y)).
Note again that object-language connectives are treated
as functions in the meta-language, so there is no danger of
formal confusion with meta-language connectives. Finally,
our proposed theorem becomes
(a.7) (x)PR(i(x,x)).
If our language contained sentential constants, then we
would have introduced a constant into the formal metalanguage for each sentential constant of the object language. For example, if we had the axiom
(tDE) DE
we would translate it as
(x)PR (I(i(t,x),x))
where "t" is a meta-language constant corresponding to
the sentential constant " t." The reader should note then
that all of the expressions of the formal meta-language
which result from such a translation contain only constants
and universally quantified variables. So even when we
negate the proposed theorem and Skolemize, we will use
only constants; no new function symbols will be introduced. Syntactic functions will be the only functions used.
The situation will not change even when we consider derived rules of inference below. However, for very complex
meta-theorems which do not arise from simple translation
of object language expressions, it is possible that we might
need to introduce Skolem functions. But such cases will
not be treated here.
If we take the quantifier-free form of the negation of
(a.7) and obtain the quantifier-free forms of the axioms
and inference rule, we can then apply standard binary
resolution techniques as follows:
(b.1) PR(i(x,i(y,x)))
(b.2) PR (i (i (x,i (y,z)),i (i (x,y),i (x,z))))
(b.3) -, PR(i(x,y)) v PR(x) v PR(y}
(b.4) . PR(i(a,a))
PR(i(x,i(a,a))) v -, PR(x)
(b.5)
(b.6) -,PR(x) v -.PR(i(y,i(x,i(a,a))))
PR (y)
v
from Al
from A2
from Rl
from (a.1)
(b.3), (b.4)
(b.3), (b.5)
(b.7)
-i
PR(i(x,i(i(y,i(z,y)),i(a,a))))
PR(x)
(b.8) -.PR(i(i(x,i(y,x)),i(i(z,i(w,z)),
i(a,a))))
q
(b.9)
1976
v -' (b.1), (b.6)
(b.1), (b.7)
(b.2), (b.8).
Obtaining the empty clause tells us that our proposed
theorem is in fact provable. Further, using well-known
standard techniques, we can reconstruct an object-language proof from our resolution clauses. The first step in
the reconstruction of the object proof is to determine which
instances of the axioms will be needed. We make this determination by examining the substitutions required in
making the resolutions. The simplest procedure is to start
at the bottom of the resolution tree and work backwards
to determine the required substitution instances of the
clauses corresponding to object-language axioms.
We first begin with the root of the resolution derivation
(the empty clause), and working backwards, we systematically make all the substitutions which were required in
the derivation. The results are as follows:
(b.9)' 0
(b.8)' - PR (i(i(a,i(i(w,a),a)),i(i(a,i(w,a))Ji(a,a))))
(b.7)' (b.8)' v -,PR(i(a,i(i(w,a),a)))
(b.6)' -,PR(i(a,i(w,a)) v (b.7)'
(b.5)' -. PR(i(i(a,i(w,a)),i(a,a))) v -i PR(i(a,i(w,a))).
From this list it is easy to determine the instances of the
axioms that were used. Since (b.2) was used with (b.8)' to
obtain (b.9)', we will need the following instance of (b.2):
(c.1) PR (i(i (a,i (i (w,a),a)),i (i (a,i (w,a)),i (a,a)))).
Since (b.1) was used with (b.7)' to obtain (b.8)', we will
need the following instance of (b.1):
(c.2) PR(i(a,i(i(w,a),a))).
Since (b.1) was used with (b.6)' to obtain (b.7)', we will
need the following instance of (b.1):
(c.3) PR(i(a,i(w,a))).
No other axioms were used. However, two uses of the inference rule represented by (b.3) were used in obtaining
(b.5)' and (b.6)'. These two instances are as follows:
(c.4) -, (c.1) v (c.2) v PR(i(i(a,i(w,a)),i(a,a)))
(c.5) -,PR(i(i(a,i(w,a)),i(a,a))) v (c.3)
v PR(i(a,a)).
Once we have meta-language statements of the instances
of all the axioms and inference rules used, the reconstruction of the object-language proof is trivial. We need
only look at the proof tree associated with the resolution
derivation to discover the proper sequencing of the axiom
instances with the inference rule instances and fill in the
appropriate nonaxiom steps in the proof. Any Skolem
constants must have been introduced as the result of performing the negation of the proposed theorem. So in de-
855
MORGAN: AUTOMATED THEOREM PROVING IN NONCLASSICAL LOGICS
termining the instances of the object-language axioms and
inference rules required, we may just associate Skolem
constants with the sentence parameters which gave rise to
them. This convention will assure that the theorem as
derived in the reconstructed proof will be identical to the
original statement of the theorem with which we began.
The final object-language derivation associated with the
example above is the following:
(d.1) (E D ((El D E) D E)) D ((E
D (E1 D E)) D (E D E))
(d.2) E D ((E1 DE) DE)
(d.3) E D (El D E)
(d.4) (E D (E1 D E)) D (E D E)
(d.5) E D E
A2)
Al)
Al)
(d.1), (d.2)/
RI)
(d.3), (d.4)/R1).
So if the empty clause is obtained, then there is an
object-language derivation, and indeed, that derivation
may be recovered from the resolution procedure.
Going in the opposite direction, a few brief observations
will assure us that if there is an object-language derivation
of a given expression, then our method must yield the
empty clause (assuming resolution is the theorem proving
device for the meta-language). Assume to be given an
object-language proof of some arbitrary expression. Consider the sequence of expressions which results from
translating each line of the derivation into an appropriate
quantifier-free form in the first-order meta-language. Each
line that is an instance of an axiom is just an instantiation
of the first-order statement of the corresponding axiom.
Consider any line that is not an axiom. It must result from
previous lines by the application of some inference rule
B1, * *, B,JC. By employing the first-order form of the rule
we could easily obtain the appropriate instance of the
first-order form of C from the instances of the first-order
forms of the Bi, using only binary resolution. So from the
appropriate first-order instances of the axioms and inference rules and the negation of the first-order representation of the theorem, we could obtain the empty clause
by resolution. Hence, the instances of the axioms and inference rules together with the negation of the theorem are
unsatisfiable in their first-order form. Since the first-order
instances of the axioms and inference rules are logically
entailed by the first-order versions of the original axioms
and inference rules, the first-order representation of the
axioms and ihference rules together with the negation of
the theorem must be unsatisfiable. Hence the empty clause
may be obtained by resolution from the original versions
of the axioms and inference rules and the negation of the
theorem.
Let ASPL be an arbitrary system of propositional logic
with a finite number of axioms and a finite number of
syntactically based inference rules; let E be an arbitrary
expression in the language of ASPL. By SYN(ASPL) and
-
SYN(E), we mean the first-order representations of ASPL
and E, respectively, using the provability predicate. (Of
course, SYN(ASPL) is the conjunction of the representations of the axioms and inference rules.) The results
presented in this section thus far may be stated as follows.
Theorem 1: The expression SYN(ASPL) & , SYN(E)
is unsatisfiable in the first-order sense if and only if there
is a proof of E in the system ASPL.
Our method is actually somewhat more general than has
been indicated thus far. There are many meta-theorems
(in particular, derived inference rules) which can be handled with the syntactic technique. For example, the
transitivity of the material conditional is easily proved for
the simple system above. The first-order representation
of the statement of transitivity would be the following:
(a.8) (x) (y) (z) (-, PR (i (x,y)) v PR (i (y,z))
v PR(i(x,z))).
Using the standard resolution approach, it is easy to show
that (a.8) is a theorem of (a.3), (a.4), and (a.6). However,
not all meta-theorems which can be expressed in the
first-order meta-language are provable in the purely syntactic mode. For example, adding the following axiom to
Al), A2), and Rl) gives a complete classical system of
propositional logic in terms of "-" (negation) and "D"
(material conditional):
A3) (-El D -E2) D (E2 D El).
Using the monadic function symbol "n" for ".", the
first-order form of A3) is just
(a.9) (x)(y)PR(i(i(n(x),n(y)),i(y,x))).
Now, it is easily shown by semantic methods that the
classical system described is negation consistent.
(a.10) There is no expression E such that both E and
-E are provable.
The first-order representation of (a.10) is just the following:
(a.11) (x)( ,PR(x) v
. PR(n(x))).
But (a.ll) is not a first-order theorem of (a.3), (a.4), (a.6),
and (a.9).
Every theorem of the object language is provable in our
first-order meta-language from the first-order translations
of the axioms and inference rules. And similarly, some
meta-theorems about the object language are provable.
But not all such meta-theorems expressible in our firstorder meta-language are provable from the translations
of the axioms and inference rules. The proofs of some
meta-theorems essentially depend on notions not expressible in our first-order meta-language; for example,
some proofs of meta-theorems depend on semantic notions
which are not represented in our syntactically oriented
meta-language. In short, our method is complete with re-
856
IEEE TRANSACTIONS ON COMPUTERS, AUGUST
spect to theorems of the object language, but it is incomplete with respect to theorems about the object language.
We do not have a useful characterization of those metatheorems expressible in our first-order language which are
not provable. Such a characterization is an open problem.
At this point, let us concisely state the general procedure
for clarity: Given a set of axioms AX1, * *, AX,, and a set
of inference rules RL1, * * *, RLm we would like to derive
THM. We associate a first-order constant symbol with
each sentential constant and a first-order function symbol
with each sentential connective. We then translate AX1,
* AXn, RL1, * * *, RLm, and THM into first-order expressions about the provability predicate, replacing sentential parameters by universally quantified free variables.
(If THM is a complicated meta-theorem, it may be necessary to introduce both existential and universal quantifiers.) We then try to derive the first-order version of
THM from the first-order versions of AX1,,--, AXn,
RL1, --, RLm using some standard theorem prover. If
successful, we can reconstruct an object-language proof of
THM. (If THM is a derived inference rule or some other
meta-theorem, we could reconstruct a proof scheme.)
We should note that when we are dealing with objectlanguage theorems and even with most derived inference
rules, the first-order expressions we obtain are all Horn
sentences. It is quite possible that specialized techniques
like those discussed in [8] might be very efficient in the
domain of nonclassical logics, and we would like to see
some research in this area.
The general method sketched above cannot be extended
in a straightforward way to nonclassical first-order
theories. Our problem is that there is no simple way to
distinguish object-language variables from meta-language
variables. But even if we use a many-sorted language to
avoid this problem, the language would have to contain
function variables. For example, consider the following
expression:
-
(x)*(x) D +(a).
The meta-language would have to include function variables to use in the interpretation of "I." But this requirement just means that the meta-language could not
be of first order. So it seems that the syntactic method is,
in general, restricted to propositional object-languages,
although it is not certain that this restriction is theoretical
rather than practical.
In spite of this restriction, there are several characteristics of the syntactic method which make it of some considerable interest. First, of course, is the fact that the
method is applicable to almost any propositional logic. But
more importantly, no semantic theory is required, so very
exotic systems can be studied even when no semantic
theory is available.
Another interesting feature of the syntactic method is
that it treats a given object-language system in much the
1976
same way as a human user would treat the system. That
is, it uses the inference rules specified by the system in such
a way that it is possible to recover object-language proofs
from the success of the automated theorem prover. Further, one can add to the original axioms and inference rules
additional theorems and derived inference rules as they
are discovered. This additional information will be employed in subsequent derivations in the same way that
human logicians employ already known facts about a
system in attempts to prove further facts.
The fact that the syntactic method treats distinct axiomatizations as being really distinct objects makes it
possible to compare different formulations of the same
theory. For example, many axiomatizations of the classical
propositional calculus are known. But each would be
treated as a distinct theory by the syntactic method. So,
for instance, one might use a standard body of classical
theorems and measure the efficiency of the different formulations by mean length of proof over the standard body
of theorems. And of course the entire procedure could be
completely automated.
The syntactic method may also be used as a source of
simply stated problems whose first-order proofs are quite
deep. Such problems can be used as excellent tests for
theorem provers. For example, consider the system obtained from Al), A2), A3), Ri), and the following:
A4) L(El D E2) D (LE1 D LE2)
A5) -L El D (LE2 D E2)
A6) -L ElD(LE2DL-L-E2)
R2) From E, conclude LE.
This system is just a simple modal logic with the monadic
operator "L." (See [14] and its references for a general
account of this system and related systems.) It can be
shown on purely semantic grounds that the following is a
theorem of the system:
-
(a.12) L(LE D E).
However, we have as yet seen no object-language derivation of (a.12). At last report, even the very powerful system
of Larry Wos and his associates was unable to produce a
proof using the syntactic method sketched here.
The existence of such problems serves to illustrate the
important distinction between object-language heuristics
and meta-language heuristics. Even with a very powerful
first-order theorem prover, one may not be able to derive
some theorem of a given propositional system. However,
the adaition of a few derived rules of inference or a few
intermediate theorems may make all the difference in the
world. To put the matter in a slightly different way, even
with very powerful meta-language heuristics, it may not
be possible, given reasonable time and space bounds, to
derive a given theorem from the initial formalization of a
given system without some further in-depth knowledge
about the system. For a given system, there may be a rel-
MORGAN: AUTOMATED THEOREM PROVING IN NONCLASSICAL LOGICS
atively small set of derived inference rules and theorems
which makes quite simple the derivation of all or most
theorems which happen to interest us. We have no reason
to believe that there is a single set of meta-language heuristics which will markedly simplify the finding of proofs
in any arbitrarily chosen object-language system. Given
the vast range of nonclassical systems and their peculiarities, it seems doubtful that such a set of meta-linguistic
heuristics exists. With these considerations in mind, perhaps we should no longer simply speak in general of "efficiency" or "power"0of theorem provers, but rather speak
of efficiency and power with respect to a given domain or
with respect to certain general types of problems.
Experimentally, we have tried the syntactic method on
a somewhat limited set of problems in intuitionistic and
relevance logics and on a quite extensive set of problems
in modal logics. In particular, all of the propositional theorems in the first half of [10] were successfully proved when
the logics were supplemented with the extensive set of
classical theorems which the authors list and use themselves. The performance of the program was quite similar
to student performance: when supplied with appropriate
hints, the solution was eventually forthcoming; but without
the hints, a great deal of time was spent "discovering" the
appropriate lemmas. In some ways this behavior was discouraging, because it meant that in certain important respects, the machine performance was no better than
human performance.
THE SEMANTIC METHOD
As with the syntactic approach, the semantic method
depends on mapping object-language expressions into a
first-order meta-language. However, unlike the syntactic
method, the meta-language expresses the semantics of the
object-language. To apply the semantic method, we only
need to know the semantic theory of the system under
study. It does not require any particular syntactic formulation, and thus distinct formulations of the same theory
are all treated as equivalent. The semantic method is applicable to both propositional and first-order theories, but
for the sake of simplicity, we will here discuss in detail only
the propositional case.
The semantic approach to be outlined here is applicable
to semantic theories of the sort generally referred to as
"possible world semantics." Before considering formal
examples, we will attempt to give some intuitive motivation for this type of semantics by considering the phrase
"necessarily true." Although it is true that "Trudeau was
Prime Minister of Canada during 1974," the statement is
not necessarily true. That is, I can imagine circumstances
such that the statement would be false. Suppose Trudeau
had called an election in 1973 and lost. Or suppose he had
been assassinated in 1973. In other words, by imagining
how the world might have been different, I can see that the
statement could have been false, although it is not in fact
II.
857
false. However, consider the statement "Either Trudeau
was Prime Minister of Canada during 1974, or he was not."
No matter how different I imagine the world to be, that
statement is always true, so it is necessarily true. Now, in
addition to imagining how different possible worlds might
be with respect to Trudeau, I can also imagine myself in
different possible worlds. In fact, I can imagine that my
imagination be much more limited than it already is. I can
imagine a world in which my imagination is so limited (or
my commitment to certain sociological and political "laws"
so extreme) that I could not imagine Trudeau not being
Prime Minister. In that world, Trudeau's being Prime
Minister of Canada during 1974 would be necessarily true.
We may think of a possible world as just a complete list
(consistent) of all facts or their negations. Let us say that
a possible world W2 is accessible to a possible world wi just
in case in wL I can imagine what W2 is like. Then a statement is necessarily true at a world wi just in case it is true
in every world accessible to wi. This extreme psychologizing would of course be repugnent to most logicians.
However, it may serve as a heuristic aid to those unfamiliar
with the general possible worlds framework. For a more
lengthy discussion of the intuitions behind the possible
world semantics, see the first few chapters of [10].
Whether or not one can swallow any of the interpretations which have been proposed for possible world semantics, one must admit that sophisticated, mathematically well-founded semantic theories can be built on such
notions. The approach provides characteristic semantic
theories for a very wide variety of nonclassical logics, including modal logics, tense logics, deontic logics, relevance
logics, and intuitionistic logics. One need not adopt any
peculiar metaphysical theses to admit the mathematical
success of possible world semantics and to use the approach in the solution of problems concerning nonclassical
logics. But again, perhaps keeping this science fiction
picture of possible worlds in mind will help the reader
unfamiliar with the mathematical details of this type of
semantics.
As we have said before, the semantic approach to automated theorem proving in nonclassical logics is applicable
to almost any logic for which there is a characteristic sern'atics of a posible worlds sort. As illustrative examples,
we will present a brief account of the semantics of several
closely related modal logics. As before, we use "L" as a
monadic sentential connective which intuitively means "it
is necessarily the case that * *- ." Consider the following
axiom scheme:
A7) LE D E.
The systems we will discuss here use the rules R1) and R2)
and the axioms of the classical propositional calculus
A1)-A3). The system obtained by adding A4) and A7) is
called T. The system called T* is obtained by adding
A4)-A6) [but not A7)]. The philosophical motivations
858
behind these systems are not important to us here; the
interested reader is again directed to [10] and to [19].
Central to the semantic theory are the notions of
"model" and "valuation." A model is just an ordered pair
(W,R), where W is a nonempty set (of possible worlds) and
R is a binary (accessibility) relation defined on W. Given
a model (W,R), a valuation V over the model is any function which assigns a value t or f to each sentence parameter
at each member of W; V is extended to more complex expressions as follows:
V(-E,wi) = t, if V(E,wi) Z< t
= f, otherwise
V(E1 D E2,wi) = t, if V(El,wi) < t or V(E2,wi) = t
= f, otherwise
V(LE,wi) = t, if for all wj E W such that R(wi,wj),
V(E,wj) = t
= f, otherwise.
This much of the semantic account is the same for both
T and T*. To obtain the characteristic semantics for each
system, we must impose restrictions on the accessibility
relation R. For a T model, we require that R be reflexive;
that is, for every wi C W, it must be the case that R (wi,wj).
For a T* model, we require that R be partial-reflexive; that
is, for every wi F W, if there is a wj F W such that
R(wj,wi), then it must be the case that R(wi,wi). We say
that an expression is valid just in c-ase for every model the
expression is assigned the value t at every world of the
model by every valuation over the model. An expression
is said to be T valid just in case it is valid with respect to
the set of all T models; and similarly, an expression is said
to be T* valid just in case it is valid with respect to the set
of all T* models.
The semantic theories are characteristic of the two respective systems in the sense stated in the following theorems. The proof of Theorem 2 may be found in [10]. The
proof of Theorem 3 may be found in [19]. (Actually, the
semantic theory for T* stated in [19] is slightly different
from that given here; but a straightforward argument will
show that the set of expressions T* valid in the sense of
[19] is the same as the set that are T* valid in the sense
defined here.)
Theorem 2: For any expression E, E is T valid iff E is
provable in system T.
Theorem 3: For any expression E, E is T* valid iff E is
provable in system T*.
There happens to be a constructive proof of Theorem
-2 based on a certain decision procedure related to the semantics. However, we known of no constructive proof of
Theorem 3, and, in general, for first-order theories no
constructive proof will be available. Hence, from the fact
that an expression is valid, we can conclude that it is
provable without actually knowing how to construct a
proof for the expression. The semantic approach to automated theorem proving for these logics will allow us to
IEEE TRANSACTIONS ON COMPUTERS, AUGUST 1976
prove the validity of expressions with respect to the appropriate set of models. In general, we will not then be able
to reconstruct an object-language derivation of the expression, even though completeness results like Theorem
2 and Theorem 3 will assure us of the existence of such a
derivation. It is in this way that we know that (a.12) is
provable in T* without having an actual derivation of the
expression.
As was the case with the syntactic approach, the semantic method requires a first-order meta-language.
However, the meta-language required for the semantic
method is quite different from that required for the syntactic method. The semantic meta-language will be classical, so the only connectives required will be conjunction,
disjunction, and negation, with universal and existential
quantifiers. In addition, with each n-place predicate
symbol of the object-language, we associate an n + 1 place predicate symbol of our meta-language; more particularly, with each sentence letter of the object-language
we associate a monadic predicate symbol of the metalanguage. Finally, we include predicates for the basic semantic notions. In our case, we only require a dyadic
predicate for the accessibility relation; we will use "R." If
we were dealing with a first-order object-language, we
woulki require a monadic predicate to distinguish between
the items in the range of the object-language quantifiers
from the items serving as possible worlds in the metalanguage. Meta-langauge predicates may also be required
for other semantic parameters; the details depend on the
specific semantic theory being considered. Methods for
giving semantically based first-order translations for
various modal logics may be found in [2], [3], [16], [21].
Similar translation procedures for many relevance logics
may be found in [17]. For simplicity, we will here consider
only a rather uncomplicated type of modal logic.
Given the general outline of our semantic meta-language, we must determine a translation from object-language expressions into meta-language expressions. The
translation procedure is derived straightforwardly from
the-truth conditions specified for valuations. Intuitively,
the translation procedure just formalizes statements of the
form "expression E is true at world x." For the simple
propositional case we are considering, the meta-language
variables range just over worlds, so we do not need a distinct meta-language predicate to distinguish worlds from
other sorts of objects. Our translation procedure in this
case can be simply stated as follows:
tr(E,x) = Px, for E a sentence letter and P the predicate
symbol associated with E
tr(-E,x) = tr(E,x)
tr(E1 D E2,x) = -,tr(El,x) v tr(E2,x)
tr(LE,x) = (y)( Rxy v tr(E,y)), where y is a new
variable.
-
In order to be able to distinguish different object-lan-
859
MORGAN: AUTOMATED THEOREM PROVING IN NONCLASSICAL LOGICS
guage theories, we must be able to express in the metalanguage the restrictions on the semantic parameters that
are characteristic of each theory. In our case reflexivity and
partial-reflexivity may be expressed, respectively, as follows:
(a.13) (x )Rxx
(a.14) (x)(y)(- Ryx v Rxx).
In general, let us use ASR to refer to the expression in the
first-order semantic meta-language which states the restrictions on the semantic parameters characteristic of
some arbitrary system, called AS, which happens to be
under consideration. Then in order to apply the semantic
method, we must be able to prove the following.
Theorem 4: Let E be any expression of the object language. Then E is AS valid iff 1ASR v (x )tr(E,x) is valid
in the classical first-order sense.
The proof of Theorem 4 is not particularly difficult,
especially for the simple cases considered here. The general
scheme is to first suppose that E is not AS valid and then
use the falsifying model and valuation to construct a
first-order model falsifying the translation of E; second,
one supposes the first-order meta-language statement to
be falsifiable and uses this fact to construct an AS model
and valuation falsifying E; In each case, the set of worlds
for the modal model is just the domain of the first-order
interpretation; the modal valuation corresponds to the
first-order interpretati6n of the monadic predicates; and
the modal accessibility relation corresponds to the firstorder interpretation of R. We omit further details here.
Now, given any first-order theorem prover, we may use
it to prove theorems in any nonclassical logic for which we
have a characteristic semantics. In fact, we need no axioms
or rules of inference at all for the object-language under
study! As an example, we can show that (a.12) is a theorem
of T*. The following expression is just a formal representation of the statement that (a.12) is true at all possible
worlds:
(a.15) (x)((y)( -Rxy v (-,(z)(--- Ryz v Pz) v Py))).
Simplifying, we obtain
(a.16) (x)(y)(3z)(- Rxy v (Ryz & -,Pz) v Py).
At this point, the attentive reader will realize that by
Theorem 4, if (a.12) is a Theorem of T*, then the
disjunction of (a.16) with the negation of (a.14) must be
classically valid. Thus, since we are going to apply resolution, the conjunction of (a.14) with the negation of (a.16)
must be classically unsatisfiable. We could then apply
resolution as follows:
(d.1)
(d.2)
(d.3)
(d.4)
(d.5)
-1Ryx v Rxx
Rab
-- Rbz v Pz
--, Pb
-1 Rbb
from (a.14)
from (a.16)
from (a.16)
from (a.16)
(d.3), (d.4)
(d.6)
(d.7) 0
, Ryb
(d.1), (d.5)
(d.2), (d.6).
Thus, (a.12) is T* valid, so by Theorem 3 there is an
object-language derivation of (a.12) in T*. This example
illustrates the very important fact that generally speaking
we have found experimentally that the semantic approach
yields faster results than does the syntactic approach, at
least in dealing with modal logics. But if one is searching
for object-language derivations and not just assurances of
theoremhood, the syntactic approach is best, assuming of
course that one is dealing with a propositional logic. The
semantic approach is the only method for handling firstorder logics.
It is also interesting to note that the semantic approach
is more likely to yield disproof procedures. Of course, even
using the syntactic approach, if the theorem prover does
not report success before halting (e.g., for resolution
schemes, if the empty clause is not generated but no further resolvents can be obtained) then the proposed expression is not a theorem. But the syntactic approach
seldom halts unless success is obtained. The reason is
simply that generally there are infinitely many derivations
which might possibly yield an expression of a given syntactic form. On the other hand, at least for the propositional case, the semantic approach frequently halts when
the expression is not a theorem.
For an example, note that as we have the two systems
formulated, only one axiom of T is not also an axiom of T*.
So, let us check that axiom for T* validity by the semantic
method sketched above.
(e.1) -, Ryx v Rxx
(e.2) ,--iPa
(e.3) -.Ray v Py
-(e.4) -,Rya v Pa
(e.5) -, Raa
(e.6)
,Rya
from (a.14)
from A7)
from A7)
(e.1), (e.3)
(e.2), (e.3)
(e.1), (e.5).
All other possible resolutions yield clauses which are already on the list. Thus, all we need is a model with one
world, say a, which is not accessible from itself (and thus
not from any world in the model), such that the sentence
parameter is assigned value f at a. Therefore, A7) is not T*
valid. On the other hand, it is T valid, as the following
demonstrates:
(lf.1) Rxx
(f.2) -,Pa
(f.3) -,Ray v Py
(f.4) Pa
(f.5) X
from (a.13)
from A7)
from A7)
(f.1), (f.3)
(f.2), (f.4).
The example given in (e.1)-(e.6) above might suggest
that the only reason this disproof was obtained was be-
IEEE TRANSACTIONS ON COMPUTERS, AUGUST 1976
860
cause no functions turned, up in the translation. But we
frequently get disproofs even when function symbols are
involved. Consider the following expression:
(g.1) -,L ---,LE v -,E.
The semantic translation is given by
(g.2) (x) (- -(y)(-,Rxy v -,(z) (--- Ryz v Pz))
v -,Px).
The denial of (g.2) is then
(g.3) (3x)((y){ ,Rxy v (3z)(Ryz & -Pz)) & Px).
The quantifier free form of (g.3) is just
(g.4) (
Ray v (Ryf(y) & - Pf(y))) & Pa
where "a" is a Skolem constant and "f" is a Skolem function. Now, let us see if (g.1) is T valid. If it is, then the
clause obtained from (a.13) along with the clauses from
(g.4) should yield the empty clause.
(g.5) Rxx
(g.6) Pa
(g.7) --,Ray v Ryf(y)
(g.8) --Ray v -,Pf(y)
(g.9) Raf(a)
(g.10)
Pf(a)
(g.11) ,Raa v -,Pf(f(a))
(g. 12)
,Pf (f (a))
(g.13) Rf(a)f(f (a))
(g.14) -, Pf(f(a))
from (a.13)
from (g.4)
from (g.4)
from (g.4)
(g.5), (g.7)
(g.5), (g.8)
(g.7), (g.8)
(g.5), (g.11)
(g.7), (g.9)
(g.8), (g.9).
Since no other resolutions are possible, the empty clause
cannot be obtained. Thus (g.1) is not T valid. And a model
satisfying (a.13) but falsifying (g.1) can be constructed
from (g.5)-(g.14).
Obviously if no function symbols are involved, then we
can expect the procedure to halt in a finite number of steps,
whether or not the empty clause is obtained. But as we
have indicated, we frequently get disproofs even when
function symbols are involved, especially when dealing
with propositional object-languages. The reason is that
many of the nonclassical logics have the finite model
property. That is, for many of the logics, it is the case than
an expression is satisfiable iff it is satisfiable in a model
with only a finite number of worlds. So if the negation of
our first-order expression is satisfiable (i.e., the proposed
theorem is not really a theorem), then it is satisfiable in a
finite domain. In fact, the number of worlds required in a
model to satisfy a given expression is frequently related
to the number of modal operators occurring in the expression. Since we commonly deal with expressions having
only a few modal operators, only a few possible worlds are
required.
Recapitulating, there are several advantages with the
semantic method. The semantic method works for first-
order as well as propositional logics. It generally provides
disproof as well as proof procedures, at least for the propositional case. And the semantic treatment tends to be
shorter than the syntactic treatment for the propositional
case. But there are several disadvantages as well. The semantic approach requires that we have a characteristic
semantic theory; but especially for new systems, we frequently do not have the appropriate semantics. Further,
the semantic treatment does not distinguish between
different syntactic formulations of the same theory. There
is no provision for adding information to the system in
terms of previously proved theorems. And generally
speaking, virtually no syntactic information (e.g., proof
recovery, analysis of proof heuristics) is obtainable from
the semantic approach.
We should also note a caution concerning the application
of the semantic method to derived rules (meta-theorems)
as opposed to simple object-language theorems. Suppose
we consider a simple abstract example of a derived rule:
If A is a theorem, then so is B. Since "is a theorem" is regarded as "is valid" in the semantic approach, we could
restate the rule as: If A is valid, then so is B. Given the
defimition of "valid," the rule is just: If A always takes value
t in every world in every model, then B always takes value
t in every world in every model. We say that the rule is
validity preserving when this statement is satisfied. Now,
there is no formal way of representing validity preservation
in our first-order meta-language. The first-order language
has quantifiers that range over worlds but not over models
or valuations. In the first-order language, a change in
model is reflected by a change in the interpretation of "R"
and/or a change in the domain of the first-order interpretation.
We can represent somewhat stronger versions of derived
rules. Consider the two following schemes:
(a.17) (x)(-, tr(A,x) v tr(B,x))
(a.18) -,(x )tr(A,x) v (y)tr(B,y).
The strongest version (a.17) says essentially that given any
model, the rule is truth-preserving within each world of the
model. The second strongest version (a.18) says that given
any model, any expression A true at all worlds of that
model is taken into an expression B which is also true at
all worlds of that model. A standard rule of substitution.
of expressions for sentence parameters is validity preserving, but satisfies neither (a.17) not (a.18). Rule R2)
satisfies (a.18) but not (a.17). Rule R1) satisfies an appropriate version of (a.17). So we must be quite careful in
formally expressing meta-theorems and derived rules when
using the semantic approach. If a rule is just validity preserving, then we will not be able to derive it in our present
system.
Experimentally we can report very good success with the
semantic approach when applied to modal logics. In particular, all of the theorems in [10] of both quantified and
propositional versions of the systems T, S4, S5, and the
MORGAN: AUTOMATED THEOREM PROVING IN NONCLASSICAL LOGICS
Brouwerian system were derived using binary resolution
and only the appropriate semantics for each system. We
have also applied the method to a number of less standard
systems, such as T*, and have been able to obtain theorems, like (a.12), for which we have as yet found no
object-language derivation. We have not at this time extensively tested the method on intuitionistic or relevance
logics.
III. COMBINING THE Two METHODS
In a logician's analysis of nonclassical logics, both syntactic and semantic aspects play a role. In fact, the interplay between syntax and semantics frequently results in
a more rapid advance in theory than would be obtainable
by exclusive reliance on either aspect alone. We now turn
to some initial investigations in combining the syntactic
and semantic approaches outlined above. Since the syntactic approach is applicable only to propositional logics,
any combination methods must be similarly restricted.
One very simple-minded combination method is to
apply the semantic approach to an expression to determine
its validity before attempting to prove the expression using
the syntactic approach. Of course any expression which is
not valid will not be passed to the syntactic scheme.
We have examined a somewhat more sophisticated
combination method which is used to prove relationships
between certain nonclassical logics. The general problem
may be stated as follows: Given that E is a theorem of
system SYS1, show that C(E) is a theorem of system
SYS2. Of course 4)(E) is some syntactic transformation of
E. First note that we are assuming that we have a set of
axioms and inference rules for SYS1 and SYS2, as well as
a complete characteristic semantics for SYS2. So the
phrase "- is a theorem of SYS2" could be interpreted as
either "--- is SYS2 valid" or "--- is provable in SYS2."
Since we are considering a combined method, we will
sometimes interpret the phrase semantically and sometimes syntactically.
A standard technique for theorems of this type is proof
by induction on the SYS1 derivation of E. We assume to
be given a SYS1 derivation of E, consisting of lines 11,
12, * , lp.p We consider the sequence cI(1l), 4.(12),..., cF(lp)
and try to show for each 1i that 4D(li) is a theorem of SYS2.
We know for each 1i that it is either a SYS1 axiom or else
it follows from previous lines by a SYS1 inference rule. So
we are required to show for the basis steps of our induction
that for each SYS1 axiom, SYSl.Ai, the expression
4(SYSl.Ai) is a SYS2 theorem. Empirically we know that
the semantic approach generally yields the simplest results
when trying to show a specified expression is a theorem,
so we use the semantic approach for the basis steps. For the
inductive steps, we are required to show for each SYS1
inference rule Bi, * ,Bn/C that if I(B1), ...
*, D(Bn) are
all SYS2 theorems, then so is 4D)C). That is, we are required to show that the rule I(B 1),.*.*., 4(Bn)/4i(C) is a
861
derived rule of SYS2. As we outlined above, because of the
difficulty in stating the validity preserving property in the
semantic meta-language, the syntactic approach is usually
the best method of attack when dealing with derived inference rules. So we apply the syntactic approach to obtain
the inductive steps. This division of labor sometimes
makes it possible for us to prove that certain relationships
hold when the proof using either the syntactic approach
or the semantic approach alone would be very difficult or
even impossible. We do not mean to suggest that one can
always expect success when employing proof by induction
in the way outlined here. There are cases in which the inductive proof just will not work. We should also note that
we have nowhere assumed that SYS1 and SYS2 are distinct, so the inductive approach we have outlined here may
be regarded as an alternative method for approaching
certain kinds of derived inference rules.
As a simple example of the combined inductive method,
consider the following claim: For any expression E, if E is
a theorem of T, then LE is a theorem of T*. For the basis
of the induction, we would show that the theorem is true
of each T axiom. As discussed above, this task would best
be approached semantically. This case illustrates the advantage of the semantic approach, for consider A7, an
axiom of T. We must show that (a.12) is a theorem of T*.
But as we discussed above, while the task is easy when
approached semantically, we have, yet to see a syntactic
derivation. For the inductive step, we would have to consider the two rules R1) and R2). For R1) we would show
that for any expressions El and E2, if L(El D E2) is a T*
theorem and LE1 is a T* theorem, then LE2 is a T* theorem. For R2) we must show that for any expression E, if
LE is a T* theorem, then LLE is a T* theorem. In both
cases, the result follows easily using the syntactic approach.
The general inductive technique thus depends on reducing a complex theorem concerning the relation between
two systems to a set of simpler theorems about one of the
systems. The set of simpler theorems is then subdivided
into two subsets, one subset being attacked semantically
and the other subset being attacked syntactically. A current area of research is the development of other fruitful
proof schemes which make use of the advantages of the two
approaches.
IV. CONCLUSION
We have outlined two distinct methods for automated
theorem proving for nonclassical logics and have tried to
indicate the advantages and disadvantages of each method.
The principle feature of our methods is that only firstorder techniques are required. For certain specific logics,
there may be more efficient methods than ours. However,
we know of no first-order method with the very broad applicability of the methods outlined here. We have tried to
indicate some interesting areas for further research. We
have also tried to indicate points where a consideration of
862
IEEE TRANSACTIONS ON COMPUTERS, AUGUST
nonclassical logics may lead to fruitful insights into the
general nature of automated theorem proving.
The development of many nonclassical logics is at such
a stage that quite fruitful use may be made of automated
theorem proving techniques. We can personally report that
these techniques have been of considerable value in our
own work. The automated techniques make it possible to
examine a large set of proposed theorems for a large set of
logics in a very short time. They also make it possible to
examine various proposed relationships among several
systems in much less time than would be required for a
human to check the same results. Subjectively speaking,
we have not yet seen a machine generated proof in this area
which we would regard as particularly difficult or intricate.
But this comment probably reflects only on the infancy of
our machine based studies in this area and the inefficiency
of the particular theorem prover we happened to use.
Nevertheless, even if very deep and intricate results are not
rapidly forthcoming, the sheer volume of work which can
be accomplished using automated techniques is a sufficiently persuasive argument in favor of these studies.
Further, we have sometimes found that the failures of the
machine to prove a given theorem are highly suggestive,
particularly when the path taken by the machine to the
cut-off stage is examined in detail. Because of these factors,
we honestly regret not having had these techniques
available to us previously.
REFERENCES
[1] A. R. Anderson and N. D. Belnap, Entailment: The Logic of Rele-
vance and Necessity, vol. I. Princeton, NJ: Princeton Univ. Press,
1975.
(21 R. W. Binkley and R. L. Clark, "A cancellation system for elementary logic, identity, and quantified modal logic," draft, Duke Univ.,
Durham, NC, 1965.
[3]
, "A cancellation algorithm for elementary logic," Theoria, vol.
33, pp. 79-97, 1967.
[4] C. L. Chang and R. C. T. Lee, Symbolic Logic and Mechanical
Theorem Proving. New York: Academic, 1973.
[5] M. C. Fitting, Intuitionistic Logic, Model Theory, and Forcing.
Amsterdam: North-Holland, 1966:
[6] P. J. Hayes, "Robotologic," in Machine Intelligence, vol. 5, B.
Meltzer and D. Michie, Eds. Edinburgh: Edinburgh Univ. Press,
1969, pp. 533-554.
1976
[7] an, "A logic of actions," in Machine Intelligence, vol. 6, B. Meltzer
[8]
[9]
[10]
[11]
[12]
13
14
[15]
[16]
[17]
[18]
[19]
[20
21
and D. Michie, Eds. Edinburgh: Edinburgh Univ. Press, 1971, pp.
495-520.
L. Henschen and L. Wos, "Unit refutations and horn sets," J. Ass.
Comput. Mach., vol. 21, pp. 590-604,1974.
A. Heyting, Intuitionism: An Introduction, 2nd ed. Amsterdam:
North-Holland, 1966.
G. E. Hughes and M. J. Cresswell, An Introduction to Modal Logic.
London: Methuen, 1968.
P. C. Jackson, Introduction to Artificial Intelligence. New York:
Petrocelli, 1974.
R. C. T. Lee, "Fuzzy logic and the resolution principle," J. Ass.
Comput. Mach., vol. 19, Rpp. 109-119, 1972.
D. Lewis, Counterfactuals. Oxford: Blackwell, 1973.
J. McCarthy, "Programs with common sense," in Semantic Information Processing, M. Minsky, Ed. Cambridge, MA: MIT Press,
1968, pp. 403-418.
J. McCarthy and P. J. Hayes, "Some philosophical problems from
the standpoint of artificial intelligence," Machine Intelligence, vol.
4, B. Meltzer and D. Michie, Eds. Edinburgh: Edinburgh Univ.
Press, 1969, pp. 463-502.
C. G. Morgan, "Automated generation of semantic hypotheses for
modal logics," presented at the annual meeting of the Society for
Exact Philosophy, Edmonton, Alberta, Canada, 1974.
--, "Semantic discovery for relevance logics," presented at the
International Conference on Relevance Logics, St. Louis, MO 1974.
, "Resolution for many-valued logics," J. of Symbolic Logic
(abstract), vol. 39, 1974, pp. 199-200; also Logique et Analyse.
-, "Liberated versions of T, S4, and S5," Archive far mathematische Logik und Grundlagenforschung, vol. 17, pp. 85-90, 1975.
N. Rescher, Many- Valued Logic. New York: McGraw-Hill, 1969.
D. P. Snyder, Modal Logic and Its Applications. New York: Van
Nostrand, 1971.
Charles G. Morgan was born on December 1, 1944, in San Antonio, TX.
He received the B.S. degree in mathematics and philosophy from
Memphis State University, Memphis, TN, in 1966, and the M.S. degree
in numerical science and the Ph.D. degree in philosophy from The Johns
Hopkins University, Baltimore, MD, in 1969 and 1970, respectively. In
1972 he received the M.Sc. in computing science from the University of
Alberta, Edmonton, Alberta, Canada.
He held a Post-Doctoral Research Fellowship from the Killam Foundation from 1972 to 1974 for research into problems overlapping philosophy of science and artificial intelligence. Since 1975 he has been an
Associate Professor of Philosophy at the University of Victoria, Victoria,
British Columbia, Canada. His research is currently in nonclassical logics,
automated theorem proving, inductive logic, the logic of scientific discovery, and problems in scientific explanation.
Dr. Morgan is a member of the Association for Symbolic Logic, the
Canadian Philosophical Association, the Canadian Society for History
and Philosophy of Science, and the Philosophy of Science Association.
© Copyright 2026 Paperzz