Title: Classical Logic
1Classical Logic
- Lecture Notes for SWE 623
- by
- Duminda Wijesekera
2Propositional and Predicate Logic
- Propositional Logic
- The study of statements and their connectivity
structure. - Predicate Logic
- The study of individuals and their properties.
- Study syntax and semantics for both.
- Propositional logic more abstract and hence less
detailed than predicate logic.
3Propositional Logic Syntax
- A collection of atomic propositional symbols.
- Say A ai 0 lt i . A special atom __ for
contradiction - A collection of logical connectives.
- (and) , (or) v, ( not ) ? , (implies) gt
- Inductively define propositions as
- If X,Y are propositions, so are
- X Y, X v Y, X gt Y, ? X.
- Examples
- a1a2, (a gta2)v(a3(? a4)) are propositions.
4Propositional Logic Semantics
- A model M of a propositional language consists of
- a collection of atoms, say B bi 0 lt i ,
where __ is excluded from B, and - a partial mapping M from A ai 0 lt i to B
bi 0 lt i . - If M(ai) e B, we say that ai is true in M. We
write ai is true in M as M ai. (Read M
satisfies ai). - is referred to as the satisfaction relation.
5Propositional Semantics Continued
- Extend M, and therefore the satisfaction relation
to all propositions using the following inductive
definition - M X Y iff M X and M Y.
- M X v Y iff M X or M Y.
- M X gt Y if M X then M Y.
- M ? X, if it is not the case that M X.
- Notice usage of truth tables
6Propositional Logic Example
- B a1, a3 where M given as M(a1) a1 and
M(a2) a2 has the following properties. - M a1
- M a1 a3
- M ? a2
- M a2 gt a4
- M does not satisfy the following propositions.
- M a4
- M a1 gt a4
-
7Propositional Logic Proofs
- What formulas hold in all models ?
- I.e. can we check if a given proposition is true
in all models without going through all possible
models? - Need proofs to answer this question.
- We use Natural Deduction proofs.
- Recommended Read Ch 2 of Logic and Computation
by L.C. Paulson.
8Natural Deduction for Prop. Logic
- Proofs are trees of formulae made by applying
inference rules. - An inference rule is of the form
- A1 An
- B
- Here A1 .. An are said to be premises (or
antecedents) of the rule, and B is said to be the
conclusion (consequent) of the rule.
9Natural Deduction for Prop. Logic
- Hence a proofs is a trees whose
- Root is the theorem to be proved,
- Branches are rules, and
- Leaves are the assumptions (axioms) of the proof.
- Example
- A1 A2 A3 C1 C2 ? Assumptions
- B1 B2 ? Applications of rules
- D ? Theorem being proved
- There are introduction and elimination rules for
each connective in Natural Deduction proof
systems.
10Rules for Conjunction
- Introduction
- A B
- A B
- Elimination
- A B A B
- A B
11Rules for Disjunction
- Introduction
- A B
- A v B A v B
- Elimination
- A B
- A v B C C
- C
- X denotes discharged assumption X.
12Rules for Implication
- Introduction
- A
- B
- A gt B
- Elimination (Modus Ponens)
- A gt B A
- B
13Rules for Negation
- ? B interpreted as ( B gt __). Hence we get the
following rules from those of implication. - ? Introduction ? Elimination
- B ? B B
- __
__ - ________
- ? B
- Special Contradiction Rule ? B
- __
- __________
- B
-
14Propositional Proofs Examples
- Prove ( A B ) gt (A v B)
- Notice
- The outermost connective is gt. Hence, the last
step of the proof must be an implication
introduction. - That means, we must assume ( A B ) and prove
(A v B), and then discharge the assumption by
using gt introduction rule. - In order to prove (A v B) from ( A B ), we must
use v introduction, and hence must prove either
A or B from ( A B ). - This plan forms a skeleton of a proof.
15Prop. Proof Example Continued
- Prove ( A B ) gt (A v B)
- A B
- A elimination
- A v B v introduction
- ( A B ) gt (A v B) gt introduction
- Proofs are analyzed backwards, I.e. start
unraveling the logical structure of the
conclusion and work backwards to the assumptions.
Draw out a plan based on your analysis and write
down the formal proof.
16Derived Rules
- These are rules derived from other rules.
- Example
- A B
- B A
- Here is the derivation
- A B B A
- B A elimination
- B A introduction
17Soundness and Completeness
- A rule A1 An is said to be sound if for every
- B
- model in which all of A1 An are true, then so
is B. I.e. if M A1 , , M An, then M
B. - A collection of rules are sound if all rules in
the collection is sound. - A collection of rules is complete if M A for
all models M, then A is provable. I.e. there is a
proof of A using the given set of rules. (Denoted
R-- A ) where R is the set of rules.
18Predicate Logic
- Language to describe properties of individuals.
- Thus, syntax is able to describe individuals,
their properties (relationships) and functions. - These are to be thought of as names of
individuals, properties (relationships) and
functions. - Models are incarnations of these individuals,
properties (relationships) and functions. - More detailed than propositional logic.
19Predicate Logic Syntax
- A collection of constants say ci i gt 0 .
- Constants are names for individuals. E.g. 0, 1.
- Note not all individuals in a model have names.
- A collection of variables say xi i gt 0 .
- Needed to generically refer to individuals.
- Think of them as standing in place of pronouns
like it, she. - A collection of function symbols- say fi i gt
0 . - May be of different arities, and may be typed.
E.g. (x,y) - A collection of predicate symbols- say pi i
gt 0 . - May be of different arities.
- Encodes properties of individuals. E.g. prime(x).
20Predicate LogicRecursive Definition of Terms
- Every variable is a term.
- Every constant is a term.
- If fi is an n-ary function symbol and t1, .., tn
are terms, then fi(t1, .., tn) is a term. - We use ti i lt0 for the collection of terms.
- Examples
- f(x, g(2, y)) is a term, where f, g are function
symbols and x, y are variables. - ( x, (3,y)) is a term in arithmetic usually
written as x (3y)
21Recursive Definition of Formulas
- If pi is an n-ary predicate symbol and t1, .., tn
are terms, then pi(t1, .., tn ) is an atomic
formula. - If A and B are formulas, then so are
- A B, A v B, ? A, A gt B.
- ? xi A(xi), ? xi A(xi), where xi is a variable.
- ?, ? are referred to as the universal and
existential quantifier, respectively. - A formula that does not have either quantifier is
said to be a quantifier free.
22Free and bound Variables
- In ? x A(x), the variable x is said to be bound
meaning the name x plays no significant role.
(compare with he, she, it) - A variable x occurs bound in a formula if ?x or
?x is a part of it. More precisely, x occurs
bound in - ?y A(y) or ?y A(y) if x and y are the same
variable. - ? A if x occurs bound in A.
- A B, A v B, A gt B if x occurs bound in either
A or B.
23Substitutions
- If A is a formula, t is a term and x is a
variable, then At/x is the formula obtained by
substituting t for x in A. - At1/x1, tn/xn is the formula resulting in
simultaneously substituting x1, xn by t1, tn. - Note Simultaneous substitution Q(x,y)x/y,y/x
yields Q(y,x) but iterated substitution
Q(x,y)x/yy/x yields Q(y,y).
24Substituting Terms for Variables
- In At/x, the free variables of t stand the
danger of becoming bound in A. Hence, need a
precise definition. - If x is y then ?y A(y) x/y is ?y A(y). If not
let z be a fresh variable (I.e. not in t, x) then
(?y A(y) )t/x is ?z (A(z/y) t/x). - Similar definition for ?y A(y).
- Examples
- ?y (y 1) y/y is ?y (y 1). Here x is y and t
is x. - ?y (y1 gt x) 2yx/x is ?z ((z1gtx)2yx/x I.e.
?z (z1gt2yx). Here t is (2yx).
25Substituting Terms Continued
- (? A )t/x is ? (A t/x)
- (A B) t/x is (At/x Bt/x)
- (A v B) t/x is (At/x v Bt/x)
- (A gt B) t/x is (At/x gt Bt/x)
- Pi(t1, .. tn) t/x is Pi(t1t/x, .. tnt/x)
for predicate symbol Pi.
26Predicate Logic Semantics
- A model consists of
- A set (of individuals), say A ai i gt 0 .
- A set of total functions Fn fni i gt 0 on
A. - I.e. fni(aj) is some ak for every aj.
- A set of predicates Pr pri i gt 0 over A.
- Do not have to be total.
- Can have many arities.
27Interpreting Syntax
- Mapping from Syntax to Semantics
- A mapping mCons ci I gt 0 to Aai i gt
0. - Need not be ONTO A. I.e. there could be unnamed
individuals in the semantic domain. - A mapping mFun fi I gt 0 to Fnfni i gt
0. - Need not be onto. I.e. there could be unnamed
functions in the semantic domain. - A mapping mPred pi I gt 0 to Prpri i gt
0. - Need not be onto. I.e. there could be unnamed
predicates in the semantic domain.
28Interpreting Formulas naming
- We do not interpret formulas with free variables.
- In order to interpret quantified formulas, need
to expand the syntax by adding a constant in the
syntax for each unnamed individual in the model. - I.e. for each ai for which there is no cj such
that Fn(cj ) is ai, add a new constant Cai to the
syntax. - Now expand the definition of terms to include
these new constants. Let newT Nti i gt 0
be the collection of new terms so defined.
29Interpreting Formulas
- Let M be a model. We define M F for every
quantified formula as follows. - For every n-ary predicate symbol pi , and every
sequence of new variable free terms Nt1, Ntn
define M pi(Nt1, Ntn ) if and only if
mPred(pi)(Nt1, Ntn ). - I.e. pi(Nt1, Ntn ) is true in M if and only if
its image under the map mPred holds with
parameters Nt1, Ntn .
30Interpreting Formulas Continued
- For every formula A , M ?y A(y) if and only if
M A(Nti) for every Nti e newT. - For every formula A , M ? y A(y) if and only
if there is some Nti e newT satisfying M
A(Nti). - M A B if M A and M B .
- M A v B if M A or M B.
- M A gt B if when M A then M B.
- M ? A if it is not the case that M A.
31Proof Rules for Predicate Logic
- Proof rules of introduction and elimination of ,
v, gt, and ?. - New rules required for introduction and
elimination of ? and ? quantifiers.
32Proof Rules for ?
- ? Introduction
- A(x) provided x is not free in the
- ?x A(x) assumptions of A
- ? Elimination
- ?x A(x)
- At/x
33Proof Rules for ?
- ? Introduction
- At/x
- ?xA(x)
- ? Elimination
- A provided x is not free
- ?xA(x) B in B nor in the
- B assumptions of B apart from A
34An Example Proof
- Prove ((?x A(x)) B) gt (?x (A(x) B)) provided
that x is not free in B. - Plan
- Since outer connective is gt, need to use gt
introduction at the last step. Hence can use
(?x A(x)) B as an assumption for the steps
above. - Now in order to get ?x (A(x) B) using ?
introduction, we need to get At/x ) B. - Can use elimination to (?x A(x)) B and obtain
B - Can use ?x elimination to get At/x.
35Example Proof
- ?x A(x) B ?x A(x) B
- ?x A(x) A(t/x) B
- A(t/x) B
- ?x(A(x) B
- The other direction of the proof appears in the
handout page 32.
36Induction Rule
- A(x)
- A0/x Ax1/x
- A(x)
- Proviso x is not free in the assumptions of
Ax1/x apart from A(x).
37Equality Reasoning
- Rules for equality
- Reflexivity axiom t t.
- Symmetry rule t u .
- u t
- Transitivity rule s t t u .
- s u
- Congruence laws for each function and predicate
symbol, or substitution rules.
38Equality Reasoning Continued
- Congruence Law for functions
- t1 u1 . tn un
- f(t1, ., tn) f(u1, .,un)
- Congruence Law for Predicates
- t1 u1 . tn un
- p(t1, ., tn) ? p(u1, .,un)
- Substitution Rule
- t u
- St/x Su/x
39Equality Reasoning An Example
- This example is from Page 37, of the Logic
handout. - ?x f(x,x) x
- f(g(z), g(z)) g(z)
- p(f(g(z), g(z)) ? p(g(z))
- ? p(f(g(z), g(z)) ? ? p(g(z))
40Logic Suggested Exercises
- Go thorough all proofs and suggested exercises in
the handout. - Take the midterm and final exams from last
semester and attempt the proofs. - Go through the second homework from last
semester. - Reference Chapter 2 of Logic and
Computation by L.C. Paulson.