The Nature of Natural Numbers - Peano Axioms and Arithmetics: A Formal Development in PowerEpsilon
|
|
- Jessie Ray
- 6 years ago
- Views:
Transcription
1 The Nature of Natural Numbers - Peano Axioms and Arithmetics: A Formal Development in PowerEpsilon Ming-Yuan Zhu CoreTek Systems, Inc. 11 th Floor, 1109, CEC Building 6 South Zhongguancun Street Beijing People s Republic of China September 25, 2012 This article is dedicated to the 87 th birthday of my father. He has contributed his whole life to the development of science and technology of China. He will always live in my memory for his dedication, courage, spirit and love. Abstract PowerEpsilon is my own development of mathematical theorem proof development system. It belongs to a large family of computer-based tools whose purpose is to help in proving theorems, namely, Automath, COQ, Nqthm, Mizar, LCF, Nuprl, Isabelle, Lego, HOL, PVS and ACL2. In this paper, we will present a formal investigation of natural numbers, Peano axioms and arithmetics using PowerEpsilon. 1 Introduction We all know about natural numbers. We are using natural numbers everyday for counting and ordering. However what is the nature of natural numbers and how the natural numbers are formed? These questions are concerned by mathematicians for several hundred years. Properties of the natural numbers related to divisibility, such as the distribution of prime numbers, are studied in number theory. Problems concerning counting and ordering, such as partition enumeration, are studied in combinatorics. Historically, the precise mathematical definition of the natural numbers developed with some difficulty. The Peano axioms state conditions that any successful definition must satisfy. Certain constructions show that, given set theory, models of the Peano postulates must exist. In this paper, we will provide a deep investigation of formal definition of natural numbers in type theory 1. PowerEpsilon, currently developed by author, is a strongly-typed polymorphic functional programming language based on Martin-Löf s type theory [10, 8, 9] and the calculus of constructions [5]. In PowerEpsilon, the concept of limit of type universe hierarchies and a scheme for inductive define types are introduced. The system can be used as both a programming language with a very rich set of data structures and a metalanguage for formalizing constructive mathematics. The system has been implemented using the software development system AUTOSTAR constructed by author [12]. PowerEpsilon is a proof checker much similar to other mechanical proof checkers, such as ACL2[2], COQ[4, 1], LCF[6], Isabelle[11], Nuprl[3] and HOL[7], which are completely formal user-controlled systems. However, PowerEpsilon is more powerful than LCF and Nuprl, in which the equality and induction rules for arbitrary inductive types are definable. 1 This work is supported in part by the TRUSTIE Project of Hi-Tech Research and Development Program of China (863 Program) under Grant No. 2007AA010304, by the Open Fund of the State Key Laboratory of Software Development Environment under Grant No. SKLSDE-2010KF-0X, Beijing University of Aeronautics and Astronautics, and by the National Basic Research Program of China (973 Program) under Grant No. 2005CB
2 2 Peano Axioms 2.1 History of Peano Axioms In mathematical logic, the Peano axioms, also known as the Dedekind-Peano axioms or the Peano postulates, are a set of axioms for the natural numbers presented by the 19th century Italian mathematician Giuseppe Peano. These axioms have been used nearly unchanged in a number of metamathematical investigations, including research into fundamental questions of consistency and completeness of number theory. The need for formalism in arithmetic was not well appreciated until the work of Hermann Grassmann, who showed in the 1860s that many facts in arithmetic could be derived from more basic facts about the successor operation and induction. In 1881, Charles Sanders Peirce provided an axiomatization of natural-number arithmetic. In 1888, Richard Dedekind proposed a collection of axioms about the numbers, and in 1889 Peano published a more precisely formulated version of them as a collection of axioms in his book, The principles of arithmetic presented by a new method (Latin: Arithmetices principia, nova methodo exposita). The Peano axioms contain three types of statements. The first axiom asserts the existence of at least one member of the set number. The next four are general statements about equality; in modern treatments these are often considered axioms of the underlying logic. The next three axioms are first-order statements about natural numbers expressing the fundamental properties of the successor operation. The ninth, final axiom is a second order statement of the principle of mathematical induction over the natural numbers. A weaker first-order system called Peano arithmetic is obtained by explicitly adding the addition and multiplication operation symbols and replacing the second-order induction axiom with a first-order axiom schema. Peano formulated his axioms, the language of mathematical logic was in its infancy. The system of logical notation he created to present the axioms did not prove to be popular, although it was the genesis of the modern notation for set membership (, which is from Peano s ϵ) and implication (, which is from Peano s reversed C.) Peano maintained a clear distinction between mathematical and logical symbols, which was not yet common in mathematics; such a separation had first been introduced in the Begriffsschrift by Gottlob Frege, published in Peano was unaware of Frege s work and independently recreated his logical apparatus based on the work of Boole and Schröder. 2.2 Formulation of Peano Axioms The Peano axioms define the arithmetical properties of natural numbers, usually represented as a set N or The signature (a formal language s non-logical symbols) for the axioms includes a constant symbol 0 and a unary function symbol S. The constant 0 is assumed to be a natural number: 1. 0 is a natural number. The next four axioms describe the equality relation. 2. For every natural number x, x = x. That is, equality is reflexive. 3. For all natural numbers x and y, if x = y, then y = x. That is, equality is symmetric. 4. For all natural numbers x, y and z, if x = y and y = z, then x = z. That is, equality is transitive. 5. For all a and b, if a is a natural number and a = b, then b is also a natural number. That is, the natural numbers are closed under equality. The remaining axioms define the arithmetical properties of the natural numbers. The naturals are assumed to be closed under a single-valued successor function S. 6. For every natural number n, S(n) is a natural number. Peano s original formulation of the axioms used 1 instead of 0 as the first natural number. This choice is arbitrary, as axiom 1 does not endow the constant 0 with any additional properties. However, because 0 is the additive identity in arithmetic, most modern formulations of the Peano axioms start from 0. Axioms 1 and 6 define a unary representation of the natural numbers: the number 1 is S(0), 2 is S(S(0)) (which is also S(1)), and, in general, any natural number n is S n (0). The next two axioms define the properties of this representation. 7. For every natural number n, S(n) = 0 is False. That is, there is no natural number whose successor is For all natural numbers m and n, if S(m) = S(n), then m = n. That is, S is an injection. Axioms 1, 6, 7 and 8 imply that the set of natural numbers is infinite, because it contains at least the infinite subset {0, S(0), S(S(0)),...}, each element of which differs from the rest. To show that every natural number is included in this set requires an additional axiom, which is sometimes called the axiom of induction. This axiom provides a method for reasoning about the set of all natural numbers. 2
3 9. If K is a set such that: 0 is in K, and for every natural number n, if n is in K, then S(n) is in K, then K contains every natural number. The induction axiom is sometimes stated in the following form: 9. If ϕ is a unary predicate such that: ϕ(0) is true, and for every natural number n, if ϕ(n) is true, then ϕ(s(n)) is true, then ϕ(n) is true for every natural number n. In Peano s original formulation, the induction axiom is a second-order axiom. It is now common to replace this secondorder principle with a weaker first-order induction scheme. There are important differences between the second-order and first-order formulations, as discussed in the section below. Without the axiom of induction, the remaining Peano axioms give a theory equivalent to Robinson arithmetic, which can be expressed without second-order logic. 2.3 Natural Number in Type Theory Definition of Nat Inductive Type Nat def Nat =!(T : Prop) [T -> [T -> T] -> T]; Constructors of Nat def OO = \(T : Prop, x : T, y : [T -> T]) x; def SS = \(t : T : Prop, x : T, y : [T T, x, y)); Canonical Functions of Nat def IS_ZERO Bool, TT, \(x : Bool) FF); def ADD = \(n1 : n2 : n2, SS); def TIMES = \(n1 : n2 : n2)); def EXP = \(n1 : n2 n2)); def EQUAL = \(n1 : n2 : Nat) 3
4 n2), n2)))); def LESS = \(n1 : n2 @(IS_ZERO, n2), n2)))); def LESSEQ = \(n1 : n2 n2)))); def NLE = \(n1 : n2 n1, n1, n2)); def NGE = \(n1 : n2 : n2, n1); Predecessor Function Inductive Definition of Predecessor Function def T = \(x : y : Nat) x; def F = \(x : y : Nat) y; def PP [[Nat -> Nat -> Nat] -> Nat], \(u : [Nat -> Nat -> OO, OO), \(p : [[Nat -> Nat -> Nat] -> Nat], v : [Nat -> Nat @(p, T)), F); 4
5 Predecessor Function Defined by Pattern Matching dec PP : [Nat -> Nat]; def PP = pattern n is OO => m) => m end; Strong Specification of Predecessor Function def PredSpec =?(m n, m, m))); def MkPredSpec = \(n : m : n, m, m)))) <m, p>; dec PRED n); dec PredLem1 OO); def PredLem1 = let n = OO, m = OO, p n), q m) @(Equal, n, m, @(Equal, n, m, OO), p, q))); dec PredLem2 : [@(PredSpec, n))]; def PredLem2 = \(H n)) let m H), p H) 5
6 n, m, @(SS, n)), p, n, m, OO))) let P1 n, OO), P2 m, OO) in let p1 P1, P2, q), p2 P1, P2, q) in let u1 m, OO, p2), u2 n, OO, m, p1, u1) in let Q = \(z z)) in let u3 Q, n), m)), u3)), \(q m))) let Q = \(z z)) in let u Q, @(SS, @(SS, m))), u))); def PRED PredSpec, PredLem1, PredLem2); def n)); Properties of PP dec @(SS, n)), n); def @(SS, n))); dec n)); def PPSSEqLem2 = 6
7 n)))); Induction Rules dec NatInduct :!(P : [Nat -> Prop]) [@(P, OO) ->!(u : Nat) [@(P, u))] n)]; def NatInduct = \(P : [Nat -> Prop]) \(a OO)) \(f :!(u : Nat) [@(P, u))]) \(*n *n), *n)); dec PatternMatch :!(P : [Nat -> Prop]) [@(P, OO) ->!(p p)) n)]; def PatternMatch = \(P : [Nat -> Prop]) \(a OO), b :!(p p))) \(*n *n), a, \(x *n)); 3 Peano Arithmetic The Peano axioms can be augmented with the operations of addition and multiplication and the usual total (linear) ordering on N. The respective functions and relations are constructed in second-order logic, and are shown to be unique using the Peano axioms. 3.1 Addition Addition is the function +: N N N (written in the usual infix notation, mapping elements of N to other elements of N ), defined recursively as: For example, a + 0 = a a + S(b) = S(a + b) a + 1 = a + S(0) = S(a + 0) = S(a). The structure (N, +) is a commutative semigroup with identity element 0. (N, +) is also a cancellative magma, and thus embeddable in a group. The smallest group embedding N is the integers. 7
8 3.1.1 Basic Properties of Addition 0 + n = n dec OO, n), n); (n + 1) + m = (n + m) + 1 dec AddLLem1 :!(m : n @(SS, n, m))); n + 0 = n dec n, OO), n); m + (n + 1) + m = (m + n) + 1 dec AddRLem1 :!(m : n n)), m, n))); Proofs of AddLLem0 The proof of AddLLem0 is conducted by induction on n. dec OO, OO), OO); def OO, OO)); dec AddL0IndLem : let OO, n), n) in [@(P, n))]; def AddL0IndLem = let OO, n), n) in \(n : p n)) @(ADD, OO, n), 8
9 @(AddRLem1, OO, n), n, SS, p)); def AddLLem0 = let OO, n), n) P, AddL0BasLem, AddL0IndLem); A simplified proof using reflexivity of ADD directly. def OO, n)); Proofs of AddRLem0 The proof of AddRLem0 is conducted by induction on n. dec OO, OO), OO); def OO, OO)); dec AddR0IndLem : let n, OO), n) in [@(P, n))]; def AddR0IndLem = let n, OO), n) in \(n : p n, n, OO), n, SS, p)); def AddRLem0 = let n, OO), n) P, AddR0BasLem, AddR0IndLem); Proofs of AddLLem1 The proof of AddLLem1 is conducted by induction on m. dec @(SS, n, OO))); def AddL1BasLem = 9
10 @(Tran_Eq, n), n), n, n, OO), n)))); dec AddL1IndLem : let P = \(m @(SS, n, m))) in [@(P, m))]; def AddL1IndLem = let P = \(m @(SS, n, m))) in \(m : p m), n @(SS, @(ADD, m))), @(SS, n, m)), n, m)), n, n, m)))); def AddLLem1 = let P = \(m @(SS, n, m))) P, AddL1BasLem, AddL1IndLem); Proofs of AddRLem1 The proof of AddRLem1 is conducted by induction on m. dec n)), OO, n))); 10
11 def n))); dec AddR1IndLem : let P = \(m n)), m, n))) in [@(P, m))]; def AddR1IndLem = let P = \(m n)), m, n))) in \(m : p m), n @(SS, n)), @(SS, n)), m, n)), m), @(SS, m, n, m)))); def AddRLem1 = let P = \(m n)), m, n))) P, AddR1BasLem, AddR1IndLem); Commutativity of Addition a + b = b + c dec AddCommLem :!(n : m n, m, n)); dec OO, m, OO)); def OO, n), 11
12 n, n), n, OO), n))); dec AddCommLem2 : let n, m, n)) in [@(P, n))]; def AddCommLem2 = let n, m, n)) in \(p n)) \(m @(SS, m, n, m, n), m)), @(ADD, m, m, n))); def AddCommLem = let n, m, n)) P, AddCommLem1, AddCommLem2); Associativity of Addition (a + b) + c = a + (b + c) dec AddAssoLem :!(m : n : e @(ADD, m, n), n, e))); dec AssoBasLem :!(n : e @(ADD, OO, n), n, e))); def AssoBaseLem = \(n : e @(ADD, OO, n), e), 12
13 @(ADD, n, OO, n), n, \(m : m, n)), n, n, e)))); dec AssoIndLem : let P = \(m : Nat)!(n : e @(ADD, m, n), n, e))) in [@(P, m))]; def AssoIndLem = let P = \(m : Nat)!(n : e @(ADD, m, n), n, e))) in \(m : p m), n : e m), @(ADD, m, m), @(ADD, m, @(ADD, m, @(SS, m, n)), \(m : m, n, @(ADD, m, n), n, e)), @(SS, n, e), m))); def AddAssoLem = let P = \(m : Nat)!(n : e @(ADD, m, n), n, e))) P, AssoBasLem, AssoIndLem); a + (b + c) = b + (a + c) dec AddAssComLem : 13
14 !(m : n : e n, m, e))); def AddAssComLem = \(m : n : e : Nat) let p1 m, n, e), @(ADD, m, n), n, e)), p1), p3 m, n), m, n, m), \(z : z, e), p3), p5 n, m, e), m, n, m), m, e)), p2, p4, p5) in p6; Identity of Addition OO is an identity element for ADD. dec OO, n), n); def AddUnitLLem = AddLLem0; dec n, OO), n); def AddUnitRLem = AddRLem0; Nat with ADD as a Semi-Group def SMGProof = \(c : a : b @(ADD, a, b), b, a, b, c)); def NatSMG < ADD>, SMGProof); Nat with ADD as a Monoi def MOProof 14
15 @(Ass_ax, OO, ADD), \(c : a : b @(ADD, a, b), b, a, @(ADD, n, OO, n), n))); def NatMonoi < OO, ADD>, MOProof); Nat with ADD as a Commutative Monoi def CMOProof = let P1 ADD), P2 ADD), P3 OO, ADD) in let p1 = \(c : a : b @(ADD, a, b), b, a, b, c)), p2 = AddCommLem, @(ADD, n, OO, n), n)) P1, P2), P1, P2, p1, p2)); def NatCMonoi OO, ADD, CMOProof); 3.2 Multiplication Given addition, multiplication is the function : N N N defined recursively as: a 0 = 0 a S(b) = a + S(a b) It is easy to see that 1 is the multiplicative identity: a 1 = a S(0) = a + (a 0) = a + 0 = a Moreover, multiplication distributes over addition: a (b + c) = (a b) + (a c). Thus, (N, +, 0,, 1) is a commutative semi-ring. 15
16 3.2.1 Basic Properties of Multiplication 0 n = 0 dec OO, n), OO); (n + 1) m = m + (n m) dec TimesLLem1 :!(m : n @(SS, n), n, m))); n 0 = 0 dec n, OO), OO); m (n + 1) = m + (m n) dec TimesRLem1 :!(m : n m, n))); Proofs of TimesLLem0 def OO, n)); Proofs of TimesLLem1 dec @(SS, n), n, OO))); def TimesLBasLem1 = let n)), n, OO), OO, \(z : OO, z), 16
17 @(TimesRLem0, n)), n, OO)), OO, @(SS, n), OO), n, OO)), p1, p3); dec TimesLIndLem1 : let P = \(m @(SS, n), n, m))) in [@(P, m))]; def TimesLIndLem1 = let P = \(m @(SS, n), n, m))) in \(m : p m), n : Nat) let n), m), @(SS, n), m), n), @(SS, n), n, m)), \(z n, n)), @(SS, m)), n), @(SS, n, m)))), p1, p2, p3), p5 n, n, m)), n, n, m))), SS, p5), @(SS, m)), n, m)))), p4, p6), p8 n, m), n, m)), p8), n, m)), \(z m, z)), 17
18 p9), @(SS, m)), m)))), p7, pa) in pb; def TimesLLem1 = let P = \(m @(SS, n), n, m))) P, TimesLBasLem1, TimesLIndLem1); Proofs of TimesRLem0 dec OO, OO), OO); def OO, OO)); dec TimesRIndLem0 : let n, OO), OO) in [@(P, n))]; def TimesRIndLem0 = let n, OO), OO) in \(p n)) let p1 OO, n), @(SS, n), n, OO)), OO, p1, p) in p2; def TimesRLem0 = let n, OO), OO) P, TimesRBasLem0, TimesRIndLem0); Proofs of TimesRLem1 dec OO, n))); 18
19 def TimesRBasLem1 = let n)), OO, n), OO, \(z : OO, n)), OO, n)), OO, n)), OO, n)), p1, p3); dec TimesRIndLem1 : let P = \(m m, n))) in [@(P, m))]; def TimesRIndLem1 = let P = \(m m, n))) in \(m : p m), n : Nat) let n), m), n)), n), m, n)), \(z n, n)), @(SS, n)), n))), n)))), m, n)))), p1, p2, p3), p5 n, m, n)), m, m, n))), SS, p5), @(SS, n)), m, n)))), p4, 19
20 p6), p8 n, m), @(SS, m), m, n)), p8), m), n), \(z m, z)), p9), @(SS, n)), @(SS, m), n))), p7, pa) in pb; def TimesRLem1 = let P = \(m m, n))) P, TimesRBasLem1, TimesRIndLem1); Commutativity of Addition dec TimesCommLem :!(n : m n, m, n)); dec OO, m, OO)); def OO, n), n, n), n, OO), n))); dec TimesCommLem2 : let n, m, n)) in [@(P, n))]; def TimesCommLem2 = let P = 20
21 n, m, n)) in \(p n)) \(m @(SS, n), n, m, n, m, @(TIMES, m, m, n))); def TimesCommLem = let n, m, n)) P, TimesCommLem1, TimesCommLem2) Associativity of Multiplication (a b) c = a (b c) dec TimesAssoLem :!(m : n : e @(TIMES, m, n), n, e))); dec TAssoBasLem :!(n : e @(TIMES, OO, n), n, e))); def TAssoBaseLem = \(n : e @(TIMES, OO, n), OO, OO, n), OO, \(m : m, n)), n, n, e)))); dec TAssoIndLem : let P = \(m : Nat)!(n : e @(TIMES, m, n), n, e))) in [@(P, m))]; 21
22 def TAssoIndLem = let P = \(m : Nat)!(n : e @(TIMES, m, n), n, e))) in \(m : p m), n : e : Nat) let u1 n, m), @(SS, m), m, n)), \(z : z, e), u1), u3 e, m, n)), m), m, m, n), e)), u2, u3), m, n), e)), m), m, @(TIMES, m, n), n, e)), u4, u5) in let Q = \(z m, n), n, n, e))) in let u7 n, m, n), n, e)))), m), @(TIMES, m, n), n, n, e)), u6, u7), n, n, e)), m), n, n, n, e))), u8, u9) in ua; 22
23 def TimesAssoLem = let P = \(m : Nat)!(n : e @(TIMES, m, n), n, e))) P, TAssoBasLem, TAssoIndLem); Identity of OO) is an identity element for TIMES. dec @(SS, OO), n), n); def TimesUnitLLem = let p n, OO) in let q n, @(SS, OO), OO, n)), n, p, q); dec OO)), n); def TimesUnitRLem = let p1 OO)), p2 OO)), OO), n), n, p1, p2); Distribution of Multiplication over Addition l (m + n) = (l m) + (l n) dec DistrLLem :!(l : m : n l, l, n))); dec DistrLLem1 :!(m : n : Nat) 23
24 OO, OO, n))); def DistrLLem1 = \(m : n : Nat) let m, n))), @(TIMES, OO, OO, m, OO, OO, n)), p1, p2); dec DistrLLem2 : let P = \(l : Nat)!(m : n l, l, n))) in!(l : Nat) [@(P, l))]; dec AddTimesDistLem1 :!(l : m : n @(ADD, l, l, l, n)))); def AddTimesDistLem1 = \(l : m : n : Nat) let p1 l, l, n))), p2 l, l, n)), @(ADD, l, l, n, l, l, n))), p2), @(TIMES, l, l, l, n)), \(z : m, z), p3), @(ADD, l, l, @(TIMES, l, l, m, l, l, n))), p1, p4), p6 l, m)), l, m), n), \(z : l, n)), p6), p8 24
25 l, @(TIMES, l, m), l, n)), \(z : m, z), p7), l, m), l, n)), l, m), l, l, n))), \(z : m, z), p9), @(ADD, l, l, m, l, l, l, m), l, m, l, l, n)))), p5, p8, pa), pc l, l, n))), @(ADD, l, l, m, l, l, n)))), pc), @(ADD, l, l, m, l, l, l, n))), pb, pd) in pe; dec AddTimesDistLem2 :!(l : m : n @(ADD, l, @(SS, l), n))); dec AddEqLem :!(a1 : b1 : a2 : b2 : Nat) [@(Equal, a1, b1) a2, a1, b1, b2))]; def AddEqLem = \(a1 : b1 : a2 : b2 : Nat) \(p1 a1, b1), p2 a2, b2)) let Q = \(z a1, z, a2)) in let q Q, a1, a2))) in 25
26 let P = \(z a1, b1, z)) P, q); def AddTimesDistLem2 = \(l : m : n : Nat) let p1 m, l), p2 n, l), @(SS, l), l, m)), p1), @(SS, l), l, n)), l), l), n), p3, p4); def DistrLLem2 = let P = \(l : Nat)!(m : n l, l, n))) in \(l : p l), m : n : Nat) let m, n), l) in let Q = \(z @(ADD, m, m, n), z)) in let p2 m, @(ADD, m, m, n))))), @(SS, m, l, l, n))), p1, p2), p4 l, m, n), p5 l, m, n), @(SS, l, l, @(SS, l), n)), p3, p4, p5) in p6; def DistrLLem = let P = \(l : Nat)!(m : n l, l, n))) P, DistrLLem1, 26
27 DistrLLem2); (m + n) l = (m l) + (n l) dec DistrRLem :!(l : m : n @(ADD, m, m, n, l))); dec AddLREqLem :!(a1 : b1 : a2 : b2 : Nat) [@(Equal, a1, a2) b1, a1, a2, b2))]; def AddLREqLem = \(a1 : b1 : a2 : b2 : Nat) \(p1 a1, a2), p2 b1, b2)) let Q1 = \(a : Nat)!(b a1, a, b)) in let q Q1, \(b a1, b))) in let Q2 = \(b a1, a2, b)) b1)); def DistrRLem = \(l : m : n : Nat) let p l, m, n) in let m, n), l), @(ADD, m, n), l, l, n)), q1, p), q3 l, m), q4 l, n), l, l, m, n, l), q3, @(ADD, m, l, m, n, l)), q2, q5); 27
28 3.2.6 Nat with TIMES as a Monoi def II, TIMES), \(c : a : b @(TIMES, a, b), b, a, @(TIMES, n, II, n), n))); def NatTimesMonoi < II, TIMES>, TMOProof); Nat with ADD and TIMES as a Semi-Ring def SMRProof = let P1 OO, ADD), P2 II, TIMES), P3 ADD, TIMES), P4 OO, TIMES) in let p1 = CMOProof, p2 = TMOProof, p3 = \(a : b : c : Nat) let a, a, c))), @(ADD, a, a, b, c))) in let p1 a, b, c), p2 c, a, b) P1, P2, p1, p2), @(TIMES, OO, n, OO), n)) P3, P4)), P3, P4), 28
29 P3, P4, p3, p4))); def NatSemiRing < OO, II, ADD, TIMES>, SMRProof); 3.3 Equality Two natural numbers are equal if and only if they are exactly the same in every way. This defines a binary relation, equality, marked by the sign of equality = in such a way that the statement x = y means that x and y are equal Equality Defined as Reflexive Relation Definition of NatEq def NatEq = \(n : m : Nat)!(T : [Nat -> Nat -> Prop]) n, n) n, m)]; Production Rule of NatEq dec NatEqN n, n); def NatEqN = \(T : [Nat -> Nat -> Prop]) \(x n, n); Induction Rule of NatEq dec NatEqInduct :!(x : P : [Nat -> Prop]) [@(P, x) ->!(y : Nat) [@(NatEq, y, x) y)]]; def NatEqInduct = \(x : P : [Nat -> Prop]) \(p x)) \(y : Nat) \(q y, x)) let T = \(a : b : Nat) [@(P, b) a)] in let u T, \(a : r a)) r) p); 29
30 3.3.5 Equivalence Properties Reflexive Property of NatEq dec NatEqReflLem n, n); def NatEqReflLem = NatEqN; Symmetrical Property of NatEq dec NatEqSymmLem :!(x : y : Nat) [@(NatEq, x, y) y, x)]; def NatEqSymmLem = \(x : y : Nat) \(H x, y)) let P = \(z : y, z) y, y), x, H); Transitivity Property of NatEq dec NatEqTranLem :!(x : y : z : Nat) [@(NatEq, x, y) y, z) x, z)]; def NatEqTranLem = \(x : y : z : Nat) \(H1 x, y), H2 y, z)) let P = \(w x, w, z)) in let u x, y, z), H1, H2), y, z, x, z, z), u); Successor Lemma for NatEq NatEqSuccLem is inhabited. However, I don t know why it has to be used as a definition in COQ. dec NatEqSuccLem :!(n : m : Nat) [@(NatEq, n, m))]; 30
31 def NatEqSuccLem = \(n : m : Nat) \(H n, m)) let P = \(z z)) n)), n, m, H)); Function Application Lemma for NatEq dec NatEqFunLem :!(f : [Nat -> Nat])!(x : y : Nat) [@(NatEq, x, y))]; def NatEqFunLem = \(f : [Nat -> Nat]) \(x : y : Nat) \(H x, y)) let P = \(z z)) x)), x, y, H)); Equality Negation Lemma for NatEq dec NegNatEqLem :!(x : y : Nat) x, y, x))]; def NegNatEqLem = \(x : y : Nat) x, y))) \(p y, x, p)); Successor Lemma Nat) dec EqNatSuccLem :!(n : m : Nat) [@(Equal, n, m))]; def EqNatSuccLem = 31
32 \(n : m : Nat) \(h n, m)) let P = \(z z)) P, n))); Equivalence of NatEq Nat) dec NatEq2EqNatLem :!(n : m : Nat) [@(NatEq, n, m) n, m)]; def NatEq2EqNatLem = \(n : m : Nat) \(h Nat)); dec EqNat2NatEqLem :!(n : m : Nat) [@(Equal, n, m) n, m)]; def EqNat2NatEqLem = \(n : m : Nat) \(h n, m)) let P = \(z : n, z) n)); 3.4 Inequalities The usual total order relation : N N can be defined as follows, assuming 0 is a natural number: For all a, b N, a b if and only if there exists some c N such that a + c = b. This relation is stable under addition and multiplication: for, if a b, then: and a + c b + c, a c b c. Thus, the structure (N, +,, 1, 0, ) is an ordered semi-ring; because there is no natural number between 0 and 1, it is a discrete ordered semi-ring. The axiom of induction is sometimes stated in the following strong form, making use of the order: For any predicate ϕ, if ϕ(0) is true, and for every n, k N, if k n implies ϕ(k) is true, then ϕ(s(n)) is true, then for every n N, ϕ(n) is true. This form of the induction axiom is a simple consequence of the standard formulation, but is often better suited for reasoning about the order. For example, to show that the naturals are well-orderedevery nonempty subset of N has a least elementone can reason as follows. Let a nonempty X N be given and assume X has no least element. Because 0 is the least element of N, it must be that 0 X. For any n N, suppose for every k n, k X. Then S(n) X, for otherwise it would be the least element of X. Thus, by the strong induction principle, for every n N, n X. Thus, X N =, which contradicts X being a nonempty subset of N. Thus X has a least element. 32
33 3.4.1 Inequality Defined as a Reflexive Relation Inductive Definition of NatLe def NatLe = \(n : m : Nat)!(T : [Nat -> Nat -> Prop]) n, n) ->!(n : m : Nat) [@(T, n, m) m))] n, m)]; Production Rules of NatLe dec NatLeN n, n); def NatLeN = \(T : [Nat -> Nat -> Prop]) \(x n, n), y :!(n : m : Nat) [@(T, n, m) n); dec NatLeS :!(n : m : Nat) [@(NatLe, n, m) m))]; def NatLeS = \(n : m : p n, m)) \(T : [Nat -> Nat -> Prop]) \(x n, n), y :!(n : m : Nat) [@(T, n, m) n, T, x, y)); Conditions for NatLe For all a, b N, a b if and only if there exists some c N such that a + c = b. def NatLeCond1 = \(n : m : Nat) [@(NatLe, n, m) ->?(d : n, d))]; def MkNatLeCond1 = \(n : m : Nat) \(H n, m)) \(d : p n, d))) <d, p>; def NatLeCond2 = \(n : m : Nat) 33
34 [?(d : n, d)) n, m)]; def NatLeCond = \(n : m n, n, m)); dec NatLeCondLem :!(n : m : n, m); dec NatLeCondLem1 :!(n : m : n, m); dec NatLeCondLem11 OO, m); dec NatLeCondLem110 : [@(NatLe, OO, m) -> let d = m OO, d))]; def NatLeCondLem110 = \(m : Nat) \(h OO, m)) let d = OO, d)); def NatLeCondLem11 = \(m : Nat) \(H OO, m)) let d = m in let q m, H) OO, m, H, d, q); dec NatLeCondLem12 : let P n, m) in [@(P, n))]; dec NatLeSSLeLem :!(n : m : Nat) n), m) n, m)]; dec SnNatLeNegEq0Lem :!(n : m : d : Nat) n), m) n, d, OO))]; dec NatAddSSPPEqLem :!(n : d : Nat) d, d)))]; 34
35 dec NatLeCondLem120 : let P n, m) in!(h n), m)) let q n, m, p)) in let d q), r q) in let ds d) m, n), ds)); def NatLtCondLem120 = let P n, m) in \(h n)) \(m : Nat) n), m)) let q n, m, p)) in let d q), r q) in let ds d) in let Q = \(z : m, z) in let u0 n, m, d, p, r), u1 n, d, u0) Q, r); def NatLtCondLem12 = let P n, m) in \(h n)) \(m : Nat) n), m)) let q n, m, p)) in let d q), r q) in let ds d) in let u n, h, m, n), m, p, ds, u); def NatLeCondLem1 = let P n, m) P, NatLeCondLem11, NatLeCondLem12); dec NatLeCondLem2 :!(n : m : n, m); dec nnatleaddnlem :!(n : d : n, d)); def NatLeCondLem2 = \(n : m : Nat) \(p :?(d : n, d))) let d p), q p) in 35
36 let P = \(z : n, z) in let r n, d), q) n, d)); def NatLeCondLem = \(n : m : Nat) let P1 n, m), P2 n, m) in let p1 n, m), p2 n, m) P1, P2, p1, p2); Induction Rule of NatLe NatLeInduct is interpreted as follows: assume that P be a set and y is in P, if for every x, x y then x is in P. dec NatLeInduct :!(y : P : [Nat -> Prop]) [@(P, y) ->!(x : Nat) [@(NatLe, x, y) x)]]; def NatLeInduct = \(*y : P : [Nat -> Prop]) \(h *y)) \(x : Nat) \(p x, *y)) h; def NatLeInduct = \(y : P : [Nat -> Prop]) \(p y)) \(x : Nat) \(q x, y)) let T = \(a : b : Nat) [@(P, b) a)] in let u T, \(a : p a)) p, \(a : *b : h1 a, *b), h2)) p); Reflexive and Transitive Property NatLe Reflexivity of NatLe n n dec NatLeReflLem n, n); def NatLeReflLem = NatLeN; 36
37 Successor Lemma of NatLe n m n S(m) dec NatLeSuccLem :!(n : m : Nat) [@(NatLe, n, m) m))]; def NatLeSuccLem = NatLeS; Transitivity of NatLe n m m l n l dec NatLeTranLem :!(n : m : l : Nat) [@(NatLe, n, m) m, l) n, l)]; dec NatLeTranCondLem :!(n : m : l : Nat)!(d1 : d2 : Nat) [@(Equal, n, d1)) m, d2)) -> let d d1, d2) n, d))]; dec NatLeTrCondLem2 :!(n : m : l : Nat)!(d1 : d2 : Nat) [@(Equal, n, d1)) m, d2)) -> let d d1, d2) n, d))]; dec NatAddAssLem :!(n : d1 : d2 @(ADD, n, d1), d1, d2))); def NatLeTrCondLem2 = \(n : m : l : Nat) \(d1 : d2 : Nat) \(h1 n, d1)), h2 m, d2))) let d d1, d2) in let Q = \(z : z, d2)) in let q Q, h2) in let R = \(z : l, z) in let r n, d1, d2) R, q); def NatLeTranCondLem = 37
38 \(n : m : l : Nat) \(d1 : d2 : Nat) \(p2 n, d1)), q2 m, d2))) let d d1, d2) n, m, l, d1, d2, p2, q2); def NatLeTranLem = \(n : m : l : Nat) \(h1 n, m), h2 m, l)) let p1 n, m, h1), p2 m, l, h2) in let d1 p1), q1 p1), d2 p2), q2 p2) in let d d1, d2), q n, m, l, d1, d2, q1, q2) n, l, <d, q>); Other Properties of NatLe Predecessor Lemma of NatLe S(n) S(m) n m dec NatLePredLem :!(n : m : Nat) m)) n, m)]; dec EqNatSSAddLem :!(n : m : d : Nat) m), n), @(ADD, n, d)))]; def NatLePredLem = \(n : m : Nat) m))) let m), H) in let d p), q p) in let u1 n, m, d, q), @(ADD, n, d)), u1), u3 @(ADD, n, d)), u2), u4 n, d), u3) n, m, <d, u4>); Double Successor Lemma of NatLe n m S(n) S(m) dec NatLeSuccSuccLem :!(n : m : Nat) [@(NatLe, n, m))]; dec EqNatAddSSLem : 38
39 !(n : m : d : Nat) [@(Equal, n, @(SS, n), d))]; def EqNatAddSSLem = \(n : m : d : Nat) \(h n, d))) let P = \(z z)) in let p1 P, m))), p2 d, n), @(SS, n, d)), @(ADD, n), d), p1, p3); def NatLeSuccSuccLem = \(n : m : Nat) \(H n, m)) let p n, m, H) in let d p), q p) in let u n, m, d, m), <d, u>); (S(n) 0) There is no production m), OO) for any natural number m. It has the type Null. We treat this as an axiom instead. dec NatLeSnOAxm Prop, m), OO), Null); dec NatLeSnOLem : m), OO) -> Null]; def NatLeSnOLem = \(m : Nat) m), OO)) let P = \(Z : Prop) Z m, P, H); dec NatLeSnmLem : m), m) -> Null]; dec NatLeSnmLem1 : OO), OO) -> Null]; def NatLeSnmLem1 OO); dec NatLeSnmLem2 : let P = \(m : Nat) m), m) -> Null] in [@(P, n))]; def NatLeSnmLem2 = let P = \(m : Nat) 39
40 @(SS, m), m) -> Null] in \(m : h m)) @(SS, m))) let m), m, p) q); def NatLeSnmLem = let P = \(m : Nat) m), m) -> Null] P, NatLeSnmLem1, NatLeSnmLem2); 0 1 dec ZeroLEqOneLem OO)); def ZeroLEqOneLem = \(T : [Nat -> Nat -> Prop]) \(x n, n), y :!(n : m : Nat) [@(T, n, m) OO, OO)); 0 2 dec ZeroLEqTwoLem OO, OO))); def ZeroLEqTwoLem = \(T : [Nat -> Nat -> Prop]) \(x n, n), y :!(n : m : Nat) [@(T, n, m) T, x, y)); 0 3 dec ZeroLEqThreeLem OO)))); def ZeroLEqThreeLem = \(T : [Nat -> Nat -> Prop]) \(x n, n), y :!(n : m : Nat) [@(T, n, m) OO, T, x, y)); n m n m dec NatLeNegGtLem : 40
41 !(n : m : Nat) [@(NatLe, n, n, m))]; n < m n m dec NatLt2NatLeLem :!(n : m : Nat) [@(NatLt, n, m) n, m)]; def NatLt2NatLeLem = \(n : m : Nat) \(h n, m)) \(T : [Nat -> Nat -> Prop]) \(x n, n), y :!(n : m : Nat) [@(T, n, m) n, n)), y); a < b b = c a < c dec NatLtEqLtTranLem :!(a : b : c : Nat) [@(NatLt, a, b) b, c) a, c)]; def NatLtEqLtTranLem = \(a : b : c : Nat) \(h1 a, b), h2 b, c)) let p b, c, h2) in let P = \(z : a, z) P, h1); a = b b < c a < c dec NatEqLtLtTranLem :!(a : b : c : Nat) [@(NatEq, a, b) b, c) a, c)]; def NatEqLtLtTranLem = \(a : b : c : Nat) \(h1 a, b), h2 b, c)) let p a, b, h1) in let q a, b, p) in let P = \(z : z, c) P, h2); n = m n < S(m) dec NatEqLeSSLem :!(n : m : Nat) [@(NatEq, n, m) m))]; 41
Properties of the Integers
Properties of the Integers The set of all integers is the set and the subset of Z given by Z = {, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, }, N = {0, 1, 2, 3, 4, }, is the set of nonnegative integers (also called
More informationa + b = b + a and a b = b a. (a + b) + c = a + (b + c) and (a b) c = a (b c). a (b + c) = a b + a c and (a + b) c = a c + b c.
Properties of the Integers The set of all integers is the set and the subset of Z given by Z = {, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, }, N = {0, 1, 2, 3, 4, }, is the set of nonnegative integers (also called
More information02 The Axiomatic Method
CAS 734 Winter 2005 02 The Axiomatic Method Instructor: W. M. Farmer Revised: 11 January 2005 1 What is Mathematics? The essence of mathematics is a process consisting of three intertwined activities:
More informationChapter 0. Introduction: Prerequisites and Preliminaries
Chapter 0. Sections 0.1 to 0.5 1 Chapter 0. Introduction: Prerequisites and Preliminaries Note. The content of Sections 0.1 through 0.6 should be very familiar to you. However, in order to keep these notes
More informationThe Calculus of Inductive Constructions
The Calculus of Inductive Constructions Hugo Herbelin 10th Oregon Programming Languages Summer School Eugene, Oregon, June 16-July 1, 2011 1 Outline - A bit of history, leading to the Calculus of Inductive
More information07 Practical Application of The Axiomatic Method
CAS 701 Fall 2002 07 Practical Application of The Axiomatic Method Instructor: W. M. Farmer Revised: 28 November 2002 1 What is the Axiomatic Method? 1. A mathematical model is expressed as a set of axioms
More informationChapter 2: Introduction to Propositional Logic
Chapter 2: Introduction to Propositional Logic PART ONE: History and Motivation Origins: Stoic school of philosophy (3rd century B.C.), with the most eminent representative was Chryssipus. Modern Origins:
More informationThe Curry-Howard Isomorphism
The Curry-Howard Isomorphism Software Formal Verification Maria João Frade Departmento de Informática Universidade do Minho 2008/2009 Maria João Frade (DI-UM) The Curry-Howard Isomorphism MFES 2008/09
More informationPeano Arithmetic. CSC 438F/2404F Notes (S. Cook) Fall, Goals Now
CSC 438F/2404F Notes (S. Cook) Fall, 2008 Peano Arithmetic Goals Now 1) We will introduce a standard set of axioms for the language L A. The theory generated by these axioms is denoted PA and called Peano
More informationChapter 3. Formal Number Theory
Chapter 3. Formal Number Theory 1. An Axiom System for Peano Arithmetic (S) The language L A of Peano arithmetic has a constant 0, a unary function symbol, a binary function symbol +, binary function symbol,
More informationVictoria Gitman and Thomas Johnstone. New York City College of Technology, CUNY
Gödel s Proof Victoria Gitman and Thomas Johnstone New York City College of Technology, CUNY vgitman@nylogic.org http://websupport1.citytech.cuny.edu/faculty/vgitman tjohnstone@citytech.cuny.edu March
More information0.Axioms for the Integers 1
0.Axioms for the Integers 1 Number theory is the study of the arithmetical properties of the integers. You have been doing arithmetic with integers since you were a young child, but these mathematical
More informationCHAPTER 2 INTRODUCTION TO CLASSICAL PROPOSITIONAL LOGIC
CHAPTER 2 INTRODUCTION TO CLASSICAL PROPOSITIONAL LOGIC 1 Motivation and History The origins of the classical propositional logic, classical propositional calculus, as it was, and still often is called,
More information03 Review of First-Order Logic
CAS 734 Winter 2014 03 Review of First-Order Logic William M. Farmer Department of Computing and Software McMaster University 18 January 2014 What is First-Order Logic? First-order logic is the study of
More informationcse541 LOGIC FOR COMPUTER SCIENCE
cse541 LOGIC FOR COMPUTER SCIENCE Professor Anita Wasilewska Spring 2015 LECTURE 2 Chapter 2 Introduction to Classical Propositional Logic PART 1: Classical Propositional Model Assumptions PART 2: Syntax
More informationChapter One. The Real Number System
Chapter One. The Real Number System We shall give a quick introduction to the real number system. It is imperative that we know how the set of real numbers behaves in the way that its completeness and
More informationHence, the sequence of triangular numbers is given by., the. n th square number, is the sum of the first. S n
Appendix A: The Principle of Mathematical Induction We now present an important deductive method widely used in mathematics: the principle of mathematical induction. First, we provide some historical context
More informationLecture Notes on Heyting Arithmetic
Lecture Notes on Heyting Arithmetic 15-317: Constructive Logic Frank Pfenning Lecture 8 September 21, 2017 1 Introduction In this lecture we discuss the data type of natural numbers. They serve as a prototype
More informationToward a new formalization of real numbers
Toward a new formalization of real numbers Catherine Lelay Institute for Advanced Sciences September 24, 2015 1 / 9 Toward a new formalization of real numbers in Coq using Univalent Foundations Catherine
More information5. Peano arithmetic and Gödel s incompleteness theorem
5. Peano arithmetic and Gödel s incompleteness theorem In this chapter we give the proof of Gödel s incompleteness theorem, modulo technical details treated in subsequent chapters. The incompleteness theorem
More informationProof Theory and Subsystems of Second-Order Arithmetic
Proof Theory and Subsystems of Second-Order Arithmetic 1. Background and Motivation Why use proof theory to study theories of arithmetic? 2. Conservation Results Showing that if a theory T 1 proves ϕ,
More informationMath 4606, Summer 2004: Inductive sets, N, the Peano Axioms, Recursive Sequences Page 1 of 10
Math 4606, Summer 2004: Inductive sets, N, the Peano Axioms, Recursive Sequences Page 1 of 10 Inductive sets (used to define the natural numbers as a subset of R) (1) Definition: A set S R is an inductive
More informationLecture Notes on Data Abstraction
Lecture Notes on Data Abstraction 15-814: Types and Programming Languages Frank Pfenning Lecture 14 October 23, 2018 1 Introduction Since we have moved from the pure λ-calculus to functional programming
More informationChapter 1. Sets and Mappings
Chapter 1. Sets and Mappings 1. Sets A set is considered to be a collection of objects (elements). If A is a set and x is an element of the set A, we say x is a member of A or x belongs to A, and we write
More informationCHAPTER 0: BACKGROUND (SPRING 2009 DRAFT)
CHAPTER 0: BACKGROUND (SPRING 2009 DRAFT) MATH 378, CSUSM. SPRING 2009. AITKEN This chapter reviews some of the background concepts needed for Math 378. This chapter is new to the course (added Spring
More informationLecture Notes on Discrete Mathematics. October 15, 2018 DRAFT
Lecture Notes on Discrete Mathematics October 15, 2018 2 Contents 1 Basic Set Theory 5 1.1 Basic Set Theory....................................... 5 1.1.1 Union and Intersection of Sets...........................
More informationCSE 1400 Applied Discrete Mathematics Proofs
CSE 1400 Applied Discrete Mathematics Proofs Department of Computer Sciences College of Engineering Florida Tech Fall 2011 Axioms 1 Logical Axioms 2 Models 2 Number Theory 3 Graph Theory 4 Set Theory 4
More informationHilbert s problems, Gödel, and the limits of computation
Hilbert s problems, Gödel, and the limits of computation Logan Axon Gonzaga University April 6, 2011 Hilbert at the ICM At the 1900 International Congress of Mathematicians in Paris, David Hilbert gave
More informationProofs. Chapter 2 P P Q Q
Chapter Proofs In this chapter we develop three methods for proving a statement. To start let s suppose the statement is of the form P Q or if P, then Q. Direct: This method typically starts with P. Then,
More informationNotes on induction proofs and recursive definitions
Notes on induction proofs and recursive definitions James Aspnes December 13, 2010 1 Simple induction Most of the proof techniques we ve talked about so far are only really useful for proving a property
More informationSet Theory and the Foundation of Mathematics. June 19, 2018
1 Set Theory and the Foundation of Mathematics June 19, 2018 Basics Numbers 2 We have: Relations (subsets on their domain) Ordered pairs: The ordered pair x, y is the set {{x, y}, {x}}. Cartesian products
More informationBOOLEAN ALGEBRA INTRODUCTION SUBSETS
BOOLEAN ALGEBRA M. Ragheb 1/294/2018 INTRODUCTION Modern algebra is centered around the concept of an algebraic system: A, consisting of a set of elements: ai, i=1, 2,, which are combined by a set of operations
More informationConstructing Number Systems in Coq
April 29, 2011 Table of contents 1 2 Landau s Grundlagen der Analysis Natural Numbers Æ Fractions Positive Rational Numbers Dedekind Cuts 3 Definition Order Multiplication Addition 4 of my thesis Elegant
More information1 Proof by Contradiction
In these notes, which will serve as a record of what we covered in weeks 3-4, we discuss various indirect methods of proof. While direct proof is often preferred it is sometimes either not possible or
More informationPropositional Logics and their Algebraic Equivalents
Propositional Logics and their Algebraic Equivalents Kyle Brooks April 18, 2012 Contents 1 Introduction 1 2 Formal Logic Systems 1 2.1 Consequence Relations......................... 2 3 Propositional Logic
More information23.1 Gödel Numberings and Diagonalization
Applied Logic Lecture 23: Unsolvable Problems in Logic CS 4860 Spring 2009 Tuesday, April 14, 2009 The fact that Peano Arithmetic is expressive enough to represent all computable functions means that some
More informationPart IA Numbers and Sets
Part IA Numbers and Sets Definitions Based on lectures by A. G. Thomason Notes taken by Dexter Chua Michaelmas 2014 These notes are not endorsed by the lecturers, and I have modified them (often significantly)
More informationThe natural numbers. The natural numbers come with an addition +, a multiplication and an order < p < q, q < p, p = q.
The natural numbers N = {0, 1,, 3, } The natural numbers come with an addition +, a multiplication and an order < p, q N, p + q N. p, q N, p q N. p, q N, exactly one of the following holds: p < q, q
More informationGödel s Incompleteness Theorems
Seminar Report Gödel s Incompleteness Theorems Ahmet Aspir Mark Nardi 28.02.2018 Supervisor: Dr. Georg Moser Abstract Gödel s incompleteness theorems are very fundamental for mathematics and computational
More informationContribution of Problems
Exam topics 1. Basic structures: sets, lists, functions (a) Sets { }: write all elements, or define by condition (b) Set operations: A B, A B, A\B, A c (c) Lists ( ): Cartesian product A B (d) Functions
More informationFoundations of Mathematics MATH 220 FALL 2017 Lecture Notes
Foundations of Mathematics MATH 220 FALL 2017 Lecture Notes These notes form a brief summary of what has been covered during the lectures. All the definitions must be memorized and understood. Statements
More informationBasic material. We make use of the standard families of numbers. These now have standard names.
(A) Basic material In this document we set down all the basic material you should already know, together with some notation and terminology. Of course, there are different terminologies and notations for
More informationLecture 14 Rosser s Theorem, the length of proofs, Robinson s Arithmetic, and Church s theorem. Michael Beeson
Lecture 14 Rosser s Theorem, the length of proofs, Robinson s Arithmetic, and Church s theorem Michael Beeson The hypotheses needed to prove incompleteness The question immediate arises whether the incompleteness
More informationInformal Statement Calculus
FOUNDATIONS OF MATHEMATICS Branches of Logic 1. Theory of Computations (i.e. Recursion Theory). 2. Proof Theory. 3. Model Theory. 4. Set Theory. Informal Statement Calculus STATEMENTS AND CONNECTIVES Example
More informationMotivation. CS389L: Automated Logical Reasoning. Lecture 10: Overview of First-Order Theories. Signature and Axioms of First-Order Theory
Motivation CS389L: Automated Logical Reasoning Lecture 10: Overview of First-Order Theories Işıl Dillig Last few lectures: Full first-order logic In FOL, functions/predicates are uninterpreted (i.e., structure
More informationOn the Complexity of the Reflected Logic of Proofs
On the Complexity of the Reflected Logic of Proofs Nikolai V. Krupski Department of Math. Logic and the Theory of Algorithms, Faculty of Mechanics and Mathematics, Moscow State University, Moscow 119899,
More informationDominoes and Counting
Giuseppe Peano (Public Domain) Dominoes and Counting All of us have an intuitive feeling or innate sense for the counting or natural numbers, including a sense for infinity: ={1,, 3, }. The ability to
More informationArithmetical classification of the set of all provably recursive functions
Arithmetical classification of the set of all provably recursive functions Vítězslav Švejdar April 12, 1999 The original publication is available at CMUC. Abstract The set of all indices of all functions
More informationProofs. Chapter 2 P P Q Q
Chapter Proofs In this chapter we develop three methods for proving a statement. To start let s suppose the statement is of the form P Q or if P, then Q. Direct: This method typically starts with P. Then,
More informationThe LCF Approach to Theorem Proving
The LCF Approach to Theorem Proving 1 The LCF Approach to Theorem Proving John Harrison Intel Corporation Ideas and historical context Key ideas of LCF Equational logic example More about HOL Light Programming
More informationPart II. Logic and Set Theory. Year
Part II Year 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2018 60 Paper 4, Section II 16G State and prove the ǫ-recursion Theorem. [You may assume the Principle of ǫ- Induction.]
More informationMath 109 September 1, 2016
Math 109 September 1, 2016 Question 1 Given that the proposition P Q is true. Which of the following must also be true? A. (not P ) or Q. B. (not Q) implies (not P ). C. Q implies P. D. A and B E. A, B,
More informationHerbrand Theorem, Equality, and Compactness
CSC 438F/2404F Notes (S. Cook and T. Pitassi) Fall, 2014 Herbrand Theorem, Equality, and Compactness The Herbrand Theorem We now consider a complete method for proving the unsatisfiability of sets of first-order
More informationPeter Kahn. Spring 2007
MATH 304: CONSTRUCTING THE REAL NUMBERS Peter Kahn Spring 2007 Contents 1 The Natural Numbers 1 1.1 The Peano Axioms............................ 2 1.2 Proof by induction............................ 4 1.3
More informationExercises 1 - Solutions
Exercises 1 - Solutions SAV 2013 1 PL validity For each of the following propositional logic formulae determine whether it is valid or not. If it is valid prove it, otherwise give a counterexample. Note
More informationType Theory and Constructive Mathematics. Type Theory and Constructive Mathematics Thierry Coquand. University of Gothenburg
Type Theory and Constructive Mathematics Type Theory and Constructive Mathematics Thierry Coquand University of Gothenburg Content An introduction to Voevodsky s Univalent Foundations of Mathematics The
More informationMathematical Reasoning & Proofs
Mathematical Reasoning & Proofs MAT 1362 Fall 2018 Alistair Savage Department of Mathematics and Statistics University of Ottawa This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
More informationHilbert s problems, Gödel, and the limits of computation
Hilbert s problems, Gödel, and the limits of computation Logan Axon Gonzaga University November 14, 2013 Hilbert at the ICM At the 1900 International Congress of Mathematicians in Paris, David Hilbert
More informationCHAPTER 4: EXPLORING Z
CHAPTER 4: EXPLORING Z MATH 378, CSUSM. SPRING 2009. AITKEN 1. Introduction In this chapter we continue the study of the ring Z. We begin with absolute values. The absolute value function Z N is the identity
More informationAnalysis I. Classroom Notes. H.-D. Alber
Analysis I Classroom Notes H-D Alber Contents 1 Fundamental notions 1 11 Sets 1 12 Product sets, relations 5 13 Composition of statements 7 14 Quantifiers, negation of statements 9 2 Real numbers 11 21
More informationCONSTRUCTION OF THE REAL NUMBERS.
CONSTRUCTION OF THE REAL NUMBERS. IAN KIMING 1. Motivation. It will not come as a big surprise to anyone when I say that we need the real numbers in mathematics. More to the point, we need to be able to
More informationExistence and Consistency in Bounded Arithmetic
Existence and Consistency in Bounded Arithmetic Yoriyuki Yamagata National Institute of Advanced Science and Technology (AIST) Kusatsu, August 30, 2011 Outline Self introduction Summary Theories of PV
More information07 Equational Logic and Algebraic Reasoning
CAS 701 Fall 2004 07 Equational Logic and Algebraic Reasoning Instructor: W. M. Farmer Revised: 17 November 2004 1 What is Equational Logic? Equational logic is first-order logic restricted to languages
More informationKreisel s Conjecture with minimality principle
Kreisel s Conjecture with minimality principle Pavel Hrubeš November 9, 2008 Abstract We prove that Kreisel s Conjecture is true, if Peano arithmetic is axiomatised using minimality principle and axioms
More informationStandard forms for writing numbers
Standard forms for writing numbers In order to relate the abstract mathematical descriptions of familiar number systems to the everyday descriptions of numbers by decimal expansions and similar means,
More informationFoundations of Mathematics
Foundations of Mathematics L. Brian Lawrence Department of Mathematics George Mason University Fairfax, VA 22030 4444 U.S.A. e mail: blawrenc@mail.gmu.edu January 1, 2007 Preface This set of notes is an
More informationA BRIEF INTRODUCTION TO ZFC. Contents. 1. Motivation and Russel s Paradox
A BRIEF INTRODUCTION TO ZFC CHRISTOPHER WILSON Abstract. We present a basic axiomatic development of Zermelo-Fraenkel and Choice set theory, commonly abbreviated ZFC. This paper is aimed in particular
More informationWhat are the recursion theoretic properties of a set of axioms? Understanding a paper by William Craig Armando B. Matos
What are the recursion theoretic properties of a set of axioms? Understanding a paper by William Craig Armando B. Matos armandobcm@yahoo.com February 5, 2014 Abstract This note is for personal use. It
More informationABSTRACT ALGEBRA I NOTES
ABSTRACT ALGEBRA I NOTES MICHAEL PENKAVA 1. Peano Postulates of the Natural Numbers 1.1. The Principle of Mathematical Induction. The principle of mathematical induction is usually stated as follows: Theorem
More informationMATH XYZ. 1. Basics: Sets, Maps, Relations,...
MATH XYZ 1. Basics: Sets, Maps, Relations,... The axiomatic point of view: All entities are sets. For any sets X, A one has: - Either X A [read X belongs to A or X is element of A ]. - Or X / A [read X
More informationby Yurii Khomskii There is a weaker notion called semi-representability:
Gödel s Incompleteness Theorem by Yurii Khomskii We give three different proofs of Gödel s First Incompleteness Theorem. All three proofs are essentially variations of one another, but some people may
More informationAutomata and Languages
Automata and Languages Prof. Mohamed Hamada Software Engineering Lab. The University of Aizu Japan Mathematical Background Mathematical Background Sets Relations Functions Graphs Proof techniques Sets
More informationCHALLENGES TO PREDICATIVE FOUNDATIONS OF ARITHMETIC by Solomon Feferman 1 and Geoffrey Hellman
CHALLENGES TO PREDICATIVE FOUNDATIONS OF ARITHMETIC by Solomon Feferman 1 and Geoffrey Hellman Introduction. This is a sequel to our article Predicative foundations of arithmetic (1995), referred to in
More informationBootstrapping Mathematics
Bootstrapping Mathematics Masahiko Sato Graduate School of Informatics, Kyoto University Mathematical Logic: Development and Evolution into Various Sciences Kanazawa, Japan March 9, 2012 Contents What
More information1. A Little Set Theory
. A Little Set Theory I see it, but I don t believe it. Cantor to Dedekind 29 June 877 Functions are the single most important idea pervading modern mathematics. We will assume the informal definition
More informationMath 324 Summer 2012 Elementary Number Theory Notes on Mathematical Induction
Math 4 Summer 01 Elementary Number Theory Notes on Mathematical Induction Principle of Mathematical Induction Recall the following axiom for the set of integers. Well-Ordering Axiom for the Integers If
More informationWe begin with a standard definition from model theory.
1 IMPOSSIBLE COUNTING by Harvey M. Friedman Distinguished University Professor of Mathematics, Philosophy, and Computer Science Emeritus Ohio State University Columbus, Ohio 43235 June 2, 2015 DRAFT 1.
More information02 Propositional Logic
SE 2F03 Fall 2005 02 Propositional Logic Instructor: W. M. Farmer Revised: 25 September 2005 1 What is Propositional Logic? Propositional logic is the study of the truth or falsehood of propositions or
More informationContents Propositional Logic: Proofs from Axioms and Inference Rules
Contents 1 Propositional Logic: Proofs from Axioms and Inference Rules... 1 1.1 Introduction... 1 1.1.1 An Example Demonstrating the Use of Logic in Real Life... 2 1.2 The Pure Propositional Calculus...
More informationTheorem Proving for Verification
0 Theorem Proving for Verification John Harrison Intel Corporation CAV 2008 Princeton 9th July 2008 1 Formal verification Formal verification: mathematically prove the correctness of a design with respect
More informationIntroduction to Logic and Axiomatic Set Theory
Introduction to Logic and Axiomatic Set Theory 1 Introduction In mathematics, we seek absolute rigor in our arguments, and a solid foundation for all of the structures we consider. Here, we will see some
More informationDivisibility = 16, = 9, = 2, = 5. (Negative!)
Divisibility 1-17-2018 You probably know that division can be defined in terms of multiplication. If m and n are integers, m divides n if n = mk for some integer k. In this section, I ll look at properties
More informationThe Mother of All Paradoxes
The Mother of All Paradoxes Volker Halbach Truth and Intensionality Amsterdam 3rd December 2016 A theory of expressions The symbols of L are: 1. infinitely many variable symbols v 0, v 1, v 2, v 3,...
More informationAlgebraic Proof Systems
Algebraic Proof Systems Pavel Pudlák Mathematical Institute, Academy of Sciences, Prague and Charles University, Prague Fall School of Logic, Prague, 2009 2 Overview 1 a survey of proof systems 2 a lower
More informationFirst-Order Logic First-Order Theories. Roopsha Samanta. Partly based on slides by Aaron Bradley and Isil Dillig
First-Order Logic First-Order Theories Roopsha Samanta Partly based on slides by Aaron Bradley and Isil Dillig Roadmap Review: propositional logic Syntax and semantics of first-order logic (FOL) Semantic
More information3. Only sequences that were formed by using finitely many applications of rules 1 and 2, are propositional formulas.
1 Chapter 1 Propositional Logic Mathematical logic studies correct thinking, correct deductions of statements from other statements. Let us make it more precise. A fundamental property of a statement is
More informationThis is logically equivalent to the conjunction of the positive assertion Minimal Arithmetic and Representability
16.2. MINIMAL ARITHMETIC AND REPRESENTABILITY 207 If T is a consistent theory in the language of arithmetic, we say a set S is defined in T by D(x) if for all n, if n is in S, then D(n) is a theorem of
More informationAN INTRODUCTION TO COMPUTABILITY THEORY
AN INTRODUCTION TO COMPUTABILITY THEORY CINDY CHUNG Abstract. This paper will give an introduction to the fundamentals of computability theory. Based on Robert Soare s textbook, The Art of Turing Computability:
More informationFinal Exam Review. 2. Let A = {, { }}. What is the cardinality of A? Is
1. Describe the elements of the set (Z Q) R N. Is this set countable or uncountable? Solution: The set is equal to {(x, y) x Z, y N} = Z N. Since the Cartesian product of two denumerable sets is denumerable,
More informationLecture 2: Axiomatic semantics
Chair of Software Engineering Trusted Components Prof. Dr. Bertrand Meyer Lecture 2: Axiomatic semantics Reading assignment for next week Ariane paper and response (see course page) Axiomatic semantics
More informationChapter 1. Logic and Proof
Chapter 1. Logic and Proof 1.1 Remark: A little over 100 years ago, it was found that some mathematical proofs contained paradoxes, and these paradoxes could be used to prove statements that were known
More informationChapter 1. Sets and Numbers
Chapter 1. Sets and Numbers 1. Sets A set is considered to be a collection of objects (elements). If A is a set and x is an element of the set A, we say x is a member of A or x belongs to A, and we write
More informationPeano Arithmetic. by replacing the schematic letter R with a formula, then prefixing universal quantifiers to bind
Peano Arithmetic Peano Arithmetic 1 or PA is the system we get from Robinson s Arithmetic by adding the induction axiom schema: ((R(0) v (œx)(r(x) 6 R(sx))) 6 (œx)r(x)). What this means is that any sentence
More informationOutline. We will now investigate the structure of this important set.
The Reals Outline As we have seen, the set of real numbers, R, has cardinality c. This doesn't tell us very much about the reals, since there are many sets with this cardinality and cardinality doesn't
More informationCONSERVATION by Harvey M. Friedman September 24, 1999
CONSERVATION by Harvey M. Friedman September 24, 1999 John Burgess has specifically asked about whether one give a finitistic model theoretic proof of certain conservative extension results discussed in
More informationZermelo-Fraenkel Set Theory
Zermelo-Fraenkel Set Theory Zak Mesyan University of Colorado Colorado Springs The Real Numbers In the 19th century attempts to prove facts about the real numbers were limited by the lack of a rigorous
More informationInductive Definitions with Inference Rules 1 / 27
Inductive Definitions with Inference Rules 1 / 27 Outline Introduction Specifying inductive definitions Inference rules in action Judgments, axioms, and rules Reasoning about inductive definitions Direct
More informationn n P} is a bounded subset Proof. Let A be a nonempty subset of Z, bounded above. Define the set
1 Mathematical Induction We assume that the set Z of integers are well defined, and we are familiar with the addition, subtraction, multiplication, and division. In particular, we assume the following
More informationReverse mathematics and marriage problems with unique solutions
Reverse mathematics and marriage problems with unique solutions Jeffry L. Hirst and Noah A. Hughes January 28, 2014 Abstract We analyze the logical strength of theorems on marriage problems with unique
More informationTRUTH TELLERS. Volker Halbach. Scandinavian Logic Symposium. Tampere
TRUTH TELLERS Volker Halbach Scandinavian Logic Symposium Tampere 25th August 2014 I m wrote two papers with Albert Visser on this and related topics: Self-Reference in Arithmetic, http://www.phil.uu.nl/preprints/lgps/number/316
More information