Chapter 2. Logic Weiqi Luo ( 骆伟祺 ) School of Software Sun Yat-Sen University : Office : A309

Slides:



Advertisements
Similar presentations
Chapter 2 Fundamentals of Logic Dept of Information management National Central University Yen-Liang Chen.
Advertisements

Copyright © Cengage Learning. All rights reserved. CHAPTER 5 SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION.
Elementary Number Theory and Methods of Proof
CS128 – Discrete Mathematics for Computer Science
Logic Chapter 2. Proposition "Proposition" can be defined as a declarative statement having a specific truth-value, true or false. Examples: 2 is a odd.
CSE115/ENGR160 Discrete Mathematics 02/01/11
Logic: Connectives AND OR NOT P Q (P ^ Q) T F P Q (P v Q) T F P ~P T F
1 Math 306 Foundations of Mathematics I Math 306 Foundations of Mathematics I Goals of this class Introduction to important mathematical concepts Development.
First Order Logic. Propositional Logic A proposition is a declarative sentence (a sentence that declares a fact) that is either true or false, but not.
Adapted from Discrete Math
Lecture 8 Introduction to Logic CSCI – 1900 Mathematics for Computer Science Fall 2014 Bill Pine.
The Foundations: Logic and Proofs
Methods of Proof & Proof Strategies
1.1 Sets and Logic Set – a collection of objects. Set brackets {} are used to enclose the elements of a set. Example: {1, 2, 5, 9} Elements – objects inside.
Section 1.5 Implications. Implication Statements If Cara has a piano lesson, then it is Friday. If it is raining, then I need to remember my umbrella.
Course Outline Book: Discrete Mathematics by K. P. Bogart Topics:
CSCI 115 Chapter 2 Logic. CSCI 115 §2.1 Propositions and Logical Operations.
Mathematical Structures A collection of objects with operations defined on them and the accompanying properties form a mathematical structure or system.
BY: MISS FARAH ADIBAH ADNAN IMK. CHAPTER OUTLINE: PART III 1.3 ELEMENTARY LOGIC INTRODUCTION PROPOSITION COMPOUND STATEMENTS LOGICAL.
Review I Rosen , 3.1 Know your definitions!
Chap. 2 Fundamentals of Logic. Proposition Proposition (or statement): an declarative sentence that is either true or false, but not both. e.g. –Margret.
Chapter 5 – Logic CSNB 143 Discrete Mathematical Structures.
10/17/2015 Prepared by Dr.Saad Alabbad1 CS100 : Discrete Structures Proof Techniques(1) Dr.Saad Alabbad Department of Computer Science
Chapter 1 Logic Section 1-1 Statements Open your book to page 1 and read the section titled “To the Student” Now turn to page 3 where we will read the.
Fall 2002CMSC Discrete Structures1 Let’s get started with... Logic !
1 Sections 1.5 & 3.1 Methods of Proof / Proof Strategy.
Discrete Structures (DS)
2.3Logical Implication: Rules of Inference From the notion of a valid argument, we begin a formal study of what we shall mean by an argument and when such.
CSNB143 – Discrete Structure LOGIC. Learning Outcomes Student should be able to know what is it means by statement. Students should be able to identify.
Fundamentals of Logic 1. What is a valid argument or proof? 2. Study system of logic 3. In proving theorems or solving problems, creativity and insight.
Hazırlayan DISCRETE COMPUTATIONAL STRUCTURES Propositional Logic PROF. DR. YUSUF OYSAL.
Chapter 3: Introduction to Logic. Logic Main goal: use logic to analyze arguments (claims) to see if they are valid or invalid. This is useful for math.
Propositional Logic. Propositions Any statement that is either True (T) or False (F) is a proposition Propositional variables: a variable that can assume.
Lecture 9 Conditional Statements CSCI – 1900 Mathematics for Computer Science Fall 2014 Bill Pine.
LOGIC.
1 Discrete Structures – CNS2300 Text Discrete Mathematics and Its Applications Kenneth H. Rosen (5 th Edition) Chapter 3 The Foundations: Logic and Proof,
Chapter 2 Logic 2.1 Statements 2.2 The Negation of a Statement 2.3 The Disjunction and Conjunction of Statements 2.4 The Implication 2.5 More on Implications.
Conditional Statements – Page 1CSCI 1900 – Discrete Structures CSCI 1900 Discrete Structures Conditional Statements Reading: Kolman, Section 2.2.
Section 1.1. Section Summary Propositions Connectives Negation Conjunction Disjunction Implication; contrapositive, inverse, converse Biconditional Truth.
Logical Operations – Page 1CSCI 1900 – Discrete Structures CSCI 1900 Discrete Structures Logical Operations Reading: Kolman, Section 2.1.
Chapter 2 Symbolic Logic. Section 2-1 Truth, Equivalence and Implication.
CSNB143 – Discrete Structure Topic 4 – Logic. Learning Outcomes Students should be able to define statement. Students should be able to identify connectives.
Method of proofs.  Consider the statements: “Humans have two eyes”  It implies the “universal quantification”  If a is a Human then a has two eyes.
Chapter 2 Fundamentals of Logic 1. What is a valid argument or proof?
Mathematics for Comter I Lecture 2: Logic (1) Basic definitions Logical operators Translating English sentences.
CSci 2011 Discrete Mathematics Lecture 4 CSci 2011.
CS104:Discrete Structures Chapter 2: Proof Techniques.
Week 4 - Friday.  What did we talk about last time?  Floor and ceiling  Proof by contradiction.
رياضيات متقطعة لعلوم الحاسب MATH 226. Text books: (Discrete Mathematics and its applications) Kenneth H. Rosen, seventh Edition, 2012, McGraw- Hill.
Section 1.1. Propositions A proposition is a declarative sentence that is either true or false. Examples of propositions: a) The Moon is made of green.
Spring 2003CMSC Discrete Structures1 Let’s get started with... Logic !
3/6/20161 Let’s get started with... Logic !. 3/6/20162 Logic Crucial for mathematical reasoningCrucial for mathematical reasoning Used for designing electronic.
Mathematics for Comter I Lecture 3: Logic (2) Propositional Equivalences Predicates and Quantifiers.
Conditional statement or implication IF p then q is denoted p ⇒ q p is the antecedent or hypothesis q is the consequent or conclusion ⇒ means IF…THEN.
Foundations of Discrete Mathematics Chapter 1 By Dr. Dalia M. Gil, Ph.D.
Discrete Mathematical Structures: Theory and Applications 1 Logic: Learning Objectives  Learn about statements (propositions)  Learn how to use logical.
Discrete Math by R.S. Chang, Dept. CSIE, NDHU1 Fundamentals of Logic 1. What is a valid argument or proof? 2. Study system of logic 3. In proving theorems.
Propositional and predicate logic
Chapter 1. Chapter Summary  Propositional Logic  The Language of Propositions (1.1)  Logical Equivalences (1.3)  Predicate Logic  The Language of.
Chapter 1 Logic and proofs
Logical Operators (Connectives) We will examine the following logical operators: Negation (NOT,  ) Negation (NOT,  ) Conjunction (AND,  ) Conjunction.
CSNB 143 Discrete Mathematical Structures
Discrete Mathematics Logic.
Proof Techniques.
Methods of Proof A mathematical theorem is usually of the form pq
The Foundations: Logic and Proofs
Methods of Proof. Methods of Proof Definitions A theorem is a valid logical assertion which can be proved using Axioms: statements which are given.
Discrete Mathematics Logic.
Foundations of Discrete Mathematics
Agenda Proofs (Konsep Pembuktian) Direct Proofs & Counterexamples
Presentation transcript:

Chapter 2. Logic Weiqi Luo ( 骆伟祺 ) School of Software Sun Yat-Sen University : Office : A309

School of Software  2.1. Propositions and Logical Operation  2.2. Conditional Statements  2.3. Methods of Proof  2.4. Mathematical Induction  2.5. Mathematical Statements  2.6. Logic and Problem Solving 2 Chapter two: Logic

School of Software  Statement (Proposition) A statement or proposition is a declarative sentence that is either true or false but not both Example 1: (a) The earth is round. (b) 2+3=5 (c) Do you speak English? (d) 3-x=5 (e) Take two aspirins. (f) The temperature on the surface of the planet Venus is 800 F (g) The sun will come out tomorrow 2.1. Propositions and Logical Operation 3 Yes. No. This is a question. No. May true or false No. This is a command. Yes. yes

School of Software  Paradox A male barber shaves all and only those men who do not shave themselves Paradox: A paradox is a seemingly true statement or group of statements that lead to a contradiction or a situation which seems to defy logic or intuition. Paradox is not a statement. Refer to Others “I am lying”, “this sentence is wrong”, so on and so forth 2.1. Propositions and Logical Operation 4

School of Software  Propositional variables In logic, the letters p, q, r … denote propositional variables, which are replaced by statements p: 1+2 = 5 q: It is raining.  Compound statements Propositional variables can be combined by logical connectives to obtain compound statements. E.g. p and q : 1+2 =5 and it is raining Propositions and Logical Operation 5

School of Software  Negation (a unary operation) If p is a statement, the negation of p is the statement not p, denoted by ~ p, meaning “it is not the case that p”. if p is true, then ~p is false, and if p is false, then ~p is true. Truth Table : List the truth value of a compound statement in terms of its component parts Propositions and Logical Operation 6 p~q TF FT

School of Software  Example: Give the negation of the following statements (a) p: 2+3 >1 (b) q: It is snowing. Solution: (a) ~p: 2+3 is not greater than 1, namely, 2+3 <=1 (b) ~q: It is not the case that it is snowing. More simply, ~q: It is not snowing Propositions and Logical Operation 7

School of Software  Conjunction If p and q are statements, the conjunction of p and q is the compound statement “p and q” denoted by p ∧ q. Truth Table : Note: p ∧ q is T if and only if p is T and q is T Propositions and Logical Operation 8 pq p ∧ q TTT TFF FTF FFF

School of Software  Example Form the conjunction of p and q p: 1>3 q: It is raining. Solution: p ∧ q : 1 > 3 and It is raining. Note: In logic, unlike in everyday English, we may join two totally unrelated statements by logical connectives Propositions and Logical Operation 9

School of Software  Disjunction If p and q are statements, the disjunction of p and q is the compound statement “p or q”, denoted by p V q Truth Table : Note: p V q is F is and only if q is F and q is F Propositions and Logical Operation 10 pqp V q TTT TFT FTT FFF

School of Software  The connective “or” (a) I left for Spain on Monday or I left for Spain on Friday. (b) I passed math or I failed French” Note: Case (a): Both could not have occurred. “or” is an excusive sense in this case. Case (b): Both could have occurred. “or” is an inclusive sense in this case. In mathematics and computer science. We agree to use the connective “or” in inclusive manner Propositions and Logical Operation 11

School of Software  Example: Form the disjunction of p and q p: 2 is a positive integer q : sqrt(2) is a rational number Solution: p V q: 2 is a positive integer or sqrt(2) is a rational number. Since p is true, p V q is true, even through q is false Propositions and Logical Operation 12

School of Software Algorithm for making Truth Table:  Step 1: The first n columns of the table are labeled by the component propositional variables. Further columns are included for all intermediate combinations of the variables, culminating in a column for the full statement.  Step 2: Under each of the first n headings, we list the 2 n possible n-tuples of truth values for the n component statements.  Step 3: For each of the remaining columns, we compute, in sequence, the remaining truth values Propositions and Logical Operation 13

School of Software  Example 5: Make a truth table for the statement (p ∧ q) V (~ p) Truth Table: 2.1. Propositions and Logical Operation 14 pq p ∧ q ~pV TTTFT TFFFF FTFTT FFFTT (1)(2)(3)

School of Software  Propositional function (predicate) An element of a set {x | P(x)} is an object t for which the statement P(t) is true. P(x) is called a propositional function (or predicate), because each choice of x produces a proposition P(x) that is either true or false (well-defined) E.g. Let A={ x | x is an integer less than 8}. Here P(x) is the sentence “x is an integer less than 8” P(1) denotes the statement “1 is an integer less than 8” (true) P(8) denotes the statement “8 is an integer less than 8” (false) 2.1. Propositions and Logical Operation 15

School of Software  Universal Quantifiers ( ∀ ) The Universal Quantifiers of a predicate P(x) is the statement “for all values of x, P(x) is true”, denoted by ∀ x P(x) Example 8 (a) P(x) : -(-x) = x is a predicate that makes sense for all real number x. then ∀ x P(x) is true statement. Since ∀ x ∈ R, -(-x) = x (b) Q(x): x+1<4. then ∀ x Q(x) is a false statement, since Q(5) is false 2.1. Propositions and Logical Operation 16

School of Software  Existential Quantifiers ( ∃ ) The Existential Quantifiers of a predicate P(x) is the statement “there exists a value of x for which P(x) is true”, denoted by ∃ x P(x) Example 9 (a) Let Q(x): x+1<4. then the existential quantification of Q(x), ∃ x Q(x), is a true statement, since Q(1) is a true statement (b) The statement ∃ y y+2=y is false since there is no value of y for which the propositional function y+2=y produces a true statement Propositions and Logical Operation 17

School of Software  The order of the Quantifiers ∀ & ∃ The order does not affect the output for the same quantifiers, while it may produce different results for different quantifiers. E.g. P(x, y) : x + y =1 ∀ x ∃ y P(x) is true, ∃ y ∀ x is false. P(x, y): x *y = 0 ∀ x ∃ y P(x) is true, ∃ y ∀ x is true too Propositions and Logical Operation 18

School of Software  The negation of Quantifiers ∀ & ∃ (a) let p: ∀ x P(x), then ~p: there must be at least one value of x for which P(x) is false, namely, ~ ∀ x P(x) = ∃ x ~P(x) (b) let p: ∃ x P(x), then ~p: for all x, P(x) is false, namely, ~ ∃ x P(x)= ∀ x ~P(x) 2.1. Propositions and Logical Operation 19

School of Software  Homework Ex. 2, Ex. 4, Ex. 16, Ex Propositions and Logical Operation 20

School of Software  Conditional statement If p and q are statements, the compound statement “if p then q”, denoted p=>q, is called a conditional statement or implication. p : antecedent or hypothesis q : consequent or conclusion if … then : => Truth Table : Note: when p is F, then p=>q is T Conditional Statements 21 pqp => q TTT TFF FTT FFT

School of Software  Example Form the implication p=>q for each the following (a) p: I am hungry. q: I will eat. (b) p: 2+2=5 q: I am the king of England. Solution (a) If I am hungry, then I will eat (b) If 2+2=5, then I am the king of English Note: There is no cause-and effect relationship between p and q in case (b). And (b) is true, since 2+2=5 is false Conditional Statements 22

School of Software  Converse and Contrapositive If p=>q is an implication, then its converse is the implication q => p and its contrapositive is the implication ~ q => ~p E.g. Give the converse and the contrapositive of the implication “If it is raining, then I get wet” Converse: If I get wet, then It is raining. Contrapositive: If I do not get wet, then It is not raining Conditional Statements 23

School of Software  Equivalence (biconditional) If p and q are statements, the compound statement p if and only if q, denoted by p  q, is called an equivalence or biconditional. Truth Table : Note: p q is T when p and q are both T or both F Conditional Statements 24 pqp  q TTT TFF FTT FFT

School of Software  Example 3: Is the following equivalence a true statement? 3>2 if and only if 0< 3 – 2 Solution: Let p: 3>2 and q : 0< 3 – 2, since p and q are both true, we then conclude that p  q is true statement Conditional Statements 25

School of Software  Example 4. Compute the truth table of the statement (p=>q)  (~q => ~p) Truth Table : 2.2. Conditional Statements 26 pqp=>q~q~p~q=>~p(p=>q)  (~q => ~p) TTTFFTT TFFTFFT FTTFTTT FFTTTTT

School of Software  Tautology A statement that is true for all possible values of its propositional variables called Tautology. (e.g. Example 4)  Contradiction (Absurdity) A statement that is false for all possible values of its propositional variables called Contradiction or Absurdity. (e.g. p ∧ ~p)  Contingency A statement that can be either true or false, depending on the truth values of its propositional variables, is called a contingency. (e.g. p => q) 2.2. Conditional Statements 27

School of Software  Logically Equivalent If two statements p and q are always either both true or both false, for any values of the propositional variables, namely p  q is a tautology Then we call p and q are logically equivalent. Denoted by p ≡ q 2.2. Conditional Statements 28

School of Software  Example 6 Show that p V q and q V p are logically equivalent The truth table of (p V q )  (q V p ) are shown as follows Truth Table : 2.2. Conditional Statements 29 pqp V qq V pp V q  q V p TTTTT TFTTT FTTTT FFFFT

School of Software  Two Structures with similar properties (Theorem 1) Structure 1 (logic operations): (propositions, ∧, V, ~) Structure 2 (sets operations) (sets, U, ∩, - ) 2.2. Conditional Statements 30

School of Software  Theorem 1 Commutative properties p ∨ q ≡ q ∨ p, p ∧ q ≡ q ∧ p Associative Properties p ∨ (q ∨ r) ≡ (p ∨ q) ∨ r, p ∧ (q ∧ r) ≡ (p ∧ q) ∧ r Distributive Properties p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r) p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r) 2.2. Conditional Statements 31

School of Software Idempotent Properties p ∨ p ≡ p, p ∧ p ≡ p Properties of Negation ~(~p) ≡ p ~(p ∨ q) ≡ (~p) ∧ (~q) ~(p ∧ q) ≡ (~p) ∨ (~q) De Morgan’s laws 2.2. Conditional Statements 32

School of Software  Theorem 2 (p ⇒ q) ≡ ((~p) ∨ q) (p ⇒ q) ≡ (~q ⇒ ~p) (p  q) ≡ ((p ⇒ q) ∧ (q ⇒ p)) ~(p ⇒ q) ≡ (p ∧ ~q) ~(p  q) ≡ ((p ∧ ~q) ∨ (q ∧ ~p)) 2.2. Conditional Statements 33

School of Software  Theorem 3 ~( ∀ xP(x)) ≡ ∃ x~P(x) ~( ∃ xP(x)) ≡ ∀ x(~P(x)) ∃ x(P(x) ⇒ Q(x)) ≡ ∀ xP(x) ⇒ ∃ xQ(x) ∃ x(P(x) ∨ Q(x)) ≡ ∃ xP(x) ∨ ∃ xQ(x) ∀ x(P(x) ∧ Q(x)) ≡ ∀ xP(x) ∧ ∀ xQ(x) ∀ xP(x) ∨ ∀ xQ(x) ⇒ ∀ x(P(x) ∨ Q(x)) is a tautology ∃ x(P(x) ∧ Q(x)) ⇒ ∃ xP(x) ∧ ∃ xQ(x) is a tautology 2.2. Conditional Statements 34

School of Software  Theorem 4 : Each of the following is a tautology (p ∧ q) ⇒ p, (p ∧ q) ⇒ q p ⇒ (p ∨ q), q ⇒ (p ∨ q) ~p ⇒ (p ⇒ q), ~(p ⇒ q) ⇒ p (p ∧ (p ⇒ q)) ⇒ q, (~p ∧ (p ∨ q)) ⇒ q (~q ∧ (p ⇒ q)) ⇒ ~p ((p ⇒ q) ∧ (q ⇒ r)) ⇒ (p ⇒ r) 2.2. Conditional Statements 35

School of Software  Properties of Quantifiers ∃ and ∀ (a) ∃ x (P(x) V Q(x)) ≡ ∃ x P(x) V ∃ x (Q(x)) (b) ∀ x (P(x) ∧ Q(x)) ≡ ∀ x P(x) ∀ x Q(x) 2.2. Conditional Statements 36

School of Software  Homework ex.2, ex.7, ex.12, ex.15, ex.21 ex Conditional Statements 37

School of Software  Logically Follow If an implication p ⇒ q is a tautology, where p and q may be compound statements involving any number of proposition variables, we say that q logically follows from p. Suppose that an implication of the form (p1 ∧ p2 ∧ … ∧ pn) ⇒ q is a tautology. We say that q logically follows from p1, p2, …, pn, denoted by 2.3. Method of Proof 38

School of Software (p 1 ∧ p 2 ∧ … ∧ p n ) ⇒ q The p i ’s are called the hypotheses or premises, and q is called the conclusion. Note: we are not trying to show that q is true, but only that q will be true if all the p i are true. ∴ denotes “therefore” 2.3. Method of Proof 39

School of Software  Rules of inference Arguments based on tautologies represent universally correct methods of reasoning. Their validity depends only on the form of the statements involved and not on the truth values of the variables they contain. Example 1 ((p ⇒ q) ∧ (q ⇒ r)) ⇒ (p ⇒ r) is tautology, then the argument is universally valid, and so is a rule of inference Method of Proof 40

School of Software  Example 2: Is the following argument valid? If you invest in the stock market, then you will get rich. If you get rich, then you will be happy. ∴ If you invest in the stock market, then you will be happy. let p: you invest in the stock market, q: you will get rich r: you will be happy The above argument is of the form given in Example 1, hence the argument is valid! 2.3. Method of Proof 41

School of Software  Example 3 The tautology (p  q)  ((p ⇒ q) ∧ (q ⇒ p)) means that the following two arguments are valid p ⇒ q p  q q ⇒ p ∴ (p ⇒ q) ∧ (q ⇒ p) ∴ p  q 2.3. Method of Proof 42

School of Software  Equivalence (p  q) They are usually stated “p if and only if q”. We need to prove both p=>q and q=>p by the tautology mentioned in example 3. Algorithm : Step one: Assuming p is true, show q must be true. Step two: Assuming q is true, show p must be true Method of Proof 43

School of Software  Modus Ponens p is true, and p=>q is true, so q is true (Theorem 4(g) in Section 2.2.) p p=>q ∴ q 2.3. Method of Proof 44

School of Software  Example 4: Is the following argument valid? Smoking is healthy. If smoking is healthy, then cigarettes are prescribed by physicians. ∴ Cigarettes are prescribed by physicians p: Smoking is healthy. q: cigarettes are prescribed by physicians The argument is valid since it is of form modus ponens Method of Proof 45

School of Software  Example 5 Is the following argument valid? If taxes are lowered, then income rises Income rises ∴ taxes are lowered Solution: Let p: taxes are lowed q: income rise p=>q q ∴ p Then argument is not valid, since p=>q and q can be both true with p being false Method of Proof 46 (or show the truth table of (p=>q) ∧ q => p, and determine whether or not it is a tautology)

School of Software  Indirect Method of Proof The tautology (p=>q )  (~q) => (~p ) (An implication is equivalent to its contrapositive) Note: To proof p=>q indirectly, we assume q is false (~q) and show that p is then false (~p) 2.3. Method of Proof 47

School of Software  Example 6 Let n be an integer. Prove that if n 2 is odd, then n is odd. Solution: Let p: n 2 is odd, q: n is odd. To prove that (p=>q) We try to prove its contrapositive ~q=>~p Assuming that n is even (~q), let n=2k, k is an integer, then we have n 2 = (2k) 2 =4k 2 is even (~p). Hence, the given statement has been proved Method of Proof 48

School of Software  The tautology ((p ⇒ q) ∧ (~q)) ⇒ ~p If a statement p implies a false statement q, then p must be false. Proof by contradiction To prove (p 1 ∧ p 2 ∧ … ∧ p n ) ⇒ q, We add (~q) into hypothesis p 1 ∧ p 2 ∧ … ∧ p n, if the enlarged hypothesis p 1 ∧ p 2 ∧ … ∧ p n ∧ (~q) implies a contradiction, then we can conclude that q follows from p 1,p 2, … and p n Method of Proof 49

School of Software  Example 7 Prove there is no rational number a/b whose square is 2, namely, sqrt(2) is irrational. Solution: Let p: a, b are integers and no common factors, and b is not 0 q: (a/b) 2 is not 2 In order to prove p => q, We try to find the contradiction from p ∧ ~q Refer to Example 7 for more details Method of Proof 50

School of Software  Example 9: Prove or disprove the statement that if x and y are real numbers, (x 2 =y 2 )  (x=y) Solution: Since (1) 2 =(-1) 2, but -1 ≠ 1, the result is false. Our example is called counterexample, and any other counterexample would do just as well. Note: If a statement claims that a property holds for all objects of a certain type, then to prove it, we must use steps that are valid for all objects of that type and that do not make references to any particular object. To disprove such a statement, we need only show one counterexample Method of Proof 51

School of Software  Homework Ex. 6, Ex. 8, Ex. 9 Ex. 19, Ex. 20 Ex. 31, Ex Method of Proof 52

School of Software  To Prove ∀ n>n 0 P(n) where n 0 is some fixed integer Two Steps: 1) Basis Step Prove that P(n 0 ) is true 2) Induction Step Prove that P(k) => P(k+1) is a tautology (if P(k) is true, then P(k+1) must be true) 2.4 Mathematical Induction 53

School of Software  Example 1: Prove that for all n> …+n = n(n+1)/2 Solution: let P(n)=n(n+1)/2 Basis step: P(1) = 1 = 1*2/2=1 is true. Induction Step: assuming P(k) is true, then P(k+1) = … + k +(k+1) = P(k) +(k+1) = k (k+1)/2 +(k+1) P(k) is true = (k+1)(k+2)/2 = P(k+1) 2.4 Mathematical Induction 54

School of Software  Example 3: Prove any finite, nonempty set is countable (the elements can be arranged in a list) Solution: Let P(n) be the predicate that if A is any set with |A|=n>0, then A is countable Basis Step: P(1) is true ( A ={x} ) Induction Step: assuming P(k) is true Let B denotes any finite, nonempty set with k+1 elements. We first pick any element x in B, then B-{x} is a set with k elements, and it is countable (P(k) is true), and listed by x 1,x 2,…x k. Then we can also list the elements of B as x 1,x 2,…x k, x (P(k+1) is true) 2.4 Mathematical Induction 55

School of Software  Example 5: Consider the following function given in pseudocode Function SQ(A) 1. C < - 0 2. D < - 0 3. WHILE (D is not A) a. C < - C+A b. D < - D+1 4. RETURN (C) End of Function SQ 2.4 Mathematical Induction 56

School of Software  Strong Induction 2.4 Mathematical Induction 57 Weak InductionStrong Induction Basis StepP(n o ) is true (or the first several statements are true) P(n o ) is true (or the first several statements are true) Induction StepP(k)  P(k+1) is a tautology P(n0) ∧ P(n1) ∧ … P(k)  P(k+1) is a tautology

School of Software  Example 7: Prove that every positive integer n>1 can be written uniquely as p 1 a1 p 2 a2 …p s as, where p i are primes and p 1 <p 2 <..P s Basis Step : P(2) is true, since 2 is prime and 2 = 2 1 (unique ) Induction Step: Assuming P(2), P(3), … P(k) are true if k+1 is prime, then k+1= (k+1) 1 if k+1 is not prime, then we let k+1=Lm, where L, m are positive integers less than k+1. Using P(L) and P(m) are true, we have k+1=Lm= q 1 b1 q 2 b2 …q s bs (unique form) Why? Proof by contradiction 2.4 Mathematical Induction 58

School of Software  Homework Ex. 2, Ex. 14, Ex. 17, Ex. 22, Ex Mathematical Induction 59