Use the definition of the function and just a little bit of algebra. Criteria for Success: You have clearly written down all three steps of the inductive proof. Your proof contains complete sentences which explain all the steps and the algebra.
Consider the function
f :: Int -> Int
f n = if n==0
then 0
else 1 + (f(n-1))
Use induction to show that the function f returns the value of n for all possible inputs n ≥0.
Here are the steps:
1. Verify that f 0 returns 0 to show the base case.
2. Show that if f(n-1) returns n −1 then f n returns n.
3. Since you have shown the base case and the induction step, you can confidently
state that the function works for all possible nonnegative input values.
Hint: To show that ”if f(n-1) returns n −1 then f n returns n” is valid you need to
assume that f(n-1) returns n −1 and then argue that it must follow that f n returns
n. Use the definition of the function and just a little bit of algebra.
Criteria for Success: You have clearly written down all three steps of the inductive proof. Your proof contains complete sentences which explain all the steps and
the algebra. I don’t want to see just a bunch of symbols on a page!
Step by step
Solved in 2 steps with 1 images