Zhixun Tan

By Induction on the Derivation of...

21 Dec 2016

We all (hopefully) have seen mathematical induction in high school (or junior high school). By having a base case and an inductive step, we can prove that a theorem which involves a natural number holds for any natural number.

Here’s a typical example.

Theorem: Let , then .

Proof: By induction on .

Q.E.D.

The key of success is that is inductively / recursively defined. The relation allows us to build up a solution to a bigger problem from a solution to a smaller one.

A lot of things are defined in this way. We might want to expand mathematical induction to build up a mechanism of inductive reasoning on other kinds of objects.

1. Definition of Natural Numbers

We use the following two inference rules to inductively define natural numbers.

First, notation. A rule always has a horizontal bar. Anything on top of the bar (there could be 0 or more) is called a premise. The thing below the bar (there could only be exactly one) is called the conclusion. A rule name can be given on the right of the bar.

The meaning of the above two rules is as follows:

Given these two rules, we can already prove some interesting results. For example, we can prove that (what we call “3” in our daily life) is a natural number:

Note that I’ve put quotes on the word “know”. What do we mean by saying we know something?

It turns out that in the verificationist’s view, which we will take, to say something is true is to say we have a proof of it. The proof must be in the form of using a given set of rules (like the two rules in our example).

Think about it in this way: suppose I am a function that is capable of doing something on a term . However, I am desperately dependent on the fact that is a natural number. That is, I need to take in a argument that somehow encodes the fact that is a natural number, and use it.

The verificationist’s view says that my argument must contain the proof, because to say something is true is to present a proof. It is meaningless to just “point out” the truth.

2. Structural Induction

The verificationist’s view gives us a strong tool of proving things: structural induction. Let’s see an example.

We know that natural numbers can be even or odd. Let’s define them using the following rules:

Now, an interesting theorem might be: If , then either or .

Note that this theorem is extremely powerful. It isn’t limited to a finite set of natural numbers, it works on all natural numbers. How do we even prove this?

Recall that in the verificationist’s view, a proof is the only way of convincing us that something is true. Therefore, we must provide a proof for either or , “given the fact” that .

However, by “given the fact”, we are promised that we will be provided with a proof for .

Therefore, our task becomes:

Now, if we look very hard at the definition of , we can see that it is recursive. It is then very natural to think that our transformation function might be recursive too, which is acturally the case.

Suppose we are given a proof of , then what could possibly the last step of it? There can only be two cases:

  1. The last step is

    and ;

  2. The last step is

    and .

If we have case 1, then we can use the rule to construct a proof for , which is just . This is the easy case.

If we have case 2, things get a little bit tricky. We seem to only have access to the last step of the proof. However, with the power of recursion, we can still tackle this case.

We pass as argument, and call our transformation function recursively, which will give us a proof of either or .

If we have got , then by using , we get ;

If we have got , then by using , we get .

With that in mind, let’s show the complete, formal proof:

3. The Complete Proof

By induction on the derivation of .

4. Addition

Note that our “even or odd theorem” still involves a single natural number. The proof doesn’t differ too much from a mathematical induction proof. Now let’s add some new tastes to our natural numbers, and try to prove something more complicated.

Let’s define addition of two natural numbers as follows. We’ll use to denote .

Lemma 1: For any , if , then .

Proof of Lemma 1:

By induction on the derivation of .

Lemma 2: For any , if , then .

Proof of Lemma 2:

By induction on the derivation of .

Theorem 3 (Commutative Property of Addition): For any , , and , if , then .

Proof of Theorem 3:

By induction on the derivation of .

Read More

Tweet
comments powered by Disqus