Zalta 2007
Zalta 2007
Zalta 2007
Zalta 2
one. Since ancient times the axiomatic method has been important to
philosophers both as an example of successful systematization in specific
sciences (e.g., optics, acoustics and mathematics) as well as a possible
Steps Toward a Computational Metaphysics∗ ideal for the exposition of philosophical theories. While the history of
the application of the axiomatic method in philosophy is complex (Man-
cosu 1996, 232, note 39), there is no doubt that Spinoza 1677 is the best
Branden Fitelson known example of this tendency. Leibniz went a step further by including
University of California–Berkeley a computational component, as can be seen from the following:1
and
If we had it [a characteristica universalis], we should be able
Edward N. Zalta to reason in metaphysics and morals in much the same way as in
Stanford University geometry and analysis. (Russell 1900, 169)
1993). We conclude, in Section 5, by discussing (1) how the first-order au- Object variables and constants: x, y, z, . . . ; a, b, c, . . .
tomated model-finding program mace, which comes with prover9 and
otter, helped us to discover an error of reasoning in a previous publica- Relation variables and constants: F n , Gn , H n , . . . ;
tion on object theory, concerning the Platonic Theory of Forms (Pelletier P n , Qn , Rn , . . . (when n ≥ 0); p, q, r, . . . (when n = 0)
and Zalta 2000), and (2) some problems for future research involving ap-
Distinguished 1-place relation: E! (read: concrete)
plications to Leibniz’s theory of concepts and Frege’s theory of the natural
numbers. Atomic formulas:
F n x1 . . . xn (‘x1 , . . . , xn exemplify F n ’)
xF 1 (‘x encodes F 1 ’)
2. Brief Review of Axiomatic Metaphysics
Complex Formulas: ¬φ, φ → ψ, ∀αφ (α any variable), 2φ
In this section, we review the principles of object theory, as described in
Complex Terms:
detail in Zalta 1983 and elsewhere. Object theory is naturally formulated
Descriptions: ıxφ
in a second-order modal language that has been modified only so as to
λ-predicates: [λx1 . . . xn φ] (φ no encoding subformulas)
admit a second kind of atomic formula. In addition to the usual ‘exem-
plification’ formulas such as ‘F n x1 . . . xn ’, object theory allows ‘encoding’ The only difference between this language and the language of the second-
formulas such as ‘xF 1 ’, where ‘F 1 ’ is a one-place predicate. These new order modal predicate calculus (with descriptions and λ-expressions) is
atomic formulas are to be read: x encodes F 1 . (In what follows, we drop the presence of a second atomic formula, ‘xF ’, which expresses the fact
the superscript indicating the arity of the relation in both kinds of formu- that object x encodes property (one-place relation) F .
las, since this can be inferred.) These encoding formulas represent a new
The most important definitions of object theory can be summarized
form of predication. The idea for such formulas derives from the work of
as follows:
Ernst Mally (1912), who suggested that abstract objects are determined
by (i.e., encode), but need not exemplify, the properties by which we &, ∨, ≡, ∃, and 3 are all defined in the usual way
conceive of them. On Mally’s view, any group of properties (including
inconsistent sets of properties) determine an abstract object, and this is O! =df [λx 3E!x] (‘ordinary’)
captured in object theory by a comprehension schema that asserts, for
A! =df [λx ¬3E!x] (‘abstract’)
any condition φ on properties, that there is an abstract object x which
encodes all and only the properties satisfying (in Tarski’s sense) φ. Object x =E y =df O!x & O!y & 2∀F (F x ≡ F y)
theory asserts nothing about the properties that ordinary objects exem-
plify, though it does assert that they don’t encode properties. This is x = y =df x =E y ∨ (A!x & A!y & 2∀F (xF ≡ yF ))
something only abstract objects do.
Object theory has been applied in various ways, and some example F 1 = G1 =df 2∀x(xF 1 ≡ xG1 )
descriptions of interesting abstract objects are provided below. However,
F n = Gn =df (where n > 1)
before we state these examples, we provide a formal development of the ∀x1 . . . ∀xn−1 ([λy F n yx1 . . . xn−1 ] = [λy Gn yx1 . . . xn−1 ] &
theory. Readers who want more of an introduction to object theory, [λy F n x1 yx2 . . . xn−1 ] = [λy Gn x1 yx2 . . . xn−1 ] & . . . &
including more motivation and history, should consult one of the other
[λy F n x1 . . . xn−1 y] = [λy Gn x1 . . . xn−1 y])
texts on object theory listed in the Bibliography.
The language of object theory is as follows: p = q =df [λy p] = [λy q]
5 Steps Toward a Computational Metaphysics Branden Fitelson & Edward N. Zalta 6
The definition of relation identity, F n = Gn , can be read more simply as The second axiom is the comprehension schema for abstract objects. No-
follows: if the properties that can be constructed from F n and Gn are tice that the following is an immediate consequence of the comprehension
identical, when considering all the pairwise ways of plugging n − 1 objects schema, given the logic of descriptions and the definition of identity for
into both F n and Gn in the same order, then F n = Gn . In the last objects:
definition, ‘p’ and ‘q’ are used as 0-place relation variables, which range
ıx(A!x & ∀F (xF ≡ φ))G ≡ φG
F
over propositions.
The logic underlying the theory of objects can now be summarized. This says: the abstract object which encodes just the properties satisfying
With the exception of the Logic of Descriptions, the modal closures of all φ encodes property G if and only if G satisfies φ. These proper theorems
of the following are axioms: all involve ‘canonical’ descriptions of abstract objects. In what follows,
these canonical descriptions play an important role in the applications.
Simplest second-order quantified S5 modal logic (Linsky and Zalta
Though we shall assume some familiarity with object theory, here
1994), including 1st and 2nd order Barcan formulas (i.e., fixed do-
are some examples for those who might be encountering it for the first
mains)
time. All of the following identify abstract objects in terms of canonical
Logic of Encoding: 3xF → 2xF descriptions:
This is essentially classical S5 modal logic for the second-order modal The Form of G =
predicate calculus, modified only to include (a) the logic of encoding, ıx(A!x & ∀F (xF ≡ 2∀y(Gy → F y)))
(b) the logic of λ-expressions (complex expressions for denoting complex
As an example of how the theory can be used to prove consequences
relations), and (c) the logic of definite descriptions which are rigid and
which are proper theorems of metaphysics, consider the following series
which may fail to denote. The Logic for Descriptions schema accomodates
of definitions and theorems:
rigid definite descriptions by requiring that only non-modal instances (and
not their modal closures) are axioms. It allows for descriptions which x p (‘p is true in x’) =df x[λy p]
may fail to denote by being applicable only to descriptions which occur
World (x) =df 3∀p[(x p) ≡ p]
in atomic and identity formulas.
Finally, the proper axioms of object theory can be stated as follows: Maximal (x) =df ∀p[(x p) ∨ (x ¬p)]
O!x → 2¬∃F xF Consistent (x) =df ¬∃p[x (p & ¬p)]
∃x(A!x & ∀F (xF ≡ φ)), where φ has no free xs Actual (x) =df ∀p[(x p) → p]
7 Steps Toward a Computational Metaphysics Branden Fitelson & Edward N. Zalta 8
Theorem: ∀x(World (x) → Maximal (x)) 3. λ-expressions are translated into complex terms involving functions.
Theorem: ∀x(World (x) → Consistent(x)) 4. Definite descriptions are represented using predicates that guarantee
the existence and uniqueness of any object satisfying them.
Theorem: ∃!x(World (x) & Actual(x))
Theorem: 2p ≡ ∀w(w p) The first three of these techniques for representing higher-order and quan-
tified modal formulas in a multi-sorted first-order environment are dis-
In what follows, we show how one can use prover9 to implement this cussed in chapters 6 and 7 of Manzano 1996. We will give examples of all
axiomatic metaphysics, and to find proofs of the above theorems. four techniques below.
The following table illustrates how the basic notation of object theory
can be translated into prover9 syntax. Throughout the paper, we will
3. Implementing Object Theory in Prover9 write prover9 syntax in typewriter typeface.
This theory of abstract objects is couched in a second-order language Predicates A, B, C (A, B, C)
with predicates, modal operators, λ-expressions, and definite descriptions. Constants a, b, c (a, b, c)
This poses several challenges for representation and implementation in Variables x, y, z (x, y, z)
prover9, which we describe below. However, the challenges are not as Functions f , g, h (f, g, h)
imposing as they might seem. Models of object theory developed indepen- Quantifiers ∀, ∃ (all, exists)
dently by Dana Scott (Zalta 1983, 160–164), and by Peter Aczel (Zalta Connectives & , →, ∨, ¬, = (&, ->, |, -, =)
1999, 11–13), show that the theory is essentially first-order despite being
Here, we see prover9’s formula syntax, which uses quantifiers and all
couched in second-order language. The only aspect of object theory that
standard (infix) logical connectives. prover9’s more basic syntax is
can’t be fully captured in a first-order framework is the use of comprehen- clausal, which means quantifier-free, and using only disjunction, negation
sion schemata in formulating the axioms. But we shall sidestep this issue and identity. After one supplies prover9 with well-formed formulas (in
by invoking particular instances of the comprehension schemata whenever prover9’s formula syntax) as premises and conclusion, it will ‘clausify’
we need them. these formulas by eliminating quantifiers (by Skolemizing), and convert-
prover9 is an automated reasoning system which supports full first- ing formulas to ‘conjunctive normal form’. The resulting statements are
order functional and predicate calculus with equality (but not second- in ‘clausal normal form.’ Here are some examples:
order logic or λ-expressions). Our challenge is to represent the axioms and
Formula Clause (prover9 — Q-free, and CNF)
definitions of object theory in this environment. We must first translate
(∀x)(P x → Qx) -P(x) | Q(x).
claims from the language of object theory into prover9’s language. Here,
(∃x)(P x & Qx) P(a). Q(a). (two clauses, new “a”)
we use four key techniques:
(∀x)(∃y)(Rxy ∨ x = y) R(x,f(x)) | -(x = f(x)). (new “f”)
1. Second-order language is translated into a first-order language with (∀x)(∀y)(∃z)(Rxyz & Rzyx) R(x,y,f(x,y)). R(f(x,y),x,y). (new “f”)
distinguished sortal predicates. Instead of quantifying over prop-
For readers unfamiliar with such clausification techniques, we recommend
erties, propositions, etc., we quantify over a single domain, and
chapters 1 and 10 of Kalman 2001. For details on prover9’s clause nota-
introduce prover9 predicates to sort the domain into properties,
tion and syntax (which differs little from its predecessor otter (McCune
objects, etc. Here we are simulating multi-sorted first-order logic.
2003b)), see McCune 2006.
2. The modal language of S5 is translated into quantified statements Next, we will briefly explain how prover9 implements (mechanical)
over ‘points’, using well known semantic representation of modal rules of inference. See Portoraro 2005 and Wos et al . 1992 for encyclopedic
claims in first-order terms. general introductions to automated reasoning and its associated rules,
9 Steps Toward a Computational Metaphysics Branden Fitelson & Edward N. Zalta 10
techniques, and strategies. For our present purposes, it will suffice to the satellite P(s), hyperresolution enables us to infer the hyperresolvent
discuss just one of these rules, namely, hyperresolution. Before we explain M(s) by clashing the satellite against the negative literal -P(s) in the “in-
this rule, we first need to introduce the notion of a most general unifier stance” -P(s) | M(s). Here are some examples of valid hyperresolution
of two expressions. If θ1 and θ2 are terms, there may or may not exist inferences:
a set of substitutions σ such that σ(θ1 ) = σ(θ2 ). If such a σ exists, it
-P | M. -P(x) | M(x). -L(x,f(b)) | L(x,f(a)).
is called a unifier of θ1 and θ2 , which are said to be unifiable. In such P. P(x). L(y,f(y)).
a case, σ(θ1 ) (= σ(θ2 )) is called a common instance of θ1 and θ2 . For ∴ M. ∴ M(x). ∴ L(b,f(a)).
example, the terms f (x, b) and f (a, y) are unifiable, with unifier {a/x,
b/y}, yielding the common instance f (a, b). But the terms f (x) and So far, this sounds just like modus ponens (or disjunctive syllogism). But,
g(y) are not unifiable, since any instance of f (x) must begin with “f ” unlike modus ponens, hyperresolution must make use of most general com-
and any instance of g(y) must begin with “g”. There are often many mon instances, rather than the arbitrary common instances that are al-
unifiers of two terms (up to alphabetic variants). A substitution σ is lowed in standard classical logical inferences. Thus,
called a most general unifier of two terms θ1 and θ2 if it yields a most
-P(x) | M(x).
general common instance of θ1 and θ2 . For instance, {a/x, a/y} is a
P(x).
unifier of f (x, y) and f (a, y), yielding the common instance f (a, a). But,
∴ M(a).
this is not a most general unifier, because the unifier {a/x, z/y} yields
the more general common instance f (a, z), which subsumes f (a, a). The is not a valid hyperresolution inference! In this case, M(a) is strictly less
unification theorem (Robinson 1963) guarantees the existence of a unique general than M(x), which is the correct hyperresolution conclusion, based
most general unifier for any two terms of first-order logic, and an algorithm on the most general instance of the nucleus -P(x) | M(x) that can be
for computing it (called the unification algorithm). This crucial algorithm clashed with the satellite P(x). While this may seem like a limitation,
makes it computationally feasible to implement the standard substitution it turns out that resolution techniques are complete for first-order logic
rules for classical logic. Robinson’s unification algorithm (or some variant without equality (Robinson 1965).3 In the case above, hyperresolution
of it) undergirds all modern automated reasoning systems. yields M(x), which subsumes the desired M(a).
prover9 establishes the validity of first-order arguments via reductio
Hyperresolution was also invented by Robinson (1965). Kalman (2001,
ad absurdum: prover9 reasons from the conjunction of the premises and
chapter 2) gives many detailed examples of hyperresolution inferences in
the denial of the conclusion of a valid argument to a contradiction. Here
otter. We will provide just a brief introduction to hyperresolution here.
3 We have chosen to discuss here only theorems of object theory that do not in-
Basically, hyperresolution is a generalization/mechanization of the modus
ponens (or disjunctive syllogism) rule of classical logic, based on most volve equality reasoning (see the next section for concrete examples). Of course,
many theorems of object theory do explicitly involve equality reasoning. For such
general unification rather than arbitrary substitution. In general, hyper- problems, we have used (in addition to hyperresolution) paramodulation (Robinson
resolution infers from a mixed clause (a clause containing both positive and Wos 1969) and demodulation (Wos et al . 1967), which are mechanical rules for
and negative atomic subformulae) or negative clause (a clause contain- first-order equality reasoning that have been efficiently implemented in otter and
prover9. See Wos et al . 1992 and Kalman 2001 for extensive discussions of auto-
ing only negative atomic subformulae) as nucleus, and positive clauses
mated first-order equality reasoning. And, see our computational metaphysics web-
(with only positive literals) as satellites, one or more positive clauses as site (at <http://mally.stanford.edu/cm/> or <http://fitelson.org/cm/>) for several
hyperresolvents. The inference is made by using the satellites to cancel, examples of object theoretic reasoning involving equality. We have omitted such prob-
or “clash” against, or “resolve”, the negative literals in the nucleus. For lems from the present discussion for reasons of simplicity and economy of presentation.
It is worth noting, however, that (in principle) the use of equality rules like paramod-
example, from the nucleus -P | M and the satellite P, hyperresolution
ulation (in addition to hyperresolution) can be eliminated by the addition of explicit
enables us to infer the hyperresolvent M by clashing the satellite against (relational) equality axioms (Kowalski 1970). As such, this does not (in principle)
the negative literal in the nucleus; from the nucleus -P(x) | M(x) and constitute a significant loss of generality in our discussion.
11 Steps Toward a Computational Metaphysics Branden Fitelson & Edward N. Zalta 12
is a simplified description of prover9’s main loop, which is similar to at least two sortal predicates: Property and Object. In addition, exem-
otter’s (McCune 2006, 2003b; Kalman 2001): plification formulas of the form ‘F x’ and encoding formulas of the form
‘xF ’ (which are the two forms of predication in object theory) can be
1. Begin with a list of premises and a list of conclusions, the latter
represented in prover9 as follows:
having a single member (the conclusion) at the outset.
all x all F (Ex1(F,x) -> Property(F) & Object(x)).
2. Add the denial of the conclusion to the list of premises.
all x all F (Enc(x,F) -> Property(F) & Object(x)).
3. Using inference rules, e.g., hyperresolution (and/or other forms of
resolution), paramodulation (and/or other equality rules – see fn. 3), It is important to remember here, and in what follows, that the variables
infer all clauses you can. F and x are both untyped. prover9 treats the above formulas as if they
were the following:
4. Process the clauses (check for subsumption, apply restriction strate-
gies, etc.), discard unusable ones, and add the remaining ones to the all x all y (Ex1(y,x) -> Property(y) & Object(x)).
list of conclusions.
all x all y (Enc(x,y) -> Property(y) & Object(x)).
5. Pick a member of the list of conclusions (using a heuristic — default But it is convenient to use the variable F instead of y in what follows,
is “pick shortest” or “best first” — others can be used), and add it since it helps one to remember the sortal categories of the arguments
to the list of premises. to relations and functions. Note that 2-place predication requires a new
6. Repeat steps 3 – 5 until you reach a contradiction (i.e., until you relation: Ex2(R,x,y), etc.
derive P and -P, for some atomic prover9 sentence P).
Quantified modal (S5) claims can be translated into prover9 Kripke-
style (Manzano 1996, chapter 7), with the use of a third sortal predicate:
Consider, as an example, the following simple argument: Point (not World!4).
∀x(Greek (x) → Person(x)). all F all x all w (Ex1(F,x,w) ->
∀x(Person(x) → Mortal (x)). Property(F) & Object(x) & Point(w)).
Greek (socrates).
———– Here is an example of a simple theorem in object theory and how it gets
Mortal (socrates) translated into prover9:
Here’s a simple prover9 proof of the above: Necessarily, every object exemplifies some property.
2(∀x)(∃Q)Qx.
1 Greek(socrates). [clausify]
We can translate this into the following prover9 formula:
2 -Mortal(socrates). [clausify]
3 -Greek(x) | Person(x). [clausify] all p all x ((Point(p) & Object(x)) ->
4 -Person(x) | Mortal(x). [clausify] (exists Q (Property(Q) & Ex1(Q,x,p))).
5 Person(socrates). [resolve (3 a 1 a)]
6 -Person(socrates). [resolve (4 b 2 a)] prover9 will process such a formula appearing in an input file and
7 [F]. [resolve (6 a 5 a)] clausify it as:
4 We emphasize the use of the predicate Point and not the predicate World since
To implement axiomatic metaphysics in this framework, second-order the latter is a defined concept in world theory. The former is merely a semantic device
object theory must be represented in prover9’s first-order language with for translating modal claims into prover9 syntax.
13 Steps Toward a Computational Metaphysics Branden Fitelson & Edward N. Zalta 14
After prover9 clausifies the premises and the negation of the conclusion, merely verifying them. Moreover, we wanted to be able to constructively
it then implements its main loop. When it prints out a proof, it only lists establish the consistency of the premises used in the proofs of the theo-
the clauses that were actually used in the proof. So, in the first 11 steps rems. So we decided to use the first-order systems prover9 and mace,
of the following proof, the reader will find that not all of the clauses which are flexible, powerful, and robust first-order systems for proving
connected with the above premises are used in the proof. For example, theorems and finding models, respectively, and which are freely available
not all of the clauses in the clausification of premises 3 and 4 above are and compile easily on a wide variety of platforms. More recently, we have
used in the following proof. become aware of the existence of various higer-order theorem provers that
can find non-trivial proofs (rather than just verifying known proofs).7 But
1 -Proposition(x) | Proposition(~x). [clausify]. one advantage of our current approach is that we have both proofs of our
2 -Point(x) | -Proposition(y) | True(~y,x) | True(y,x). [clausify].
3 -Object(x) | Maximal(x) | -Situation(x) | Proposition(f1(x)). [clausify].
theorems and models of the premises involved in the theorems. This gives
4 -Object(x) | Maximal(x) | -Situation(x) | -TrueIn(f1(x),x). [clausify]. us an automated check of the consistency of our assumptions. Our current
5 -Object(x) | Maximal(x) | -Situation(x) | -TrueIn(~f1(x),x). [clausify]. focus is on whether any limitations of our first-order approach arise when
6 -Object(x) | -World(x) | Situation(x). [clausify].
7 -Object(x) | -World(x) | Point(f2(x)). [clausify].
we attempt to automate the reasoning concerning Leibniz’s theory of con-
8 -Object(x) | -World(x) | -Proposition(y) | TrueIn(y,x) | -True(y,f2(x)). [clausify]. cepts (Zalta 2000). This involves far more complexity in terms of nested
9 -World(x) | Object(x). [clausify]. definite descriptions and λ-expressions. We discuss this issue further in
10 World(c1). [clausify].
11 -Maximal(c1). [clausify].
Section 5.2.
12 Object(c1). [hyper(9,a,10,a)].
13 Point(f2(c1)). [hyper(7,a,12,a,b,10,a)].
14 Situation(c1). [hyper(6,a,12,a,b,10,a)]. 5.1 mace
15 Proposition(f1(c1)). [hyper(3,a,12,a,c,14,a),unit_del(a,11)].
16 True(~f1(c1),f2(c1)) | True(f1(c1),f2(c1)). [hyper(2,a,13,a,b,15,a)]. prover9 and otter come with an especially powerful tool, mace, which
17 Proposition(~f1(c1)). [hyper(1,a,15,a)]. allows one to find finite models of arbitrary finite sets of first-order for-
18 TrueIn(~f1(c1),c1) | True(f1(c1),f2(c1)). [hyper(8,a,12,a,b,10,a,c,17,a,e,16,a)].
19 TrueIn(f1(c1),c1) | TrueIn(~f1(c1),c1). [hyper(8,a,12,a,b,10,a,c,15,a,e,18,b)].
mulas (McCune 2003a). Once prover9 finds a proof of a theorem of
20 TrueIn(f1(c1),c1). [hyper(5,a,12,a,c,14,a,d,19,b),unit_del(a,11)]. computational metaphysics, we then use mace to find a model of the
21 $F. [hyper(4,a,12,a,c,14,a,d,20,a),unit_del(a,11)]. premises alone, to ensure that the premises used in prover9’s proof are
consistent. And whenever we encounter a proposition that is supposed
We have chosen a relatively simple proof here, for ease of exposition. to be a theorem of axiomatic metaphysics but for which prover9 can’t
Readers interested in seeing how prover9 proves the other theorems in find a proof, we then use mace to see whether there is a countermodel,
Zalta 1993 and the bona fide theorems in Pelletier and Zalta 2000 are en- i.e., a model of both the premises and the negation of the conclusion.
couraged to consult <http://mally.stanford.edu/cm/> or <http://fitelson.- Indeed, mace led us to discover that one of the propositions alleged to
org/cm/>. Some of those proofs are very complex. 7 Despite the fact that second-order logic is undecidable, it turns out that true au-
tomated theorem proving (and not mere verification) for second-order logic is possible
(in principle). That is, the methods of resolution and unification can be extended to
5. Observations second-order logic (Pietrzykowski 1973). Interestingly, however, these methods cannot
be extended to third-order logic (Huet 1973). See Kohlhase 1998 for a recent survey
Why did we choose a first-order system like prover9, instead of a higher- of theorem proving techniques for higher-order logical systems. Be that as it may,
order system? When we started this project, the only higher-order sys- it is not clear to us whether existing higher-order theorem-proving systems would be
more effective for the present applications. Moreover, as far as we know, there are
tems with which we were familiar were systems designed mainly for veri-
no (general purpose) higher-order model finding programs. Thus, moving to a higher-
fication, e.g., Boyer and Moore’s (1979) system nqthm . But we wanted order framework would mean forfeiting our ability to automatically find models for the
the reasoning engine to discover proofs of non-trivial depth rather than premises of the theorems we prove.
19 Steps Toward a Computational Metaphysics Branden Fitelson & Edward N. Zalta 20
be a theorem in Pelletier and Zalta 2000 is not in fact such. [2∀y¬F y & 2∀y¬Gy] → 2∀x(F x ≡ Gx)
Consider ‘Theorem 4’ in Pelletier and Zalta 2002. It is stated in terms
2∀x(F x ≡ Gx) → ∀H(F ⇒ H ≡ G ⇒ H).
of the following definitions:
So, we can infer from these two theorems that necessarily empty properties
F ⇒ G =df 2∀x(F x → Gx). P and T entail the same properties. But, by definition, ΦP encodes all
and only the properties entailed by P , and ΦT encodes all and only the
The Form of F (‘ΦF ’) =df ıx(A!x & ∀G(xG ≡ F ⇒ G))
properties entailed by T . Since P and T entail the same properties, ΦP
Participates PH (x, y) =df ∃F (y = ΦF & xF ) and ΦT encode the same properties. Thus, ΦP = ΦT , by the definition of
identity for abstract objects.
Now the proposition alleged to be Theorem 4 was: Now to complete the countermodel, let b be the abstract object that
encodes exactly one property, namely, T . We can establish (i) Partici-
xF ≡ Participates PH (x, ΦF )
pates PH (b,ΦP ), and (ii) ¬bP . To establish (i), we have to show:
After translating these definitions and claims into prover9 syntax, we ∃F (ΦP = ΦF & bF )
found that prover9 didn’t seem to be able to find a proof. We therefore
used mace to check for countermodels to both directions of the bicondi- But this follows by Existential Generalization after conjoining the facts
tional. that ΦP = ΦT and bT . To show (ii), note that by definition, b encodes
Indeed, the right-to-left direction of the biconditional has a counter- only a single property, namely, T . Since P
= T , it follows that ¬bP .
model. We therefore take the opportunity here to correct the error in the So, we’ve identified objects, properties, and Forms that constitute a
earlier paper, by briefly describing the countermodel. In what follows, we counterexample to the ‘theorem’, since we have established:
shall identify object b and property P such that: Participates PH (b, ΦP ) & ¬bP
ParticipatesPH (b, ΦP ) & ¬bP Thus, Theorem 4 in Pelletier and Zalta 2000 should have been weakened
to:
To form the countermodel, choose P to be the necessarily empty property
Theorem 4: xF → Participates PH (x, ΦF )
being-Q-and-not-Q (for some arbitrary property Q) and consider a second,
distinct necessarily empty property T , say being-round-and-square. That Our research in computational metaphysics shows, however, that the
is, let P = [λz Qz & ¬Qz] and let T = [λz Rz & Sz]. Note that in object other nine theorems in Pelletier and Zalta 2000 are correct.9
theory, one may consistently assert that P
= T even though 2∀x(P x ≡ It follows immediately that they are necessarily equivalent, i.e., that 2∀x(F x ≡ Gx).
T x). The reason is that identity for properties (‘F = G’) is defined as If neither F nor G are exemplified by any objects at any possible world, then F and
G are exemplified by all and only the same objects at every possible world.
2∀x(xF ≡ xG). So properties may be distinct even though necessarily Here is now a semantic-based proof of the latter. Assume F and G are necessarily
equivalent. equivalent. Now, for the left-to-right direction, assume that for an arbitrary property
Now consider ΦP and ΦT . Even though P
= T , it is provable in H, F ⇒ H, i.e., that 2∀x(F x → Hx). If we can show G ⇒ H, we are done (without
object theory that ΦP = ΦT . To see this, note the following theorems loss of generality, since the proof of the right-to-left direction goes exactly the same
way). To show 2∀x(Gx → Hx), we first prove the embedded, non-modal universal
of quantified modal logic, namely, that necessarily empty properties are claim holds at an arbitrary world, say w. So, for an arbitrary object, say c, suppose
necessarily equivalent and that necessarily equivalent properties entail the Gc at w. Then since G and F are necessarily equivalent, they are equivalent at w, so it
same properties, i.e.,8 follows that F c at w. But F necessarily implies H, and so materially implies H at w.
Thus, Hc. So, we’ve proved, with respect to an arbitrary object c and world w, that
8 Here is a simple, semantic-based sketch of the former, which relies on the fact
Gc → Hc at w. Thus, by universal generalization on c and then w, we’ve established
that the modal logic of object theory is the simplest possible: fixed domains, S5 with 2∀x(Gx → Hx), i.e., G ⇒ H.
Barcan formulas, and no accessibility relation. Assume F and G are necessarily empty. 9 See <http://mally.stanford.edu/cm/> or <http://fitelson.org/cm/>.
21 Steps Toward a Computational Metaphysics Branden Fitelson & Edward N. Zalta 22
5.2 Future Research Questions prover9’s language in two steps, yielding the terms IsTheSumOf(z,x,y)
and IsTheDisjConceptOf(z,G,H).
Despite the above successes and reasons for using prover9, our cur-
Now Theorem 4 of the Leibnizian theory of concepts is:
rent research suggests that new techniques might be required when the
complexity of the theorems increases. We are currently working on the ∀G, H(cG ⊕ cH = cG∨H )
question, how should we automate the proofs of the theorems reported
in Zalta 2000, concerning Leibniz’s theory of concepts? And after that, i.e., in prover9’s language:
we want to find proofs of theorems reported in Zalta 1999, concerning
all G all H all x all y all z all u
Frege’s theory of the natural numbers in the Grundgesetze. Our research
((Property(G) & Property(H) & Object(x) & Object(y) & Object(z) &
suggests that the representation of object theory’s second-order language
Object(u) & IsTheConceptOf(x,G) & IsTheConceptOf(y,H) &
used so far may face certain difficulties when more complex applications
IsTheSumOf(z,x,y) & IsTheDisjConceptOf(u,G,H)) -> z=u).
are considered. We conclude by describing one such issue which has come
up during the course of our research and which suggests that more so- As one can imagine, there is a great deal of quantifer depth and clausal
phistication may be needed. complexity involved in representing all the requisite definite descriptions
In object theory, the Leibnizian notion the concept of G (‘cG ’) is de- and proving Theorem 4 in prover9. The automated reasoning engine
fined in exactly the same way as the Platonic Form of G (ΦG ) is defined, populates the search space with a large number of clauses and this space
namely, as (Zalta 2000): grows much larger as prover9 executes its main loop.
cG = ıx(A!x & ∀F (xF ≡ G ⇒ F )) We haven’t yet been able to prove Theorem 4 in prover9. At this
point, we are unsure whether our failure here is due only to issues of
By analogy with our earlier discussion of defining The Form of F , we computational complexity or to a more fundamental shortcoming of our
would represent The Concept G in prover9 in terms of the following
two predicates: first-order representation of claims with this depth of embedding.
If this problem proves to be intractable for first-order methods and
all z all G ((Object(z) & Property(G)) ->
(IsAConceptOf(z,G) <->
systems, we may move to a higher-order automated reasoning system in
(Ex1(A,z,W) & our future work (e.g., Leibniz’s theory of concepts and Frege’s theory
(all F (Property(F) -> (Enc(z,F) <-> Implies(G,F))))))). of numbers). We hope to report on any results using such higher-order
reasoning systems, or further results in our current first-order framework,
all z all G ((Object(z) & Property(G)) ->
(IsTheConceptOf(z,G) <-> should they become available.
(IsAConceptOf(z,G) &
(all y ((Object(y) & IsAConceptOf(y,G)) -> y=z))))).
References
In the usual way, the second definition tells us that an object z is the
Boyer, R.S. and J.S. Moore, 1979, A computational logic, (ACM Mono-
concept of G whenever z is a concept of G and any other concept of G is
graph Series), New York: Academic Press [Harcourt Brace Jovanovich].
identical to z.
Now unlike the work we did with Platonic Forms, the theorems for x⊕y =df ız(A!z & ∀F (zF ≡ xF ∨ yF ))
Leibnizian concepts involve other abstract objects defined in terms of Though the second is not explicitly defined, the definiens in the following definition
shows up in the statement of Theorem 4 of that paper:
complex definite descriptions. For example, such notions as x ⊕ y (the
sum of the concepts x and y) and cF ∨G (the disjunctive concept of cG∨H =df ıx(A!x & ∀F (xF ≡ G ⇒ F ∨ H ⇒ F ))
F and G) are introduced.10 These notions would also be defined in In the above definitions, we’ve used ‘A!x’ (x is abstract) since it is more familiar to
the readers of this paper; in Zalta 2000, we simply identified Concept(x) as the same
10 In Zalta 2000, the first is explicitly defined as: notion and used that instead.
23 Steps Toward a Computational Metaphysics Branden Fitelson & Edward N. Zalta 24
Huet, G.P., 1973, “The undecidability of unification in third order logic”, Robinson, G., and L. Wos, 1969, “Paramodulation and theorem-proving
Information and Control, 22/3: 257–267. in first-order theories with equality”, in Machine Intelligence: 4, B. Melt-
Kalman, J., 2001, Automated Reasoning with Otter, Princeton: Rinton zer and D. Michie (eds.), New York: American Elseview, pp. 135-150.
Press. Robinson, J. A., 1963, “Theorem-proving on the computer”, Journal of
Kohlhase, M., 1998, “Higher-order automated theorem proving”, in Auto- the Association of Computing Machinery, 10: 163–174.
mated Deduction. A basis for applications: Volume I , (Applied Logic Robinson, J. A., 1965, “Automatic deduction with hyper-resolution”, In-
Series, Volume 8), W. Bibel and P. Schmitt (eds.), Dordrecht: Kluwer ternational Journal of Computer Mathematics, 1: 227–234.
Academic Publishers, pp. 431–462. Russell, B., 1900, A Critical Exposition of the Philosophy of Leibniz, Cam-
Kowalski, R., 1970, “The case for using equality axioms in automatic bridge: Cambridge University Press.
demonstration”, in Symposium on Automatic Demonstration (Ver- Spinoza, B., 1677, Ethics, edited and translated by G.H.R Parkinson,
sailles, 1968), (Lecture Notes in Mathematics, Volume 125), M. Laudet, Oxford: Oxford University Press, 2000.
et al . (eds.), Berlin: Springer, pp. 112–127. Wos, L., R. Overbeek, E. Lusk, and J. Boyle, 1992, Automated Reasoning:
Leibniz, G., 1890, Die philosophischen Schriften von Gottfried Wilhelm Introduction and Applications, 2nd edition, New York: McGraw-Hill.
Leibniz, Volume 7, C. Gerhardt (ed.), Berlin: Olms. Wos, L., G. Robinson, D. Carson, and L. Shalla, 1967, “The concept of
Linsky, B. and E. Zalta, 1994, “In Defense of the Simplest Quantified demodulation in theorem proving”, Journal of the ACM, 14/4: 698–
Modal Logic”, Philosophical Perspectives, 8: 189–211. 709.
Mally, E., 1912, Gegenstandstheoretische Grundlagen der Logik und Lo- Zalta, E., 1983, Abstract Objects: An Introduction to Axiomatic Meta-
gistik, Leipzig: Barth. physics, Dordrecht: D. Reidel Publishing Company.
Mancosu, P., 1996, Philosophy of Mathematics and Mathematical Practice Zalta, E., 1993, “Twenty-five basic theorems in situation and world the-
in the Seventeenth Century, New York: Oxford University Press. ory”, Journal of Philosophical Logic, 22/4: 385–428.
Manzano, M., 1996, Extensions of first order logic, (Cambridge Tracts in Zalta, E., 1999, “Natural numbers and natural cardinals as abstract ob-
Theoretical Computer Science, Volume 19), Cambridge: Cambridge jects: a partial reconstruction of Frege’s Grundgesetze in object the-
University Press. ory”, Journal of Philosophical Logic, 28/6: 619–660.
McCune, W., 2003a, Mace4 Reference Manual and Guide, Technical Mem- Zalta, E., 2000, “A (Leibnizian) Theory of Concepts”, Philosophiegeschich-
orandum 264, Argonne National Laboratory, Argonne, IL, URL = te und logische Analyse/Logical Analysis and History of Philosophy,
<http://www-unix.mcs.anl.gov/AR/mace4/July-2005/doc/mace4.pdf> 3: 137–183.
McCune, W., 2003b, Otter 3.3 Reference Manual, Technical Memoran-
dum 263, Argonne National Laboratory, Argonne, IL, URL =
<http://www.mcs.anl.gov/AR/otter/otter33.pdf>.
McCune, W., 2006, Prover9 Manual, URL =
<http://www.cs.unm.edu/˜mccune/prover9/manual/>
Pelletier, F.J. and E. Zalta, 2000, “How to Say Goodbye to the Third
Man”, Noûs, 34/2: 165–202.
Pietrzykowski, T., 1973, “A complete mechanization of second-order logic”,
Journal of the Assocatlon for Computing Machinery, 20/2: 333–365.
Portoraro, F., 2005, “Automated Reasoning”, in The Stanford Encyclope-
dia of Philosophy (Winter 2005 Edition), Edward N. Zalta (ed.), URL
= <http://plato.stanford.edu/archives/win2005/entries/reasoning-automated/>.