Predicate functor logic

Predicate functor logic

In mathematical logic, predicate functor logic (PFL) is one of several ways to express first-order logic (formerly known as predicate logic) by purely algebraic means, i.e., without quantified variables. PFL employs a small number of algebraic devices called predicate functors (or predicate modifiers) that operate on terms to yield terms. PFL is mostly the invention of the logician and philosopher Willard Quine.


This source for this section, as well as for much of this entry, is Quine (1976). Quine proposed PFL as a way of algebraizing first-order logic in a manner analogous to how Boolean algebra algebraizes sentential logic. He designed PFL to have exactly the expressive power of first-order logic with identity. Hence the metamathematics of PFL are exactly those of first-order logic with no interpreted predicate letters: both logics are sound, complete, and undecidable. Most work Quine published on logic and mathematics in the last 30 year of his life touched on PFL in some way.

Quine took "functor" from the writings of his friend Rudolf Carnap, the first to employ it in philosophy and mathematical logic, and defined it as follows:

"The word "functor", grammatical in import but logical in habitat... is a sign that attaches to one or more expressions of given grammatical kind(s) to produce an expression of a given grammatical kind." (Quine 1982: 129)

Ways other than PFL to algebraize first-order logic include:
*Cylindric algebra by Alfred Tarski and his American students. The simplified cylindric algebra proposed in Bernays (1959) led Quine to write the paper containing the first use of the phrase "predicate functor";
*The polyadic algebra of Paul Halmos. By virtue of its economical primitives and axioms, this algebra most resembles PFL;
*Relation algebra algebraizes the fragment of first-order logic consisting of formulas having no atomic formula lying in the scope of more than three quantifiers. That fragment suffices, however, for Peano arithmetic and the axiomatic set theory ZFC; hence relation algebra, unlike PFL, is incompletable. Most work on relation algebra since about 1920 has been by Tarski and his American students. The power of relation algebra did not become manifest until the monograph Tarski and Givant (1987), published after the three important papers bearing on PFL, namely Bacon (1985), Kuhn (1983), and Quine (1976);
*Combinatory logic builds on combinators, higher order functions whose domain is another combinator or function, and whose range is yet another combinator. Hence combinatory logic goes beyond first-order logic by having the expressive power of set theory, which makes combinatory logic vulnerable to paradoxes. A predicate functor, on the other hand, simply maps predicates (also called terms) into predicates.PFL is arguably the simplest of these formalisms, yet also the one about which the least has been written.

Quine had a lifelong fascination with combinatory logic, attested to by his (1976) and his introduction to the translation in Van Heijenoort (1967) of the paper by the Russian logician Moses Schonfinkel founding combinatory logic. When Quine began working on PFL in earnest, in 1959, combinatory logic was commonly deemed a failure for the following reasons:
* Until Dana Scott began writing on the model theory of combinatory logic in the late 1960s, nearly all work on that logic had been by Haskell Curry, his students, or by Robert Feys in Belgium;
*Satisfactory axiomatic formulations of combinatory logic were slow in coming. In the 1930s, some formulations of combinatory logic were found to be inconsistent. Curry also discovered the Curry paradox, peculiar to combinatory logic;
*The lambda calculus, with the same expressive power as combinatory logic, was seen as a superior formalism.

Kuhn's formalization

The PFL syntax, primitives, and axioms described in this section are largely Kuhn's (1983). The semantics of the functors are Quine's (1982). The rest of this entry incorporates some terminology from Bacon (1985).


An "atomic term" is an upper case Latin letter, "I" and "S" excepted, followed by a numerical superscript called its "degree", or by concatenated lower case variables, collectively known as an "argument list". The degree of a term conveys the same information as the number of variables following a predicate letter. An atomic term of degree 0 denotes a Boolean variable or a truth value. The degree of "I" is invariably 2 and so is not indicated.

The "combinatory" (the word is Quine's) predicate functors, all monadic and peculiar to PFL, are Inv, inv, ∃, +, and p. A term is either an atomic term, or constructed by the following recursive rule. If τ is a term, then Invτ, invτ, ∃τ, +τ, and pτ are terms. A functor with a superscript "n", "n" a natural number > 1, denotes "n" consecutive applications (iterations) of that functor.

A formula is either a term or defined by the recursive rule: if α and β are formulas, then αβ and ~(α) are likewise formulas. Hence "~" is another monadic functor, and concatenation is the sole dyadic predicate functor. Quine called these functors "alethic." The natural interpretation of "~" is negation; that of concatenation is any connective that, when combined with negation, forms a functionally complete set of connectives. Quine's preferred functionally complete set was conjunction and negation. Thus concatenated terms are taken as conjoined. The notation + is Bacon's (1985); all other notation is Quine's (1976; 1982). The alethic part of PFL is identical to the "Boolean term schemata" of Quine (1982).

As is well known, the two alethic functors could be replaced by a single dyadic functor with the following syntax and semantics: if α and β are formulas, then (αβ) is a formula whose semantics are "not (α and/or β)" (see NAND and NOR).

Axioms and semantics

Quine set out neither axiomatization nor proof procedure for PFL. The following axiomatization of PFL, one of two proposed in Kuhn (1983), is concise and easy to describe, but makes extensive use of free variables and so does not do full justice to the spirit of PFL. Kuhn gives another axiomatization dispensing with free variables, but that is harder to describe and that makes extensive use of defined functors. Kuhn proved both of his PFL axiomatizations sound and complete.

This section is built around the primitive predicate functors and a few defined ones. The alethic functors can be axiomatized by any set of axioms for sentential logic whose primitives are negation and one of ∧ or ∨. Equivalently, all tautologies of sentential logic can be taken as axioms.

For each combinatory functor, we give its semantics, as per Quine (1982), stated in terms of abstraction (set builder notation), followed by either the relevant axiom from Kuhn (1983), or a definition from Quine (1976). The notation {x_1...x_n : Fx_1...x_n} denotes the set of n-tuples satisfying the atomic formula Fx_1...x_n.

*"Identity", "I", is defined as:: IFx_1x_2...x_n leftrightarrow Fx_1x_1...x_n leftrightarrow Fx_2x_2...x_n.Identity is reflexive ("Ixx"), symmetric ("Ixy"→"Iyx"), transitive ( ("Ixy"∧"Iyz") → "Ixz"), and obeys the substitution property::(Fx_1...x_n and Ix_1y) ightarrow Fyx_2...x_n.
*"Padding", +, adds a variable to the left of any argument list.: +F^n =_{def} {x_0x_1...x_n : F^n x_1...x_n}.:+Fx_1...x_n leftrightarrow Fx_2...x_n.
*"Cropping", ∃, erases the leftmost variable in any argument list.: exist F^n =_{def} {x_2...x_n : exist x_1 F^n x_1...x_n}.:Fx_1...x_n ightarrow exist Fx_2...x_n.

"Cropping" enables two useful defined functors:
* "Reflection", S:: SF^n =_{def} {x_2...x_n : F^n x_2x_2...x_n}.:SF^n leftrightarrow exist IF^n.S generalizes the notion of reflexivity to all terms of any finite degree greater than 2. N.B: S should not be confused with the primitive combinator S of combinatory logic.
*"Cartesian product", imes;:F^m imes G^n leftrightarrow F^m exist^m G^n. Here only, Quine adopted an infix notation, because this infix notation for Cartesian product is very well established in mathematics. Cartesian product allows restating conjunction as follows::F^mx_1...x_mG^nx_1...x_n leftrightarrow (F^m imes G^n)x_1...x_mx_1...x_n.Reorder the concatenated argument list so as to shift a pair of duplicate variables to the far left, then invoke S to eliminate the duplication. Do this as many times as required, resulting is an argument list of length max{"m","n").

The next three functors enable reordering argument lists at will.
*"Major inversion", Inv, rotates the variables in an argument list to the right, so that the last variable becomes the first.: InvF^n =_{def} {x_1...x_n : F^nx_nx_1...x_{n-1}}.: Inv Fx_1...x_n leftrightarrow Fx_nx_1...x_{n-1}.
*"Minor inversion", inv, swaps the first two variables in an argument list.: invF^n =_{def} {x_1...x_n : F^n x_2x_1...x_n}.: invFx_1...x_n leftrightarrow Fx_2x_1...x_n.
*"Permutation", p, rotates the second through last variables in an argument list to the left, so that the second variable becomes the last.: pF^n =_{def} {x_1...x_n : F^n x_1x_3...x_nx_2}.: pFx_1...x_n leftrightarrow Inv inv Fx_1x_3...x_nx_2.Given an argument list consisting of "n" variables, p implicitly treats the last "n"-1 variables like a bicycle chain, with each variable constituting a link in the chain. One application of p advances the chain by one link. "k" consecutive applications of p to "F"n moves the "k"+1 variable to the second argument position in "F".

When "n"=2, Inv and inv merely interchange "x"1 and "x"2. When "n"=1, they have no effect. Hence p has no effect when "n"<3.

Kuhn (1983) takes "Major inversion" and "Minor inversion" as primitive. The notation p in Kuhn corresponds to inv; he has no analog to "Permutation" and hence has no axioms for it. If, following Quine (1976), p is taken as primitive, Inv and inv can be defined as nontrivial combinations of +, &exist;, and iterated p.

The following table summarizes how the functors affect the degrees of their arguments.


All instances of a predicate letter may be replaced by another predicate letter of the same degree, without affecting validity. The rules are:
* Modus ponens;
* Let α and &beta; be PFL formulas in which x_1 does not appear. Then if (alpha and Fx_1...x_n) ightarrow eta is a PFL theorem, then (alpha and exist Fx_2...x_n) ightarrow eta is likewise a PFL theorem.

ome useful results

Instead axiomatizing PFL, Quine (1976) proposed the following conjectures as candidate axioms.

*exist I"n"-1 consecutive iterations of p restores the "status quo ante":
*F^n leftrightarrow p^{n-1}F^n+ and &exist; annihilate each other:
*F^n ightarrow +exist F^n
*F^n leftrightarrow exist +F^nNegation distributes over +, &exist;, and p:
*+lnot F^n leftrightarrow lnot +F^n
*lnotexist F^n ightarrow exist lnot F^n
*plnot F^n leftrightarrow lnot pF^n+ and p distributes over conjunction:
*+(F^nG^m) leftrightarrow (+F^n+G^m)
*p(F^nG^m) leftrightarrow (pF^npG^m)Identity has the interesting implication:
*IF^n ightarrow p^{n-2} exist p+F^n

Quine also conjectured the rule: If alpha is a PFL theorem, then so are palpha, +alpha, and lnot exist lnot alpha.

Bacon's work

Bacon (1985) takes the conditional, negation, "Identity", "Padding", and "Major" and "Minor inversion" as primitive, and "Cropping" as defined. Employing terminology and notation differing somewhat from the above, Bacon (1985) sets out two formulations of PFL:
* A natural deduction formulation in the style of Frederick Fitch. Bacon proves this formulation sound and complete in full detail.
*An axiomatic formulation which Bacon asserts, but does not prove, equivalent to the preceding one. Some of these axioms are simply Quine conjectures restated in Bacon's notation.

Bacon also:
*Discusses the relation of PFL to the term logic of Sommers (1982), and argues that recasting PFL using a syntax proposed in Lockwood's appendix to Sommers, should make PFL easier to "read, use, and teach";
*Touches on the group theoretic structure of Inv and inv;
*Mentions that sentential logic, monadic predicate logic, the modal logic S5, and the Boolean logic of (un)permuted relations, are all fragments of PFL.

From first-order logic to PFL

The following algorithm is adapted from Quine (1976: 300-2). Given a closed formula of first-order logic, first do the following:
* Attach a numerical subscript to every predicate letter, stating its degree;
* Translate all universal quantifiers into existential quantifiers and negation;
* Restate all atomic formulas of the form "x"="y" as "Ixy".

Now apply the following algorithm to the preceding result:

1. Translate the matrices of the most deeply nested quantifiers into disjunctive normal form, consisting of disjuncts of conjuncts of terms, negating atomic terms as required. The resulting subformula contains only negation, conjunction, disjunction, and existential quantification.

2. Distribute the existential quantifiers over the disjuncts in the matrix using the rule of passage (Quine 1982: 119)::exist x [alpha (x) or gamma (x)] leftrightarrow (exist x alpha (x) or exist x gamma (x)).

3. Replace conjunction by Cartesian product, by invoking the fact::(F^m and G^n) leftrightarrow (F^m imes G^n) leftrightarrow (F^m exist^m G^n); m

4. Concatenate the argument lists of all atomic terms, and move the concatenated list to the far right of the subformula.

5. Use Inv and inv to move all instances of the quantified variable (call it "y") to the left of the argument list.

6. Invoke S as many times as required to eliminate all but the last instance of "y". Eliminate "y" by prefixing the subformula with one instance of &exist;.

7. Repeat (1)-(6) until all quantified variables have been eliminated. Eliminate any disjunctions falling within the scope of a quantifier by invoking the equivalence:: (alpha or eta or ...) leftrightarrow lnot(lnotalpha and lnoteta and ...).

The reverse translation, from PFL to first-order logic, is discussed in Quine (1976: 302-4).

The canonical foundation of mathematics is axiomatic set theory, with a background logic consisting of first-order logic with identity, with a universe of discourse consisting entirely of sets. There is a single predicate letter of degree 2, interpreted as set membership. The PFL translation of the canonical axiomatic set theory ZFC is not difficult, as no ZFC axiom requires more than 6 quantified variables. [ [ Metamath axioms.] ]

ee also

*algebraic logic
*combinatory logic
*cylindric algebra
*relation algebra
*term logic



*Bacon, John, 1985, "The completeness of a predicate-functor logic," "Journal of Symbolic Logic 50": 903-26.
*Paul Bernays, 1959, "Uber eine naturliche Erweiterung des Relationenkalkuls" in Heyting, A., ed., "Constructivity in Mathematics". North Holland: 1-14.
*Kuhn, Stephen T., 1983, " [ An Axiomatization of Predicate Functor Logic,] " "Notre Dame Journal of Formal Logic 24": 233-41.
*Willard Quine, 1976, "Algebraic Logic and Predicate Functors" in "Ways of Paradox and Other Essays", enlarged ed. Harvard Univ. Press: 283-307.
*--------, 1982. "Methods of Logic", 4th ed. Harvard Univ. Press. Chpt. 45.
*Sommers, Fred, 1982. "The Logic of Natural Language". Oxford Univ. Press.
*Alfred Tarski and Givant, Steven, 1987. "A Formalization of Set Theory Without Variables". AMS.
*Jean Van Heijenoort, 1967. "From Frege to Godel: A Source Book on Mathematical Logic". Harvard Univ. Press.

Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Term logic — In philosophy, term logic, also known as traditional logic, is a loose name for the way of doing logic that began with Aristotle, and that was dominant until the advent of modern predicate logic in the late nineteenth century.This entry is an… …   Wikipedia

  • Combinatory logic — Not to be confused with combinational logic, a topic in digital electronics. Combinatory logic is a notation introduced by Moses Schönfinkel and Haskell Curry to eliminate the need for variables in mathematical logic. It has more recently been… …   Wikipedia

  • First-order logic — is a formal logical system used in mathematics, philosophy, linguistics, and computer science. It goes by many names, including: first order predicate calculus, the lower predicate calculus, quantification theory, and predicate logic (a less… …   Wikipedia

  • Algebraic logic — In mathematical logic, algebraic logic formalizes logic using the methods of abstract algebra.Logics as models of algebrasAlgebraic logic treats logics as models (interpretations) of certain algebraic structures, specifically as models of bounded …   Wikipedia

  • Constraint logic programming — Programming paradigms Agent oriented Automata based Component based Flow based Pipelined Concatenative Concurrent computing …   Wikipedia

  • Categorical logic — is a branch of category theory within mathematics, adjacent to mathematical logic but in fact more notable for its connections to theoretical computer science. In broad terms, categorical logic represents both syntax and semantics by a category,… …   Wikipedia

  • Willard Van Orman Quine — Unreferenced|date=August 2007 Infobox Philosopher region = Western Philosophy era = 20th century philosophy color = #B0C4DE image caption = Willard Van Orman Quine name = Willard Van Orman Quine birth = birth date|mf=yes|1908|6|25 death = death… …   Wikipedia

  • List of mathematics articles (P) — NOTOC P P = NP problem P adic analysis P adic number P adic order P compact group P group P² irreducible P Laplacian P matrix P rep P value P vector P y method Pacific Journal of Mathematics Package merge algorithm Packed storage matrix Packing… …   Wikipedia

  • Prolog — infobox programming language paradigm = Logic programming year = 1972 designer = Alain Colmerauer implementations = BProlog, ECLiPSe, Ciao Prolog, GNU Prolog, Quintus, SICStus, Strawberry, SWI Prolog, YAP Prolog, tuProlog dialects = ISO Prolog,… …   Wikipedia

  • Function (mathematics) — f(x) redirects here. For the band, see f(x) (band). Graph of example function, In mathematics, a function associates one quantity, the a …   Wikipedia