Mathematical Induction
|
|
- Alexia Singleton
- 5 years ago
- Views:
Transcription
1 Mathematical Induction COM1022 Functional Programming Techniques Professor Steve Schneider University of Surrey Semester 2, 2010 Week 10 Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week 10 1 / 22
2 Outline 1 Mathemtical induction exercises 2 List Induction 3 Structural Induction over algebraic types Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week 10 2 / 22
3 Mathemtical induction exercises Review: The principle of induction If P(0) and P(n) P(n + 1) for all n Then we can conclude n.p(n) An infinite sequence of dominoes... Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week 10 3 / 22
4 Exercises Mathemtical induction exercises These exercises were set last week in place of the lab: Prove each of the following by induction: n = 2 (n+1) 1 for all n n 2 = (n(n+1)(2n+1)) 6 for all n 4 n + 6n 1 is divisible by 9 for all n Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week 10 4 / 22
5 List Induction Proving statements about lists How do we understand what a function on lists does? [Thompson Chapter 8]. Example: length [] = 0 length (x:xs) = 1 + length xs Is it true that length (xs ++ ys) = length xs + length ys If so, how do we prove it? Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week 10 5 / 22
6 List Induction List induction In order to prove a logical property P(xs) holds for all finite lists xs we have to prove two things: Base case: prove P([]) Inductive step: Prove P(x:xs) on the assumption that P(xs) holds. The idea is similar to mathematical induction, (which allows proofs for finite numbers, i.e. positive integers) Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week 10 6 / 22
7 List Induction Setting up the induction For our example, we will use P(xs) to be length (xs++ys) = length xs + length ys for any ys. We will prove this by induction on xs Also need to use the definition of ++: [] ++ xs = xs (x:xs) ++ ys = x:(xs ++ ys) Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week 10 7 / 22
8 Base case: P([]) List Induction We need to prove length ([]++ys) = length [] + length ys for any ys. By the Haskell definitions, this reduces to length ys = 0 + length ys for any ys. and this is clearly true. Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week 10 8 / 22
9 List Induction Inductive Step: P(xs) P(x:xs) Assume that length (xs++ys) = length xs + length ys for any ys Now we need to consider whether P(x:xs) is true. length((x : xs) + +ys) = length (x:(xs++ys)) = 1 + length (xs++ys) = 1 + (length xs + length ys) (since P(xs) is assumed) = (1 + length xs) + length ys = length (x:xs) + length ys Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week 10 9 / 22
10 List Induction Exercise Prove by list induction that: xs ++ [] = xs for all xs Base case Inductive step You will need to use the definitions for ++ Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
11 List Induction Another example The function reverse is defined as follows: reverse [] = [] reverse (x:xs) = (reverse xs) ++ [x] Prove by list induction over xs that: reverse (xs ++ ys) = reverse ys ++ reverse xs Base case Inductive step Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
12 Structural Induction over algebraic types Recursive algebraic types A recursive type is defined in terms of itself. For example, a type for trees can be defined as follows: data NTree = NilT Node Int NTree NTree An NTree is defined to be either the empty tree NTree or else a node containing an integer and two subtrees. [see Thompson 14.2] We will use tt NTree as the running example, but the principles hold for any recursive data type. Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
13 Question Structural Induction over algebraic types Draw some NTrees. For each tree, how many nodes does it contain? How many occurrences of NilT? Can you identify a relationship between the number of nodes and the number of occurrences of NilT? Is this true for all trees? How would you prove that you have got it right? Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
14 Structural Induction over algebraic types Structural induction over trees In order to prove a logical property P(tr) holds for all trees tr we have to prove two things: Base case prove P(NilT) Inductive step Prove P(Node x tr1 tr2), on the assumption that P(tr1) and P(tr2) hold. Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
15 Structural Induction over algebraic types Exercise: Characterising the property Define the number of nils and the number of nodes by completing the following functions: nils (NilT) =... nils (Node x tr1 tr2) =... nodes (NilT) =... nodes (Node x tr1 tr2) =... Express the property in terms of nils and nodes: P(tr) =??? Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
16 Structural Induction over algebraic types Base case Prove the property P(NilT). Use the definitions of nils NilT and nodes NilT Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
17 Structural Induction over algebraic types Inductive step Assume P(tr1) and P(tr2) are true. Prove P(Node x tr1 tr2) using the definitions of nils and nodes Once the base case and the inductive step are both established, then the property is proven for all trees. Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
18 Structural Induction over algebraic types Exercise: height of tree and number of nodes height is defined as follows: height NilT = 0 height (Node x tr1 tr2) = 1 + max(height tr1, height tr2) Prove that height tr nodes tr for all trees tr What is the base case? Prove the inductive step Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
19 Structural Induction over algebraic types Example: height of tree and number of nodes Prove that nodes tr 2 height tr 1 for all trees tr Base case: nodes NilT = 0 height NilT = , which establishes the base case. Inductive step: assume true for tr1 and tr2 See next slide... Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
20 Inductive step Structural Induction over algebraic types nodes(node x tr1 tr2) = 1 + (nodes tr1) + (nodes tr2) 1 + (2 height tr1 1) + (2 height tr2 1) 1 + (2 max(height tr1)(height tr2) 1) + (2 max(height tr1)(height tr2) 1) (2 2 max(height tr1)(height tr2) ) 1 (2 max(height tr1)(height tr2)+1 ) 1 = 2 height (Node x tr1 tr2) 1 Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
21 Structural Induction over algebraic types Summary Structural induction (for lists, trees, and any other recursive data types) to prove a property P(x) for all objects x of that type: Base case: prove P(x) holds for all clauses of the type which are not recursive, i.e. which do not have components of that type. Inductive step: for all clauses of the type which do refer recursively to the type, prove that P holds for any instance x of that case under the assumption that it holds for the components of x which are of that type. This is also the principle for list induction. Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
22 Structural Induction over algebraic types This week s exercise data STree = Leaf Int Node STree STree elements (Leaf a) = 1 elements (Node tr1 tr2) = elements tr1 + elements tr2 elementlist (Leaf a) = [a] elementlist (Node tr1 tr2) = (elementlist tr1) ++ (elementlist tr2) Prove that elements tr = length (elementlist tr) for all STrees tr Professor Steve Schneider Mathematical Induction Semester 2, 2010 Week / 22
Mathematical Induction Assignments
1 Mathematical Induction Assignments Prove the Following using Principle of Mathematical induction 1) Prove that for any positive integer number n, n 3 + 2 n is divisible by 3 2) Prove that 1 3 + 2 3 +
More informationFinite Automata Theory and Formal Languages TMV027/DIT321 LP Recap: Logic, Sets, Relations, Functions
Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2017 Formal proofs; Simple/strong induction; Mutual induction; Inductively defined sets; Recursively defined functions. Lecture 3 Ana Bove
More informationCS1800: Mathematical Induction. Professor Kevin Gold
CS1800: Mathematical Induction Professor Kevin Gold Induction: Used to Prove Patterns Just Keep Going For an algorithm, we may want to prove that it just keeps working, no matter how big the input size
More informationDiscrete Mathematics. Spring 2017
Discrete Mathematics Spring 2017 Previous Lecture Principle of Mathematical Induction Mathematical Induction: rule of inference Mathematical Induction: Conjecturing and Proving Climbing an Infinite Ladder
More informationMathematical Induction. Rosen Chapter 4.1,4.2 (6 th edition) Rosen Ch. 5.1, 5.2 (7 th edition)
Mathematical Induction Rosen Chapter 4.1,4.2 (6 th edition) Rosen Ch. 5.1, 5.2 (7 th edition) Motivation Suppose we want to prove that for every value of n: 1 + 2 + + n = n(n + 1)/2. Let P(n) be the predicate
More informationAnalyse et Conception Formelle. Lesson 4. Proofs with a proof assistant
Analyse et Conception Formelle Lesson 4 Proofs with a proof assistant T. Genet (ISTIC/IRISA) ACF-4 1 / 26 Prove logic formulas... to prove programs fun nth:: "nat => a list => a" where "nth 0 (x#_)=x"
More informationModels of Computation,
Models of Computation, 2010 1 Induction We use a lot of inductive techniques in this course, both to give definitions and to prove facts about our semantics So, it s worth taking a little while to set
More informationInduction and Recursion
Induction and Recursion Prof. Clarkson Fall 2016 Today s music: Dream within a Dream from the soundtrack to Inception by Hans Zimmer Review Previously in 3110: Behavioral equivalence Proofs of correctness
More informationDiscrete Mathematics Review
CS 1813 Discrete Mathematics Discrete Mathematics Review or Yes, the Final Will Be Comprehensive 1 Truth Tables for Logical Operators P Q P Q False False False P Q False P Q False P Q True P Q True P True
More informationMid-Semester Quiz Second Semester, 2012
THE AUSTRALIAN NATIONAL UNIVERSITY Mid-Semester Quiz Second Semester, 2012 COMP2600 (Formal Methods for Software Engineering) Writing Period: 1 hour duration Study Period: 10 minutes duration Permitted
More informationProof Techniques (Review of Math 271)
Chapter 2 Proof Techniques (Review of Math 271) 2.1 Overview This chapter reviews proof techniques that were probably introduced in Math 271 and that may also have been used in a different way in Phil
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 informationContradiction MATH Contradiction. Benjamin V.C. Collins, James A. Swenson MATH 2730
MATH 2730 Contradiction Benjamin V.C. Collins James A. Swenson Contrapositive The contrapositive of the statement If A, then B is the statement If not B, then not A. A statement and its contrapositive
More informationCS 220: Discrete Structures and their Applications. Mathematical Induction in zybooks
CS 220: Discrete Structures and their Applications Mathematical Induction 6.4 6.6 in zybooks Why induction? Prove algorithm correctness (CS320 is full of it) The inductive proof will sometimes point out
More informationICS141: Discrete Mathematics for Computer Science I
ICS141: Discrete Mathematics for Computer Science I Dept. Information & Computer Sci., Jan Stelovsky based on slides by Dr. Baek and Dr. Still Originals by Dr. M. P. Frank and Dr. J.L. Gross Provided by
More informationInduction. Induction. Induction. Induction. Induction. Induction 2/22/2018
The principle of mathematical induction is a useful tool for proving that a certain predicate is true for all natural numbers. It cannot be used to discover theorems, but only to prove them. If we have
More informationMathematical Induction
Mathematical Induction MAT30 Discrete Mathematics Fall 018 MAT30 (Discrete Math) Mathematical Induction Fall 018 1 / 19 Outline 1 Mathematical Induction Strong Mathematical Induction MAT30 (Discrete Math)
More informationINDUCTION AND RECURSION. Lecture 7 - Ch. 4
INDUCTION AND RECURSION Lecture 7 - Ch. 4 4. Introduction Any mathematical statements assert that a property is true for all positive integers Examples: for every positive integer n: n!
More informationDecision Trees. Lewis Fishgold. (Material in these slides adapted from Ray Mooney's slides on Decision Trees)
Decision Trees Lewis Fishgold (Material in these slides adapted from Ray Mooney's slides on Decision Trees) Classification using Decision Trees Nodes test features, there is one branch for each value of
More informationOutline. Computer Science 331. Cost of Binary Search Tree Operations. Bounds on Height: Worst- and Average-Case
Outline Computer Science Average Case Analysis: Binary Search Trees Mike Jacobson Department of Computer Science University of Calgary Lecture #7 Motivation and Objective Definition 4 Mike Jacobson (University
More informationCSC236H Lecture 2. Ilir Dema. September 19, 2018
CSC236H Lecture 2 Ilir Dema September 19, 2018 Simple Induction Useful to prove statements depending on natural numbers Define a predicate P(n) Prove the base case P(b) Prove that for all n b, P(n) P(n
More informationSum of Squares. Defining Functions. Closed-Form Expression for SQ(n)
CS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims Lecture 22: Induction Overview Recursion A programming strategy that solves a problem by reducing it to simpler
More informationCSC236 Week 3. Larry Zhang
CSC236 Week 3 Larry Zhang 1 Announcements Problem Set 1 due this Friday Make sure to read Submission Instructions on the course web page. Search for Teammates on Piazza Educational memes: http://www.cs.toronto.edu/~ylzhang/csc236/memes.html
More informationIn-Class Soln 1. CS 361, Lecture 4. Today s Outline. In-Class Soln 2
In-Class Soln 1 Let f(n) be an always positive function and let g(n) = f(n) log n. Show that f(n) = o(g(n)) CS 361, Lecture 4 Jared Saia University of New Mexico For any positive constant c, we want to
More informationMethods for solving recurrences
Methods for solving recurrences Analyzing the complexity of mergesort The merge function Consider the following implementation: 1 int merge ( int v1, int n1, int v, int n ) { 3 int r = malloc ( ( n1+n
More informationAutomated Reasoning Lecture 17: Inductive Proof (in Isabelle)
Automated Reasoning Lecture 17: Inductive Proof (in Isabelle) Jacques Fleuriot jdf@inf.ed.ac.uk Recap Previously: Unification and Rewriting This time: Proof by Induction (in Isabelle) Proof by Mathematical
More informationFundamental Algorithms
Fundamental Algorithms Chapter 5: Searching Michael Bader Winter 2014/15 Chapter 5: Searching, Winter 2014/15 1 Searching Definition (Search Problem) Input: a sequence or set A of n elements (objects)
More informationProblem. Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26
Binary Search Introduction Problem Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26 Strategy 1: Random Search Randomly select a page until the page containing
More informationNotes on Inductive Sets and Induction
Notes on Inductive Sets and Induction Finite Automata Theory and Formal Languages TMV027/DIT21 Ana Bove, March 15th 2018 Contents 1 Induction over the Natural Numbers 2 1.1 Mathematical (Simple) Induction........................
More informationNumbers. 2.1 Integers. P(n) = n(n 4 5n 2 + 4) = n(n 2 1)(n 2 4) = (n 2)(n 1)n(n + 1)(n + 2); 120 =
2 Numbers 2.1 Integers You remember the definition of a prime number. On p. 7, we defined a prime number and formulated the Fundamental Theorem of Arithmetic. Numerous beautiful results can be presented
More informationChapter 4. Declarative Interpretation
Chapter 4 1 Outline Algebras (which provide a semantics of terms) Interpretations (which provide a semantics of programs) Soundness of SLD-resolution Completeness of SLD-resolution Least Herbrand models
More informationCS1800: Strong Induction. Professor Kevin Gold
CS1800: Strong Induction Professor Kevin Gold Mini-Primer/Refresher on Unrelated Topic: Limits This is meant to be a problem about reasoning about quantifiers, with a little practice of other skills, too
More informationSequences & Mathematical Induction
Lecture Notes on Sequences & Mathematical Induction. Birzeit University, Palestine, 015 Sequences & Mathematical Induction Mustafa Jarrar 5.1 Sequences 5.&3 Mathematical Induction اﻻﺳﺗﻘراء اﻟرﯾﺎﺿﻲ mjarrar
More informationStrong Induction (Second Principle) Example: There are two piles of cards, players take turn: each turn: one player removes any number of cards from
Strong Induction (Second Principle) Example: There are two piles of cards, players take turn: each turn: one player removes any number of cards from 1 pile (any of the two). The player who removes the
More informationT02 Tutorial Slides for Week 6
T02 Tutorial Slides for Week 6 ENEL 353: Digital Circuits Fall 2017 Term Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary 17 October, 2017
More informationCS 151. Red Black Trees & Structural Induction. Thursday, November 1, 12
CS 151 Red Black Trees & Structural Induction 1 Announcements Majors fair tonight 4:30-6:30pm in the Root Room in Carnegie. Come and find out about the CS major, or some other major. Winter Term in CS
More informationCSI Mathematical Induction. Many statements assert that a property of the form P(n) is true for all integers n.
CSI 2101- Mathematical Induction Many statements assert that a property of the form P(n) is true for all integers n. Examples: For every positive integer n: n! n n Every set with n elements, has 2 n Subsets.
More informationPredicate Logic: Syntax
Predicate Logic: Syntax Alice Gao Lecture 12 Based on work by J. Buss, L. Kari, A. Lubiw, B. Bonakdarpour, D. Maftuleac, C. Roberts, R. Trefler, and P. Van Beek 1/31 Outline Syntax of Predicate Logic Learning
More information21 Induction. Tom Lewis. Fall Term Tom Lewis () 21 Induction Fall Term / 14
21 Induction Tom Lewis Fall Term 2010 Tom Lewis () 21 Induction Fall Term 2010 1 / 14 Outline 1 The method of induction 2 Strong mathematical induction Tom Lewis () 21 Induction Fall Term 2010 2 / 14 Pessimists
More informationOutline. We will cover (over the next few weeks) Induction Strong Induction Constructive Induction Structural Induction
Outline We will cover (over the next few weeks) Induction Strong Induction Constructive Induction Structural Induction Induction P(1) ( n 2)[P(n 1) P(n)] ( n 1)[P(n)] Why Does This Work? I P(1) ( n 2)[P(n
More informationInduction 1 = 1(1+1) = 2(2+1) = 3(3+1) 2
Induction 0-8-08 Induction is used to prove a sequence of statements P(), P(), P(3),... There may be finitely many statements, but often there are infinitely many. For example, consider the statement ++3+
More informationModule 9: Mathematical Induction
Module 9: Mathematical Induction Module 9: Announcements There is a chance that this Friday s class may be cancelled. Assignment #4 is due Thursday March 16 th at 4pm. Midterm #2 Monday March 20 th, 2017
More information1.2 The Well-Ordering Principle
36 Chapter 1. The Integers Exercises 1.1 1. Prove the following theorem: Theorem. Let m and a be integers. If m a and a m, thenm = ±a. 2. Prove the following theorem: Theorem. For all integers a, b and
More informationLecture 4: Probability, Proof Techniques, Method of Induction Lecturer: Lale Özkahya
BBM 205 Discrete Mathematics Hacettepe University http://web.cs.hacettepe.edu.tr/ bbm205 Lecture 4: Probability, Proof Techniques, Method of Induction Lecturer: Lale Özkahya Resources: Kenneth Rosen, Discrete
More informationProblem Set 5 Solutions
Problem Set 5 Solutions Section 4.. Use mathematical induction to prove each of the following: a) For each natural number n with n, n > + n. Let P n) be the statement n > + n. The base case, P ), is true
More informationCOM S 330 Homework 08 Solutions. Type your answers to the following questions and submit a PDF file to Blackboard. One page per problem.
COM S 0 Homework 08 Solutions Type your answers to the following questions and submit a PDF file to Blackboard. One page per problem. Problem 1. [10pts] Let M = (S, T, s 0 ) be the state machine where
More informationDeclarative Programming Techniques
Declarative Programming Techniques Accumulators and Difference Lists (CTM 3.4.3-3.4.4) Carlos Varela RPI Adapted with permission from: Seif Haridi KTH Peter Van Roy UCL February 12, 2015 C. Varela; Adapted
More informationcse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska
cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 1 Course Web Page www3.cs.stonybrook.edu/ cse303 The webpage contains: lectures notes slides; very detailed solutions to
More informationInduction. Announcements. Overview. Defining Functions. Sum of Squares. Closed-form expression for SQ(n) There have been some corrections to A1
Induction There have been some corrections to A1 Check the website and the newsgroup Announcements Upcoming topic: Recursion Lecture 3 CS 211 Fall 2005 Overview Recursion a programming strategy that solves
More informationClimbing an Infinite Ladder
Section 5.1 Section Summary Mathematical Induction Examples of Proof by Mathematical Induction Mistaken Proofs by Mathematical Induction Guidelines for Proofs by Mathematical Induction Climbing an Infinite
More informationConjectures and proof. Book page 24-30
Conjectures and proof Book page 24-30 What is a conjecture? A conjecture is used to describe a pattern in mathematical terms When a conjecture has been proved, it becomes a theorem There are many types
More informationComp487/587 - Boolean Formulas
Comp487/587 - Boolean Formulas 1 Logic and SAT 1.1 What is a Boolean Formula Logic is a way through which we can analyze and reason about simple or complicated events. In particular, we are interested
More informationPREDICATE LOGIC: UNDECIDABILITY AND INCOMPLETENESS HUTH AND RYAN 2.5, SUPPLEMENTARY NOTES 2
PREDICATE LOGIC: UNDECIDABILITY AND INCOMPLETENESS HUTH AND RYAN 2.5, SUPPLEMENTARY NOTES 2 Neil D. Jones DIKU 2005 14 September, 2005 Some slides today new, some based on logic 2004 (Nils Andersen) OUTLINE,
More informationMathematical Induction
Mathematical Induction MAT231 Transition to Higher Mathematics Fall 2014 MAT231 (Transition to Higher Math) Mathematical Induction Fall 2014 1 / 21 Outline 1 Mathematical Induction 2 Strong Mathematical
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 informationMathematical Induction
Mathematical Induction Let s motivate our discussion by considering an example first. What happens when we add the first n positive odd integers? The table below shows what results for the first few values
More information3. Branching Algorithms COMP6741: Parameterized and Exact Computation
3. Branching Algorithms COMP6741: Parameterized and Exact Computation Serge Gaspers 12 1 School of Computer Science and Engineering, UNSW Australia 2 Optimisation Resarch Group, NICTA Semester 2, 2015
More informationLecture 3.2: Induction, and Strong Induction
Lecture 3.2: Induction, and Strong Induction CS 250, Discrete Structures, Fall 2015 Nitesh Saxena Adopted from previous lectures by Cinda Heeren, Zeph Grunschlag Course Admin Mid-Term 1 Graded; to be returned
More informationAssignment 1 Solutions Structural Induction and First-Order Logic Due: 11am on Monday 26th August 2013
Deartment of Comuter Science, Australian National University COMP2600 Formal Methods in Software Engineering Semester 2, 2013 Assignment 1 Solutions Structural Induction and First-Order Logic Due: 11am
More informationMAT 300 RECITATIONS WEEK 7 SOLUTIONS. Exercise #1. Use induction to prove that for every natural number n 4, n! > 2 n. 4! = 24 > 16 = 2 4 = 2 n
MAT 300 RECITATIONS WEEK 7 SOLUTIONS LEADING TA: HAO LIU Exercise #1. Use induction to prove that for every natural number n 4, n! > 2 n. Proof. For any n N with n 4, let P (n) be the statement n! > 2
More informationV. Adamchik 1. Recurrences. Victor Adamchik Fall of 2005
V. Adamchi Recurrences Victor Adamchi Fall of 00 Plan Multiple roots. More on multiple roots. Inhomogeneous equations 3. Divide-and-conquer recurrences In the previous lecture we have showed that if the
More informationReasoning about Programs
Reasoning about Programs Jeremy Bradley and Francesca Toni Room 372. Office hour - Tuesdays at noon. Email: jb@doc.ic.ac.uk Department of Computing, Imperial College London Produced with prosper and L
More informationMathematical Structures Combinations and Permutations
Definitions: Suppose S is a (finite) set and n, k 0 are integers The set C(S, k) of k - combinations consists of all subsets of S that have exactly k elements The set P (S, k) of k - permutations consists
More informationPRINCIPLE OF MATHEMATICAL INDUCTION
Chapter 4 PRINCIPLE OF MATHEMATICAL INDUCTION 4.1 Overview Mathematical induction is one of the techniques which can be used to prove variety of mathematical statements which are formulated in terms of
More informationAnnouncements. Read Section 2.1 (Sets), 2.2 (Set Operations) and 5.1 (Mathematical Induction) Existence Proofs. Non-constructive
Announcements Homework 2 Due Homework 3 Posted Due next Monday Quiz 2 on Wednesday Read Section 2.1 (Sets), 2.2 (Set Operations) and 5.1 (Mathematical Induction) Exam 1 in two weeks Monday, February 19
More informationHomework #2 Solutions Due: September 5, for all n N n 3 = n2 (n + 1) 2 4
Do the following exercises from the text: Chapter (Section 3):, 1, 17(a)-(b), 3 Prove that 1 3 + 3 + + n 3 n (n + 1) for all n N Proof The proof is by induction on n For n N, let S(n) be the statement
More information3.5 Solving Equations Involving Integers II
208 CHAPTER 3. THE FUNDAMENTALS OF ALGEBRA 3.5 Solving Equations Involving Integers II We return to solving equations involving integers, only this time the equations will be a bit more advanced, requiring
More information(Ordinary) mathematical induction is a way to prove things about natural numbers. We can write it as a rule: φ(0) x. φ(x) φ(succ(x)) x.
1 Ordinary Induction (Ordinary) mathematical induction is a way to prove things about natural numbers. We can write it as a rule: φ(0) x. φ(x) φ(succ(x)) x. φ(x) where φ(x) is a statement involving a number
More informationJan A. Bergstra and Alban Ponse. Informatics Institute, section Theory of Computer Science University of Amsterdam
Datatype defining rewrite systems for the ring of integers, and for natural and integer arithmetic in unary view arxiv:1608.06212v1 [cs.lo] 22 Aug 2016 Jan A. Bergstra and Alban Ponse Informatics Institute,
More informationBinary Decision Diagrams. Graphs. Boolean Functions
Binary Decision Diagrams Graphs Binary Decision Diagrams (BDDs) are a class of graphs that can be used as data structure for compactly representing boolean functions. BDDs were introduced by R. Bryant
More informationDeclarative Programming Techniques
Declarative Programming Techniques Accumulators (CTM 3.4.3) Difference Lists (CTM 3.4.4) Carlos Varela RPI Adapted with permission from: Seif Haridi KTH Peter Van Roy UCL December 1, 2015 C. Varela; Adapted
More informationLecture 2: Proof of Switching Lemma
Lecture 2: oof of Switching Lemma Yuan Li June 25, 2014 1 Decision Tree Instead of bounding the probability that f can be written as some s-dnf, we estimate the probability that f can be computed by a
More informationTheory of Computation
Theory of Computation (Feodor F. Dragan) Department of Computer Science Kent State University Spring, 2018 Theory of Computation, Feodor F. Dragan, Kent State University 1 Before we go into details, what
More information1. (16 points) Circle T if the corresponding statement is True or F if it is False.
Name Solution Key Show All Work!!! Page 1 1. (16 points) Circle T if the corresponding statement is True or F if it is False. T F The sequence {1, 1, 1, 1, 1, 1...} is an example of an Alternating sequence.
More informationFinite Automata Theory and Formal Languages TMV027/DIT321 LP4 2017
Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2017 Lecture 4 Ana Bove March 24th 2017 Structural induction; Concepts of automata theory. Overview of today s lecture: Recap: Formal Proofs
More informationWith Question/Answer Animations
Chapter 5 With Question/Answer Animations Copyright McGraw-Hill Education. All rights reserved. No reproduction or distribution without the prior written consent of McGraw-Hill Education. Chapter Summary
More informationMathematical Induction. Defining Functions. Overview. Notation for recursive functions. Base case Sn(0) = 0 S(n) = S(n 1) + n for n > 0
Readings on induction. Mathematical Induction (a) Weiss, Sec. 7.2, page 233 (b) Course slides f lecture and notes recitation. Every criticism from a good man is of value to me. What you hint at generally
More informationFinite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018
Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018 Lecture 4 Ana Bove March 23rd 2018 Recap: Formal Proofs How formal should a proof be? Depends on its purpose...... but should be convincing......
More informationFormalizing Kruskal s Tree Theorem in Isabelle/HOL
Formalizing Kruskal s Tree Theorem in Isabelle/HOL Christian Sternagel JAIST July 5, 2012 Kickoff Meeting of Austria-Japan Joint Project Gamagori, Japan Kruskal s Tree Theorem If the set A is well-quasi-ordered
More information3 - Induction and Recursion
November 14, 2017 3 - Induction and Recursion William T. Trotter trotter@math.gatech.edu Using Recurrence Equations (1) Basic Problem How many regions are determined by n lines that intersect in general
More informationCS 250/251 Discrete Structures I and II Section 005 Fall/Winter Professor York
CS 250/251 Discrete Structures I and II Section 005 Fall/Winter 2013-2014 Professor York Practice Quiz March 10, 2014 CALCULATORS ALLOWED, SHOW ALL YOUR WORK 1. Construct the power set of the set A = {1,2,3}
More informationChapter 5: Integer Compositions and Partitions and Set Partitions
Chapter 5: Integer Compositions and Partitions and Set Partitions Prof. Tesler Math 184A Winter 2017 Prof. Tesler Ch. 5: Compositions and Partitions Math 184A / Winter 2017 1 / 32 5.1. Compositions A strict
More informationOutline. Week 5: Circuits. Course Notes: 3.5. Goals: Use linear algebra to determine voltage drops and branch currents.
Outline Week 5: Circuits Course Notes: 3.5 Goals: Use linear algebra to determine voltage drops and branch currents. Components in Resistor Networks voltage source current source resistor Components in
More information3. Branching Algorithms
3. Branching Algorithms COMP6741: Parameterized and Exact Computation Serge Gaspers Semester 2, 2015 Contents 1 Introduction 1 2 Maximum Independent Set 3 2.1 Simple Analysis................................................
More informationCSCE 222 Discrete Structures for Computing. Proof by Induction. Dr. Hyunyoung Lee. !!!!!! Based on slides by Andreas Klappenecker
CSCE 222 Discrete Structures for Computing Proof by Induction Dr. Hyunyoung Lee Based on slides by Andreas Klappenecker 1 Motivation Induction is an axiom which allows us to prove that certain properties
More informationTOC. Search Paradigms: And Tree Search. Formal Definitions. And-tree-based Search. Formal Definitions
TOC CPSC 33 - Artificial Intelligence Search Paradigms: And Tree Search Adapted from slides by Jörg Rob Kremer Denzinger ICT 8 kremer@cpsc.ucalgary.ca http://pages.cpsc.ucalgary.ca/~kremer/ Introduction
More informationBachelor/Master Exam Version V3B
Prof aadr Jürgen Giesl Cornelius Aschermann, Jera Hensel Bachelor/Master Exam Version V3B First Name: Last Name: Immatriculation Number: Course of Studies (please mark exactly one): Informatik Bachelor
More informationOutline. A recursive function follows the structure of inductively-defined data.
Outline A recursive function follows the structure of inductively-defined data. With lists as our example, we shall study 1. inductive definitions (to specify data) 2. recursive functions (to process data)
More informationModels of Computation. by Costas Busch, LSU
Models of Computation by Costas Busch, LSU 1 Computation CPU memory 2 temporary memory input memory CPU output memory Program memory 3 Example: f ( x) x 3 temporary memory input memory Program memory compute
More informationInduction and recursion. Chapter 5
Induction and recursion Chapter 5 Chapter Summary Mathematical Induction Strong Induction Well-Ordering Recursive Definitions Structural Induction Recursive Algorithms Mathematical Induction Section 5.1
More informationPredicate Logic - Introduction
Outline Motivation Predicate Logic - Introduction Predicates & Functions Quantifiers, Coming to Terms with Formulas Quantifier Scope & Bound Variables Free Variables & Sentences c 2001 M. Lawford 1 Motivation:
More informationChapter 5: Integer Compositions and Partitions and Set Partitions
Chapter 5: Integer Compositions and Partitions and Set Partitions Prof. Tesler Math 184A Fall 2017 Prof. Tesler Ch. 5: Compositions and Partitions Math 184A / Fall 2017 1 / 46 5.1. Compositions A strict
More informationWUCT121. Discrete Mathematics. Numbers
WUCT121 Discrete Mathematics Numbers 1. Natural Numbers 2. Integers and Real Numbers 3. The Principle of Mathematical Induction 4. Elementary Number Theory 5. Congruence Arithmetic WUCT121 Numbers 1 Section
More informationRecurrences COMP 215
Recurrences COMP 215 Analysis of Iterative Algorithms //return the location of the item matching x, or 0 if //no such item is found. index SequentialSearch(keytype[] S, in, keytype x) { index location
More informationSequences of Real Numbers
Chapter 8 Sequences of Real Numbers In this chapter, we assume the existence of the ordered field of real numbers, though we do not yet discuss or use the completeness of the real numbers. In the next
More informationTHE AUSTRALIAN NATIONAL UNIVERSITY Second Semester COMP2600 (Formal Methods for Software Engineering)
THE AUSTRALIAN NATIONAL UNIVERSITY Second Semester 2012 COMP2600 (Formal Methods for Software Engineering) Writing Period: 3 hours duration Study Period: 15 minutes duration Permitted Materials: One A4
More informationChapter Summary. Mathematical Induction Strong Induction Well-Ordering Recursive Definitions Structural Induction Recursive Algorithms
1 Chapter Summary Mathematical Induction Strong Induction Well-Ordering Recursive Definitions Structural Induction Recursive Algorithms 2 Section 5.1 3 Section Summary Mathematical Induction Examples of
More informationClimbing an Infinite Ladder
Section 5.1 Section Summary Mathematical Induction Examples of Proof by Mathematical Induction Mistaken Proofs by Mathematical Induction Guidelines for Proofs by Mathematical Induction Climbing an Infinite
More informationNote that r = 0 gives the simple principle of induction. Also it can be shown that the principle of strong induction follows from simple induction.
Proof by mathematical induction using a strong hypothesis Occasionally a proof by mathematical induction is made easier by using a strong hypothesis: To show P(n) [a statement form that depends on variable
More informationDecision Trees Entropy, Information Gain, Gain Ratio
Changelog: 14 Oct, 30 Oct Decision Trees Entropy, Information Gain, Gain Ratio Lecture 3: Part 2 Outline Entropy Information gain Gain ratio Marina Santini Acknowledgements Slides borrowed and adapted
More information