Download Notes on Classical Propositional Logic

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Jesús Mosterín wikipedia , lookup

Structure (mathematical logic) wikipedia , lookup

Inquiry wikipedia , lookup

Foundations of mathematics wikipedia , lookup

History of the function concept wikipedia , lookup

Model theory wikipedia , lookup

Catuṣkoṭi wikipedia , lookup

Gödel's incompleteness theorems wikipedia , lookup

Modal logic wikipedia , lookup

Hyperreal number wikipedia , lookup

History of the Church–Turing thesis wikipedia , lookup

First-order logic wikipedia , lookup

Set theory wikipedia , lookup

Quantum logic wikipedia , lookup

Quasi-set theory wikipedia , lookup

Truth-bearer wikipedia , lookup

List of first-order theories wikipedia , lookup

Mathematical proof wikipedia , lookup

Interpretation (logic) wikipedia , lookup

Boolean satisfiability problem wikipedia , lookup

Mathematical logic wikipedia , lookup

Intuitionistic logic wikipedia , lookup

Curry–Howard correspondence wikipedia , lookup

Propositional formula wikipedia , lookup

Peano axioms wikipedia , lookup

Theorem wikipedia , lookup

Sequent calculus wikipedia , lookup

Laws of Form wikipedia , lookup

Law of thought wikipedia , lookup

Natural deduction wikipedia , lookup

Naive set theory wikipedia , lookup

Axiom wikipedia , lookup

Axiom of reducibility wikipedia , lookup

Propositional calculus wikipedia , lookup

Principia Mathematica wikipedia , lookup

Transcript
Notes on Classical Propositional Logic
Melvin Fitting
Lehman College, CUNY, 250 Bedford Park Boulevard West, Bronx, NY 10468-1589
CUNY Graduate Center, 365 Fifth Avenue, New York, NY 10016
February 1, 2008, revised August 31, 2010
Contents
1 Introduction
1
2 The Language
2
3 The Truth Table Method
2
4 Axiom Systems
4
5 The Goal and General Outline
5
6 Lindenbaum’s Theorem
7
7 Implication and the Deduction Theorem
9
8 Negation
14
9 Implication
15
10 Conjunction
15
11 Disjunction
16
12 Completeness At Last
16
13 Summary of Axiom System
18
1
Introduction
Classical propositional logic is the simplest and most nicely behaved of any logic (whatever that
means). In a course discussing a wide variety of logics, this is a natural place to start. Many different
proof procedures have been developed for it: axiom systems, tree (tableau) systems, sequent calculi,
natural deduction, resolution, and more. Some of these carry over to some other logics, and some
do not. That is the way of things.
There are many, conceptually different, completeness proofs for axiomatic formulations of classical propositional logic. Often, for a particular way of proving completeness, one set of axioms is
1
Notes on Propositional Logic
2
easier to work with than another. Then, one way of developing an axiomatic system is to use a
completeness proof as a guide to determining the axioms needed. In these notes we present a standard completeness argument that uses maximal consistent sets. This way of doing things is due to
Lindenbaum, though it is often described as Henkin-style (incorrectly—he extended Lindenbaum’s
ideas to incorporate quantification). We use this argument to motivate our choice of axioms.
Our style here is to begin as broadly as possible, then narrow things down as required. So we
first talk about axiom systems in general, and the notion of an axiomatic proof. Even without
specifying particular axioms or rules, there are still results of interest and use that can be proved.
In fact, we go a long way before we need to get specific.
If you have comments or suggestions on these notes, please e-mail them to me.
2
The Language
Before we get to our subject of primary interest, there are some preliminary items we must get out
of the way. This is the first of two sections in which we do this.
Formulas are built up from a countable list of propositional letters, P1 , P2 , . . . . Commonly a
unary operator of negation is allowed. Here it is more convenient to take negation as defined and
to assume we have a falsehood connective instead; ¬X abbreviates X ⊃ ⊥. We write the falsehood
constant as ⊥. Then propositional atoms are the propositional letters, together with ⊥.
Formulas are built up using various binary connectives. Ternary connectives, quatenary (is
there such a word) connectives, and so on, could be allowed, but it is not necessary since with
enough other machinery they can all be defined. We will take as binary connectives: implication,
⊃; disjunction, ∨; and conjunction, ∧. Fewer are possible since some can be defined from others.
More are also possible. This is our basic set.
Given all this, here is the definition of the set of propositional formulas. It is a recursive
definition, and says how formulas are generated.
Definition 2.1 (Formula) The set of formulas is the smallest set meeting the following conditions:
1. Every propositional atom is a formula;
2. If X and Y are formulas, and ◦ is a binary connective, then (X ◦ Y ) is a formula.
Using this definition it is easy to show that, say, ((X ∨Y ) ⊃ (X ∧Y )) is a formula. It is less easy
to show that ((X ∨ Y ⊃ (X ∧ Y )) is not a formula. Devising tests for formula-hood is something
that is done in automata theory. Here we’ll assume you can recognize formulas when you see them.
Further, we will often be somewhat informal and omit outer parentheses when convenient, writing
(X ∨ Y ) ⊃ (X ∧ Y ) for ((X ∨ Y ) ⊃ (X ∧ Y )), for instance.
Exercise 2.1 Find a way of proving that ((X ∨ Y ⊃ (X ∧ Y )) is not a formula according to the
definition above.
3
The Truth Table Method
Formulas are pure syntax. They have to be assigned some meaning, and this is the job of semantics.
For classical propositional logic, the meaning of a formula is simply truth or falsehood, and one
discusses meaning in a particular context. Truth tables are the standard tool for this—each line
Notes on Propositional Logic
3
represents a context. I assume you all have seen truth tables, and I won’t go into their details.
What I will do is extract their mathematical essence, because it will be convenient later on.
Let us assume we have two truth values, true and false. (Exactly what these are is not
important, only that they are different from each other.) We assume there are various operations
defined on the set {true, false} of truth values, corresponding to our choice of connectives. For
convenience, we use ∧ as both a connective and as the name of an operation on truth values. These
are really quite different things, but you can tell from context which is meant. It is analogous to the
situation one encounters in mathematics, where one sees similar ambiguity. On the one hand, we
might talk about the leftmost occurrence of the symbol + in the equatiion (x + y) = (y + x). Here
we are using syntax. Or we might say 3 + 5 is the number 8. Here we are applying an operation.
While these are quite different, there is usually no problem keeping the differences sorted out.
Now, here are our definitions of three operations on the set {true, false} of truth values.
true
true
false
false
true
false
true
false
⊃
true
false
true
true
∧
true
false
false
false
∨
true
true
true
false
Now to connect these operations with formulas, we have the following.
Definition 3.1 (Boolean Valuation) A boolean valuation is a mapping v from the set of formulas to the set of truth values that meets the following conditions:
1. v(⊥) = false
2. v(X ⊃ Y ) = v(X) ⊃ v(Y )
3. v(X ∧ Y ) = v(X) ∧ v(Y )
4. v(X ∨ Y ) = v(X) ∨ v(Y )
Take a typical line of this definition, say v(X ⊃ Y ) = v(X) ⊃ v(Y ). The occurrence of ⊃ on the
left is syntactical—it is part of the formula (X ⊃ Y ). The occurrence on the right is the operation
from the table above.
It can be shown (by induction on formula complexity) that any two boolean valuations that
agree on propositional letters will agree on all formulas. It can also be shown that a boolean
valuation is completely specified by giving its values on propositional letters. And finally, it can
be shown that the value of a boolean valuation v on a formula X is not affected by changing v on
propositional letters that don’t occur in X. We’ll assume all this here.
As an example, suppose v(P1 ) = true and v(P2 ) = false. We compute v(P1 ⊃ (P2 ∨ ⊥)).
v(P1 ⊃ (P2 ∨ ⊥)) = v(P1 ) ⊃ v(P2 ∨ ⊥)
= v(P1 ) ⊃ (v(P2 ) ∨ v(⊥))
= true ⊃ (false ∨ false)
= true ⊃ false
= false
You should recognize in the calculation above all the steps involved in filling in a truth table
line for v(P1 ⊃ (P2 ∨ ⊥)) where the line is the one that assigns P1 the value true and P2 the value
false.
Now we use the semantics just defined to characterize the fundamental notions we study.
Notes on Propositional Logic
4
Definition 3.2 (Tautology) A formula X is a tautology if v(X) = true for every boolean valuation v.
Informally, this amounts to saying X is a tautology if every line of a truth table for X assigns
to X the value true. The utility of boolean valuations over truth tables is that they make it easier
to give mathematical arguments concerning the notions of logic.
Being a tautology has a generalization to being a consequence of a set of formulas.
Definition 3.3 (Semantic Consequence) Let S be a set of formulas, and let X be a single
formula. We say X is a semantic consequence of S just in case every boolean valuation v that maps
every member of S to true also maps X to true.
Loosely, X is a semantic consequence of S if X must be true whenever all members of S are
true. Notice that saying X is a tautology is equivalent to saying X is a semantic consequence of ∅.
Also note that if X is a tautology, it is a semantic consequence of every set. (Why?)
Exercise 3.1 Let w be a boolean valuation such that w(P1 ) = w(P3 ) = true and w(P2 ) = false.
Evaluate w((P1 ∧ P3 ) ⊃ (P2 ⊃ ⊥)).
4
Axiom Systems
Constructing a truth table for a formula with many propositional letters is a very large task. For
more complex logics, the semantics may not even provide an effective method for determining
validity. What is often used instead is some notion of formal proof. Axiom systems provide a very
common such methodology—an axiom system proof can be a relatively small object compared to
a truth table (though a proof may be hard to find). In this section we set up the basics of the
axiomatic approach, then in subsequent sections we work towards soundness and completeness (and
explain what these terms mean).
To have an axiom system two things are needed: we need some class of formulas called axioms,
whose truth is simply assumed; and we need rules of derivation, for producing new truths from old,
so to speak. A word about each of these.
Any set of formulas could be taken as a set of axioms, but practicality issues come into it. If we
take the set of all tautologies as axioms, all axiomatic proofs would be trivial, and nothing would
be gained over truth tables. Or, we could take as a set of axioms some infinite set of formulas whose
Gödel numbers (if you know what they are) form a non-recursive set. In this case we would have
no general way of telling what is and what is not an axiom. Reasonable restrictions are needed.
It is very common to specify a set of axioms by giving a set of axiom schemes—any formula
of such-and-such form is an axiom. For example, we might say that any formula of the form
(X ⊃ (Y ⊃ X)) is an axiom. If we did this, among the axioms would be (P1 ⊃ (P2 ⊃ P1 )) and
also ((P1 ∧ P2 ) ⊃ (P3 ⊃ (P1 ∧ P2 ))). In this approach (X ⊃ (Y ⊃ X)) is an axiom scheme, and we
have given examples of specific axioms that are instances of this scheme. This is the way we will
do things here—we will specify axiom systems by giving a finite number of axiom schemes.
Rules of derivation must be finitary and effective. Finitary means we need a finite number of
formulas to trigger a rule application. Effective means we can tell when a rule can be applied. In
practice, our rules will be specified by writing something like the following:
X1 , X2 , . . . , Xn
Y
Notes on Propositional Logic
5
where this means that if we have specific formulas that match the pattern above the line, we can
conclude the formula that results, below the line. A familiar example is modus ponens.
X, X ⊃ Y
Y
Now, to get a little more specific (but not very much so yet).
Suppose A is a finite set of axiom schemes. We will say a formula is an axiom of A if it is an
instance of one of the schemes in A. And suppose R is a finite set of rules of derivation. These two
together determine the notions of a derivation, and a proof, as follows.
Definition 4.1 (Derivation, Proof ) Let S be a set of formulas (not schemes, and not necessarily
finite). By a derivation from S, in the system with axiom schemes A and rules R, we mean any
finite sequence of formulas
X1
X2
..
.
Xn
in which each formula is either: an axiom from A, a member of the set S, or follows from earlier
formulas using a rule from R. The last formula, Xn , is the formula that is derived.
If the set S is empty, we say the derivation is a proof, and the last formula is the formula that
has been proved.
If X has a derivation from S, we symbolize this with S ` X. If X is provable, that is, if ∅ ` X,
we just write ` X.
There are some easy items about these notions that can now be established.
Proposition 4.2 (Monotonicity) If S ` X and S ⊆ S 0 , then S 0 ` X.
Proof If S ⊆ S 0 then any derivation from S is also a derivation from S 0 .
Proposition 4.3 (Compactness) If S ` X then there is some finite subset S 0 of S such that
S 0 ` X.
Proof Suppose S ` X, and so we have a derivation of X from S. That derivation has only finitely
many lines, and so only uses a finite number of members of S. Let S 0 be the set of members of S
actually used in the derivation. Then S 0 is finite, and the same derivation of X from S is also a
derivation of X from S 0 .
5
The Goal and General Outline
We want to find an axiom system with a finite number of axiom schemes and rules that can prove
exactly the tautologies. More specifically, we want an axiom system with a finite number of axiom
schemes and rules for which we can prove soundness and completeness, where these terms are
defined as follows.
Definition 5.1 (Soundness and Completeness) An axiom system is sound if it only proves
tautologies. An axiom system is complete if it proves every tautology.
Notes on Propositional Logic
6
Each of these separately is easy to manage. An axiom system with no axioms at all can’t prove
anything, hence is sound (find me something it proves that is not a tautology). It is not very useful
since it is badly incomplete. An axiom system that proves every formula is obviously complete—it
proves everything hence it proves all tautologies. It too is not very useful since it is badly unsound.
We need the two conditions together. In fact, soundness is rather easy to manage.
Proposition 5.2 (Soundness) Suppose we have an axiom system that meets the following two
conditions:
1. Every axiom is a tautology.
2. Every rule is sound, which means that any boolean valuation that maps all the premises of a
rule application to true must also map the conclusion of the rule to true.
Then the axiom system is sound; it only proves tautologies.
Proof It is easy to see that if the conditions are met, every line of a proof must be a tautology,
hence the last line, which is what the proof proves.
In fact a stronger result can be proved, which we leave to you as Exercise 5.1.
So, we will make sure to choose axiom schemes whose instances are tautologies, and rules of
derivation that are sound. Completeness is much harder, however. This will occupy the next several
sections. Since it is more complex, here is something of a guide to it.
Suppose we have an axiom system, and we wish to prove it is complete. We must show that
every tautology is provable. Actually, we will show the converse: if X is not provable, then X is
not a tautology. To show X is not a tautology, we must find a boolean valuation v that maps X
to false. Let us take a look, again, at how boolean valuations behave.
Let v be a boolean valuation, and consider the set of all formulas that v maps to true; what
is such a set like? Well, the following should be clear. Such a set must contain exactly one of Z
or ¬Z for each formula Z. Such a set must contain Z ∧ W exactly when it contains both Z and
W . Such a set must contain Z ∨ W exactly when it contains at least one of Z or W . And so on.
Suppose we could show that if a formula X is not provable in our axiom system, it must fail to
be a member of a set meeting conditions like this. Then we could use the set to create a boolean
valuation mapping X to false, and we would have completeness.
In the next section we will introduce enough machinery so that we can define a notion of
axiomatic consistency. We will show that there are consistent sets that cannot be enlarged without
becoming inconsistent—these are called maximally consistent sets. Then we will take as our guiding
principle: choose our axioms so that maximally consistent sets must have all the properties sketched
above: exactly one of Z or ¬Z belongs, Z ∧ W belongs exactly when both Z and W belong, and
so on. Then these maximally consistent sets will serve as the appropriate tools to let us prove
completeness.
In the next section consistency and maximal consistency are defined. In the sections that follow
we choose axioms schemes that guarantee maximal consistent sets have the properties we want.
And finally, we use them to prove completeness of the axiom system we have built up.
Exercise 5.1 Suppose we have an axiom system for which the two conditions of Proposition 5.2
are met. Show that if S ` X, then X is a semantic consequence of S (Definition 3.3).
Notes on Propositional Logic
6
7
Lindenbaum’s Theorem
We have not yet made any use of the falsehood constant, ⊥, that is part of our language. Now it is
time. As you read, please notice that we don’t really need much about it. We don’t actually make
use of the fact that it represents falsehood, only that it is some particular formula.
Definition 6.1 (Consistency) A set S of formulas is called inconsistent if S ` ⊥. The set S is
consistent if it is not inconsistent, in other words, if S 6` ⊥.
There are some easy results about consistency that we can now prove.
Proposition 6.2 Suppose S ⊆ S 0 . If S is inconsistent, so is S 0 . If S 0 is consistent, so is S.
Proof This follows immediately from Proposition 4.2, taking X to be ⊥.
Proposition 6.3 A set S of formulas is consistent if and only if every finite subset of S is consistent.
Proof The assertion is equivalent to: S is inconsistent if and only if S has some inconsistent finite
subset.
Suppose S is inconsistent. Then S ` ⊥, so by Proposition 4.3, S 0 ` ⊥ for some finite S 0 ⊆ S,
and hence S has an inconsistent finite subset.
Conversely, suppose S has an inconsistent finite subset, S 0 . Then S 0 ` ⊥, and since S 0 ⊆ S, we
have S ` ⊥ by Proposition 4.2, and hence S is inconsistent.
It is common in mathematics to call something maximal if it cannot be made bigger. This
applies to the notion of consistency too.
Definition 6.4 (Maximal Consistent) A set S of formulas is maximally consistent if: 1) it is
consistent, but 2) no proper enlargement is consistent.
Another, very useful, way of saying part 2) of the definition above is this. Suppose that,
whenever S ∪ {X} is consistent (that is, the result of adding X to S is consistent), it turns out
that X was already in S. Then any enlargement of S that is consistent turns out not to be really
an enlargement, so S has no proper enlargements that are consistent. This says S is maximal. So,
our test for maximality of a consistent set is:
if S ∪ {X} is consistent, then X ∈ S
Maximally consistent sets have many nice and useful properties. For instance, they are closed
under derivation.
Proposition 6.5 Suppose S is a maximally consistent set. If S ` X, then X ∈ S.
Proof Assume S ` X, and S is maximally consistent. If we can show that S ∪ {X} is consistent, it
follows that X ∈ S, so this is our goal. We do this by contradiction. Let us suppose that S ∪ {X}
is not consistent, and derive a contradiction.
Suppose S ∪ {X} ` ⊥. (Recall, we are trying for a contradiction.) Then we have a derivation
of ⊥ from S ∪ {X}. Say it is
Z1
Z2
..
.
Zn
Notes on Propositional Logic
8
where Zn is ⊥. Each line is an axiom, comes from earlier lines by a rule of derivation, or is a
member of S, or is X (since this is a derivation from S ∪ {X}). Suppose some line, say Zi , is
actually the formula X. Since X itself has a derivation from S, simply insert between lines Zi−1
and Zi all the steps of a derivation of X from S. Do this for each occurrence of X. This converts
the derivation from S ∪ {X} into one from S alone. Since the derivation ends with ⊥, we have
shown that S is inconsistent, contrary to our assumption that S was maximally consistent, and
hence consistent.
We have, indeed, established several nice properties but this is not enough, because it is not
obvious that there are any maximally consistent sets at all. If there were none, they would all have
every nice property you might dream of, and this would be of no use at all. Fortunately a famous
result due to Lindenbaum says there are lots of maximally consistent sets. Before we get to this, it
will be useful to have the following available—it plays a central role in establishing Lindenbaum’s
result.
Proposition 6.6 (Chain Limit) Suppose we have a sequence of sets of formulas, S1 , S2 , S3 , . . . ,
so that S1 ⊆ S2 ⊆ S3 ⊆ . . .. (Such things are called chains.) Let S∞ = S1 ∪ S2 ∪ S3 ∪ . . .. Then
S∞ is a kind of limit of the chain, and we have S1 ⊆ S2 ⊆ S3 ⊆ . . . ⊆ S∞ . We claim that, for any
formula X:
S∞ ` X if and only if Sn ` X for some positive integer n.
Proof The proof has two parts.
Part 1: Suppose Sn ` X for some positive integer n. Since Sn ⊆ S∞ we have S∞ ` X by
Proposition 4.2.
Part 2: Suppose S∞ ` X. By Proposition 4.3. S 0 ` X for some finite S 0 ⊆ S∞ .
We first show that S 0 ⊆ Sn for some positive integer n. To keep the clutter down, let’s say
that S 0 has three members—the general case follows the same idea. Say S 0 = {Z1 , Z2 , Z3 }. Since
S 0 ⊆ S∞ , Z1 ∈ S∞ , so by the definition of S∞ , Z1 ∈ Sa for some integer a. Similarly Z2 ∈ Sb and
Z3 ∈ Sc for some integers b and c. Let n be whichever of a, b, c is largest. Since we have a chain
structure, all of Z1 , Z2 , and Z3 will be in Sn , and thus S 0 ⊆ Sn .
We now have that S 0 ⊆ Sn for some integer n. Since S 0 ` X we also have Sn ` X by
Proposition 4.2.
Now for the main event.
Theorem 6.7 (Lindenbaum’s Theorem) Let S be any consistent set. Then S ⊆ S ∗ for some
maximally consistent set S ∗ .
This is often stated informally as every consistent set can be extended to a maximally consistent
one.
Proof We have in our language a countable list of propositional letters. There is a simple result
of set theory, that would take us too far out of our way to prove here, that says we have the
following consequence: the set of all formulas of our language is countable. This means it is
possible (constructively, in fact), to set up an infinite list, X1 , X2 , X3 , . . . , in such a way that every
formula appears somewhere in the list. Let us assume this has been done.
We now define a sequence of sets, S1 , S2 , S3 , . . . , as follows.
To start things off, S1 = S. Since S is consistent by assumption, the sequence of sets starts
with a consistent set.
Notes on Propositional Logic
9
Next, suppose Sn has been defined, and is consistent. We define the next set as follows.
Sn ∪ {Xn } if Sn ∪ {Xn } is consistent
Sn+1 =
Sn
if Sn ∪ {Xn } is not consistent
Notice that, in either case, Sn+1 must be consistent. Notice also that Sn ⊆ Sn+1 . We thus have a
chain structure, as in Proposition 6.6. Let S∞ = S1 ∪ S2 ∪ S3 ∪ . . .. Then we have:
S1 ⊆ S2 ⊆ S3 ⊆ . . . ⊆ S∞
It is obvious that S∞ extends S = S1 . We claim that S∞ is consistent, and maximal, and so
taking S ∗ to be S∞ will finish the proof.
First, S∞ is consistent because, if it were not, S∞ ` ⊥, and hence Sn ` ⊥ for some integer n, by
Proposition 6.6, which would mean that Sn is not consistent. But by construction, Sn is consistent
for every integer n.
Next we show that S∞ is maximal. Suppose S ∪ {Z} is consistent; we must show that Z ∈ S∞ .
Well, since X1 , X2 , X3 , . . . is a listing of all formulas, Z is somewhere in the list; say Z is formula
Xk . Then Sk ∪ {Xk } must be consistent, for if it were not, S∞ ∪ {Xk } would not be consistent
either, by Proposition 4.2, but this is S∞ ∪ {Z}, and our assumption is that this is consistent. Since
Sk ∪ {Xk } is consistent, it is this set that constitutes Sk+1 , hence Z = Xk ∈ Sk+1 ⊆ S∞ .
7
Implication and the Deduction Theorem
This section is a bit of a detour on the route to choosing axioms to make maximally consistent
sets behave well. We will take ⊃ as a kind of basic connective, and for this we have a fundamental
result due independently to Tarski and Herbrand. The result says that if we pick the ‘right’ axioms
and rules for implication, we can prove an extremely useful result called the Deduction Theorem.
The Theorem tells us that the notion of derivation, from Definition 4.1, and implication are closely
connected. But first, what axioms and what rules must we adopt? We begin with the following
very common rule of derivation.
Rule of Derivation, Modus Ponens
X
X⊃Y
Y
And next, we adopt two axiom schemes for the implication connective.
⊃–1 Axiom Scheme X ⊃ (Y ⊃ X)
⊃–2 Axiom Scheme (X ⊃ (Y ⊃ Z)) ⊃ ((X ⊃ Y ) ⊃ (X ⊃ Z))
Let us give an (important) example of a proof in the axiom system we have thus far. We will
show A ⊃ A is provable, for any formula A. We do not claim a proof is easy to discover, but here
is a proof. Line numbers are so that we can give explanations.
1.
2.
3.
4.
5.
A ⊃ ((W ⊃ A) ⊃ A)
(A ⊃ ((W ⊃ A) ⊃ A)) ⊃ ((A ⊃ (W ⊃ A)) ⊃ (A ⊃ A))
(A ⊃ (W ⊃ A)) ⊃ (A ⊃ A)
A ⊃ (W ⊃ A)
A⊃A
Notes on Propositional Logic
10
In this line 1 is an axiom; in ⊃–1 take X to be A and Y to be W ⊃ A, where W is any formula you
may choose; it’s exact value won’t matter. Line 2 is an instance of ⊃–2; take X to be A, Y to be
W ⊃ A and Z to be A. Line 3 follows from lines 1 and 2 by modus ponens. Line 4 is an instance of
⊃–1, take X to be A and Y to be W . Finally, line 5 follows from lines 3 and 4 by modus ponens.
As we noted above, this proof is not easy to discover. In fact, (A ⊃ B) ⊃ ((B ⊃ C) ⊃ (A ⊃ C))
has a proof too, and you might convince yourselves that it is really difficult to find (I’ll bet you
don’t find it, in fact). The power of the Deduction Theorem is that it gives us an easier way of
discovering such proofs. Recall that in Definition 4.1 we had a notion of derivation, as well as a
notion of proof. It is the notion of derivation, for the axiom system given so far, that we use now.
Theorem 7.1 (Deduction) Let S be a set of formulas, and let X and Y be single formulas. In
the axiom system given so far, and in every extension of it that results by adding further axiom
schemes, if S ∪ {X} ` Y , then S ` (X ⊃ Y ). Further, there is an algorithm for converting a
derivation showing S ∪ {X} ` Y into one showing S ` (X ⊃ Y ).
Proof Let us assume we have a derivation of Y from S ∪ {X}, say it looks like this:
Z1
Z2
Z3
..
.
Zn−1
Zn
In this derivation the last line is Y , that is, Zn = Y . And otherwise, since it is a derivation from
S ∪ {X}, each line is either an axiom, or a member of S ∪ {X}, or comes from earlier lines by modus
ponens. Members of S ∪ {X} are members of S, and X itself. Our goal is to turn this derivation
into one of X ⊃ Y , that is, X ⊃ Zn , from S alone.
As a first step, append X ⊃ to the beginning of each line, geting the following sequence.
X ⊃ Z1
X ⊃ Z2
X ⊃ Z3
..
.
X ⊃ Zn−1
X ⊃ Zn
This has the last line we want, but it is very unlikely that it is a legal derivation. Now we add some
lines to turn it into one.
Consider one of the lines above, say X ⊃ Zk . We are going to insert some lines immediately
before this. What lines depends on the justification for Zk being in the original derivation, and so
there are three different cases.
Case 1: Zk is an axiom. Then expand the line X ⊃ Zk in the second sequence to the following:
Zk
Zk ⊃ (X ⊃ Zk )
X ⊃ Zk
We can now justify the presence of each of these. The first line is an axiom, because that is the
case we are in. The second line is an axiom, an instance of scheme ⊃–1. The third follows from
Notes on Propositional Logic
11
the first two by modus ponens. All this is allowed in a derivation from S, indeed, in a derivation
from anything.
Case 2: Zk is a member of S. This is handled exactly as in Case 1, we expand the line in the
same way. The only difference is that now the presence of Zk is justified because it is a member of
S, and so is allowed in a derivation from S.
Case 3: Zk is X. In this case the formula Zk ⊃ X is just X ⊃ X. We know it has an axiomatic
proof; we showed this earlier. Insert the steps of that proof just above the line Zk ⊃ X.
Case 4: Zk comes from earlier lines by modus ponens. That is, there are lines Zi and Zj
where i, j < k, and where Zj = (Zi ⊃ Zk ). Then, in the second list we must have X ⊃ Zi and
X ⊃ (Zi ⊃ Zk ) somewhere before the line X ⊃ Zk . This time, expand the line X ⊃ Zk in the
second list to the following.
(X ⊃ (Zi ⊃ Zk )) ⊃ ((X ⊃ Zi ) ⊃ (X ⊃ Zk ))
(X ⊃ Zi ) ⊃ (X ⊃ Zk )
X ⊃ Zk
The first of these formulas is an axiom, an instance of scheme ⊃–2. Since X ⊃ (Zi ⊃ Zk ) occurs
somewhere earlier, the second line follows by modus ponens. And then, since X ⊃ Zi also occurs
somewhere earlier, the third line also follows by modus ponens.
By adding these extra lines, we have converted the sequence of formulas into a proper derivation,
and only members of S are now used as assumptions.
Here is an example to show how useful this theorem can be. Earlier we said that (A ⊃ B) ⊃
((B ⊃ C) ⊃ (A ⊃ C)) was provable, but it was hard to find a proof. Here’s how to find one. First
we show there is a derivation to justify the following.
{A ⊃ B, B ⊃ C, A} ` C
Here is the derivation, with line numbers added for convenience.
1.
2.
3.
4.
5.
A
A⊃B
B
B⊃C
C
In this, line 1 is one of the premises. So is line 2. Line 3 follows from 1 and 2 by modus ponens.
Line 4 is a premise, and line 5 follows from 3 and 4 by modus ponens.
Now, we convert this derivation into one showing
{A ⊃ B, B ⊃ C} ` A ⊃ C
by following the algorithm given in the proof of Theorem 7.1. First, we append A ⊃ to each line,
getting the following.
1.
2.
3.
4.
5.
A⊃A
A ⊃ (A ⊃ B)
A⊃B
A ⊃ (B ⊃ C)
A⊃C
Notes on Propositional Logic
12
Next, we insert some lines to turn this into a legal derivation from {A ⊃ B, B ⊃ C}.
Line 1 is provable—we insert the lines of the proof, as given earlier. This is case 3 in the proof
of the deduction theorem.
1.
2.
3.
4.
5.
A ⊃ ((W ⊃ A) ⊃ A)
(A ⊃ ((W ⊃ A) ⊃ A)) ⊃ ((A ⊃ (W ⊃ A)) ⊃ (A ⊃ A))
(A ⊃ (W ⊃ A)) ⊃ (A ⊃ A)
A ⊃ (W ⊃ A)
A⊃A
A ⊃ (A ⊃ B)
A⊃B
A ⊃ (B ⊃ C)
A⊃C
Line 2 in the original derivation is a premise other than A, so we are in case 2 of the deduction
theorem, and we insert lines as follows.
1.
2.
3.
4.
5.
A ⊃ ((W ⊃ A) ⊃ A)
(A ⊃ ((W ⊃ A) ⊃ A)) ⊃ ((A ⊃ (W ⊃ A)) ⊃ (A ⊃ A))
(A ⊃ (W ⊃ A)) ⊃ (A ⊃ A)
A ⊃ (W ⊃ A)
A⊃A
A⊃B
(A ⊃ B) ⊃ (A ⊃ (A ⊃ B))
A ⊃ (A ⊃ B)
A⊃B
A ⊃ (B ⊃ C)
A⊃C
The first of the new lines is a member of {A ⊃ B, B ⊃ C}, the second is an axiom, and the line
numbered 2 follows by modus ponens.
Next, line 3 of the original derivation, B, comes from lines 1 and 2 by modus ponens. We must
justify the presence of line number 3 in the new derivation, A ⊃ B. As it happens, this is a member
of {A ⊃ B, B ⊃ C} so we could just assume it, or we could follow the steps of the algorithm
exactly, adding some more lines. To keep things (relatively) simple, we’ll just accept it as one of
the premises.
Notes on Propositional Logic
13
Line 4 in the original derivation, B ⊃ C, is a premise, and so case 2 of the algorithm has us
inserting extra lines into the new derivation, as follows.
1.
2.
3.
4.
5.
A ⊃ ((W ⊃ A) ⊃ A)
(A ⊃ ((W ⊃ A) ⊃ A)) ⊃ ((A ⊃ (W ⊃ A)) ⊃ (A ⊃ A))
(A ⊃ (W ⊃ A)) ⊃ (A ⊃ A)
A ⊃ (W ⊃ A)
A⊃A
A⊃B
(A ⊃ B) ⊃ (A ⊃ (A ⊃ B))
A ⊃ (A ⊃ B)
A⊃B
B⊃C
(B ⊃ C) ⊃ (A ⊃ (B ⊃ C))
A ⊃ (B ⊃ C)
A⊃C
The first of these new lines is a member of {A ⊃ B, B ⊃ C}. The second is an axiom, an instance
of ⊃–1. Then line number 4 follows from these by modus ponens.
Finally, in the original derivation line 5 followed from lines 3 and 4 by modus ponens. This puts
us in case 4 of the algorithm, and in the new derivation we insert extra lines, as follows.
1.
2.
3.
4.
5.
A ⊃ ((W ⊃ A) ⊃ A)
(A ⊃ ((W ⊃ A) ⊃ A)) ⊃ ((A ⊃ (W ⊃ A)) ⊃ (A ⊃ A))
(A ⊃ (W ⊃ A)) ⊃ (A ⊃ A)
A ⊃ (W ⊃ A)
A⊃A
A⊃B
(A ⊃ B) ⊃ (A ⊃ (A ⊃ B))
A ⊃ (A ⊃ B)
A⊃B
B⊃C
(B ⊃ C) ⊃ (A ⊃ (B ⊃ C))
A ⊃ (B ⊃ C)
(A ⊃ (B ⊃ C)) ⊃ ((A ⊃ B) ⊃ (A ⊃ C))
(A ⊃ B) ⊃ (A ⊃ C)
A⊃C
The first of these new lines is an instance of axiom scheme ⊃–2. The second follows from this and
line 4 by modus ponens. Then line 5 follows from the second of the new lines and line 3, by modus
ponens again.
We now have a properly constructed derivation showing the following
{A ⊃ B, B ⊃ C} ` A ⊃ C
Now, use the Deduction Theorem again, to produce a derivation showing
{A ⊃ B} ` (B ⊃ C) ⊃ (A ⊃ C)
and then once more to get a derivation showing
∅ ` (A ⊃ B) ⊃ ((B ⊃ C) ⊃ (A ⊃ C))
Notes on Propositional Logic
14
and since this is a derivation from the empty set, we finally have created a proof of (A ⊃ B) ⊃
((B ⊃ C) ⊃ (A ⊃ C)), as promised. And, as promised, it is long and complex, which is why we
haven’t actually given the complete proof.
Remark Before closing this section, we should note that our two axiom schemes and the rule
of modus ponens don’t quite give us everything needed for classical negation. In fact, what is
axiomatized so far is the implication of intuitionistic logic. We don’t prove that here, or even
explain what it means. We’re just warning you.
Exercise 7.1 Show how the Deduction Theorem can be used to establish the provability of (A ⊃
(B ⊃ C)) ⊃ (B ⊃ (A ⊃ C)).
8
Negation
We are now starting the business of adding axioms so that maximally consistent sets have the right
properties to correspond to boolean valuations. We begin with negation, which is actually a defined
operator—recall that a falsehood constant, ⊥, is part of our language, though we have made no
special axiomatic assumptions about it yet. We won’t until the next section, in fact.
Definition 8.1 (Negation) The expression ¬X is taken as an abbreviation for X ⊃ ⊥.
Please note, we could have taken negation as basic—it is commonly done. Our way makes
certain things easier to establish; that’s all.
A boolean valuation maps exactly one of X or ¬X to true. If we want maximally consistent sets
of formulas to correspond to boolean valuations—they should be the sets that boolean valuations
map to true—we should have the following. We have called it a Proposition, because in fact we
do have it.
Proposition 8.2 Let M be a maximally consistent set of formulas. For each formula X, exactly
one of X or ¬X is in M .
Proof First we show we can’t have both X and ¬X in M . Well, suppose X ∈ M and (X ⊃ ⊥) ∈ M .
Then a simple application of modus ponens tells us M ` ⊥, and so M is inconsistent, contrary to
the assumption that it is a maximally consistent set.
Next we show we must have at least one of X or ¬X in M . If X ∈ M , we are done. Now
suppose X 6∈ M . If M ∪ {X} were consistent, X ∈ M since M is maximally consistent, but this
is not the case. So, M ∪ {X} is not consistent, that is, M ∪ {X} ` ⊥. Then, using the Deduction
Theorem, 7.1, M ` (X ⊃ ⊥). Since M is maximally consistent, (X ⊃ ⊥) ∈ M by Proposition 6.5,
that is, ¬X ∈ M .
Remark The negation we have axiomatized so far is not yet the one of classical propositional logic.
It is not even the one of intuitionistic logic (see the Remark at the end of the previous section).
It is the negation of a relatively unknown logic called minimal propositional logic, introduced by
Johansson in 1937. It becomes the negation of intuitionistic logic by adding the axiom scheme
⊥ ⊃ X (roughly, anything follows from a falsehood). It becomes classical negation if we also add
¬¬X ⊃ X. Eventually we will be forced to add both of these, the first in the next section and the
second toward the end.
Notes on Propositional Logic
9
15
Implication
We continue toward our goal of making maximally consistent sets correspond to boolean valuations.
In this section we fit implication into the pattern and we will see that this forces us to add one
more axiom scheme.
A boolean valuation maps X ⊃ Y to true exactly when it either does not map X to true
or does map Y to true. If maximally consistent sets are to correspond to boolean valuations we
should have, for each such set M : (X ⊃ Y ) ∈ M if and only if X 6∈ M or Y ∈ M . We do have part
of this.
Proposition 9.1 Let M be a maximally consistent set of formulas. If (X ⊃ Y ) ∈ M then either
X 6∈ M or Y ∈ M .
Proof Suppose (X ⊃ Y ) ∈ M . If X 6∈ M we are done. If X ∈ M then it follows that M ` Y , and
hence Y ∈ M because M is maximally consistent, Proposition 6.5.
We don’t quite have the converse, however. Certainly, if Y ∈ M then (X ⊃ Y ) ∈ M because
maximally consistent sets are closed under derivability, and Y ⊃ (X ⊃ Y ) is an axiom. But if
X 6∈ M we can’t conclude (X ⊃ Y ) ∈ M . Here’s the best we can do. If X 6∈ M , by Proposition 8.2
we must have (X ⊃ ⊥) ∈ M . That’s not quite what we want, but if we had ⊥ ⊃ Y as an axiom
we would be able to conclude (X ⊃ Y ) ∈ M . In fact, all formulas of this form are tautologies, so
adding them as axioms leaves us with a sound system. We now make this official.
⊥ Axiom Scheme ⊥ ⊃ Z
We can now state the following—we have already given the proof. Please note that from this
point on the axiom scheme above is part of our system.
Proposition 9.2 Let M be a maximally consistent set of formulas. Then (X ⊃ Y ) ∈ M if and
only if X 6∈ M or Y ∈ M .
10
Conjunction
We continue adding axioms to make maximally consistent sets correspond to boolean valuations.
Each boolean valuation maps X ∧ Y to true exactly when it maps X to true and also Y to true.
We must add enough axioms so that if M is a maximally consistent set, (X ∧ Y ) ∈ M if and only
if X ∈ M and Y ∈ M . And of course our axioms should be tautologies, so that we still have a
sound axiomatic system.
Making sure that (X ∧ Y ) ∈ M implies X ∈ M and Y ∈ M is simple. We take the following
two axiom schemes.
∧–1 Axiom Scheme (X ∧ Y ) ⊃ X
∧–2 Axiom Scheme (X ∧ Y ) ⊃ Y
Making sure that X ∈ M and Y ∈ M implies (X ∧ Y ) ∈ M is almost equally simple. We adopt
the following axiom scheme.
∧–3 Axiom Scheme X ⊃ (Y ⊃ (X ∧ Y ))
Notes on Propositional Logic
16
We now have the following.
Proposition 10.1 Assume the three axioms for conjunction given above have been added to the
axiom system. Then, if M is any maximally consistent set, (X ∧ Y ) ∈ M if and only if X ∈ M
and Y ∈ M .
Exercise 10.1 Supply a proof for Proposition 10.1.
11
Disjunction
Disjunction is the last of the basic binary connectives we will consider. Each boolean valuation
maps X ∨ Y to true exactly when it maps at least one of X or Y to true. We must add axioms to
ensure that maximally consistent sets mimic this behavior: (X ∨ Y ) ∈ M if and only if X ∈ M or
Y ∈ M . One direction is simple; the one from right to left. We adopt the following axiom schemes
(which are tautologies).
∨–1 Axiom Scheme X ⊃ (X ∨ Y )
∨–2 Axiom Scheme Y ⊃ (X ∨ Y )
We still need to guarantee the other direction holds: if (X ∨ Y ) ∈ M then X ∈ M or Y ∈ M .
To achieve this, we reason as follows. What we desire, written in the contrapositive form, is: if
X ∈
/ M and Y ∈
/ M then (X ∨ Y ) ∈
/ M . And recall, from Proposition 8.2, for any formula Z,
Z∈
/ M exactly when (Z ⊃ ⊥) ∈ M . So what we desire can be restated as: if (X ⊃ ⊥) ∈ M and
(Y ⊃ ⊥) ∈ M then ((X ∨ Y ) ⊃ ⊥) ∈ M . This leads us to the following axiom scheme.
∨–3 Axiom Scheme (X ⊃ ⊥) ⊃ ((Y ⊃ ⊥) ⊃ ((X ∨ Y ) ⊃ ⊥)
This does the job.
Proposition 11.1 Assume the three axioms for disjunction given above have been added to the
axiom system. Then if M is any maximally consistent set, (X ∨ Y ) ∈ M if and only if X ∈ M or
Y ∈ M.
Remark Axiom scheme ∨–3 could have been stated using our defined negation symbol. It becomes
¬X ⊃ (¬Y ⊃ ¬(X ∨ Y )), which is part of one of deMorgan’s laws. We could also have adopted
an axiom scheme that looks more general: (X ⊃ Z) ⊃ ((Y ⊃ Z) ⊃ ((X ∨ Y ) ⊃ Z). This is also
a tautology, so it is safe to adopt, and it has ∨–3 as a special case. As it happens, the narrower
version we did take is sufficient to get us a complete axiom system.
Exercise 11.1 Supply a proof for Proposition 11.1.
12
Completeness At Last
We have (almost) everything we need to prove completeness for our axiom system. It turns out
one axiom scheme is still missing. We will let it arise in its natural place, rather than introducing
it up front.
We would like to show that every tautology has a proof in our axiom system. We go about
things in the contrapositive direction: we show that if X does not have a proof, then X is not a
tautology.
Notes on Propositional Logic
17
Assume X does not have a proof. We have arranged things so that maximally consistent sets
and boolean valuations correspond closely. Suppose we could find a maximally consistent set M
that did not contain X; then we could easily show X was not a tautology as follows. Define a
mapping v by setting v(Z) = true if Z ∈ M and v(Z) = false if Z ∈
/ M , for every formula Z. We
have adopted enough axiom schemes to guarantee that v will be a boolean valuation. Since X ∈
/M
it must be that v(X) = false, and so X is not a tautology.
So, we must establish that if X does not have a proof, there is some maximally consistent set
M that does not contain X. By Proposition 8.2, M will omit X just in case M contains X ⊃ ⊥. So
we must find a maximally consistent set containing X ⊃ ⊥. Lindenbaum’s Theorem, 6.7, provides
us with a way of creating maximally consistent sets. According to it, if {X ⊃ ⊥} were consistent,
it could be extended to a maximally consistent set M , and we would be done.
So finally, we must establish that if X is not provable, then {X ⊃ ⊥} is consistent. And it is
here that we are forced to add our final axiom. Let us try proving that {X ⊃ ⊥} is consistent,
where X itself is not provable. We will attempt to do this by contradiction; we begin by supposing
that {X ⊃ ⊥} is not consistent. Well, if {X ⊃ ⊥} weren’t consistent, {X ⊃ ⊥} ` ⊥. Then by the
Deduction Theorem, 7.1, (X ⊃ ⊥) ⊃ ⊥ would be a theorem. We know X is not a theorem. To
make a connection between these, we add our final axiom scheme.
Double Negation Axiom Scheme ((X ⊃ ⊥) ⊃ ⊥) ⊃ X, or equivalently, ¬¬X ⊃ X
With this scheme added, we are finished. All the parts of a completeness proof are now present.
To bring it all together, we restate the work above, but this time as a proper proof rather than as
an exploration of the landscape, so to speak.
Theorem 12.1 (Completeness) Assume all the axiom schemes given so far, and the modus
ponens rule. If X is a tautology, then X has an axiomatic proof.
Proof We actually show that if X does not have an axiomatic proof then X is not a tautology.
So, assume X is not provable. Then the set {X ⊃ ⊥} is consistent, for otherwise (X ⊃ ⊥) ⊃ ⊥
would be provable, using the Deduction Theorem, and then X would be provable, using the Double
Negation Axiom Scheme. Since {X ⊃ ⊥} is consistent, there is some maximally consistent set M
such that {X ⊃ ⊥} ⊆ M , by Lindenbaum’s Theorem. Now define a mapping v by setting
true if Z ∈ M
v(Z) =
false if Z ∈
/M
Over the last several sections we have verified that such a mapping v meets all the conditions of
a boolean valuation. Since (X ⊃ ⊥) ∈ M , then X ∈
/ M , so v(X) = false, and thus X is not a
tautology.
In fact, a stronger version of completeness can also be shown.
Theorem 12.2 (Strong Completeness) Assume all the axiom schemes given so far, and the
modus ponens rule. Let S be a set of formulas and X be a single formula. If X is a semantic
consequence of S (Definition 3.3), then X has an axiomatic derivation from S, that is, S ` X.
Exercise 12.1 Give a proof for Theorem 12.2.
Notes on Propositional Logic
13
18
Summary of Axiom System
Our axioms have been presented over several sections. Here is the whole system in one place. First,
our rule of derivation.
Rule of Derivation, Modus Ponens
X
X⊃Y
Y
And then our axiom schemes.
⊃–1 Axiom Scheme X ⊃ (Y ⊃ X)
⊃–2 Axiom Scheme (X ⊃ (Y ⊃ Z)) ⊃ ((X ⊃ Y ) ⊃ (X ⊃ Z))
⊥ Axiom Scheme ⊥ ⊃ Z
∧–1 Axiom Scheme (X ∧ Y ) ⊃ X
∧–2 Axiom Scheme (X ∧ Y ) ⊃ Y
∧–3 Axiom Scheme X ⊃ (Y ⊃ (X ∧ Y ))
∨–1 Axiom Scheme X ⊃ (X ∨ Y )
∨–2 Axiom Scheme Y ⊃ (X ∨ Y )
∨–3 Axiom Scheme (X ⊃ ⊥) ⊃ ((Y ⊃ ⊥) ⊃ ((X ∨ Y ) ⊃ ⊥)
Double Negation Axiom Scheme ((X ⊃ ⊥) ⊃ ⊥) ⊃ X, or equivalently, ¬¬X ⊃ X
Exercise 13.1 We did not consider equivalence, ≡, as a basic connective, but we could have. We
could also have considered the Sheffer stroke connective (also known as NAND), ↑, or the joint
denial connective (also known as NOR), ↓. Here is how they behave semantically—that is, here are
the boolean valuation conditions for them.
true
true
false
false
true
false
true
false
≡
true
false
false
true
↑
true
true
true
false
↓
false
false
false
true
1. Invent appropriate axiom schemes for ≡ and show the completeness proof extends to incorporate them. That is, one can prove completeness where formulas are allowed to contain ≡
as a connective.
2. Do the same for ↑.
3. Do the same for ↓.