helphome pageduck scriptspecificationfirst proof pagepage 3page 2 1 2 3 xclosing page

Inductive Properties of Lists, Part 2
The Doubly Reversed List Equation


We want to prove
( L1  : List  ) rev(rev(L1)) = L1 .
We use induction on L1 to prove this goal. For this, we use the induction scheme based on the signature { nil, cons } for List. Induction requires that we do the following:
  1. Base case: prove the assertion for L1 = nil .
  2. Induction case: assume the assertion for L1 = L0 , and then prove it for L1 = cons(N0 , L0) .

And thus the main goal is proved.

Explanation

The main point of note about this proof is that the lemma that it uses was discovered from the failed direct attempt for the original goal in our previous proofweb for the same result.

Note that, as on the previous proofpage, the associativity lemma is used in an implicit way, as an attribute of append.


BOBJ proof scoreLeft    Up    Down    Right   
 

       This page was generated by Kumo on Tue Feb 13 19:34:15 PST 2001.