author | haftmann |
Tue, 10 Oct 2006 13:59:12 +0200 | |
changeset 20950 | 981fa0ce23ed |
parent 16417 | 9bc16273c2d4 |
permissions | -rw-r--r-- |
theory FP0 imports PreList begin datatype 'a list = Nil ("[]") | Cons 'a "'a list" (infixr "#" 65) consts app :: "'a list \<Rightarrow> 'a list \<Rightarrow> 'a list" (infixr "@" 65) rev :: "'a list \<Rightarrow> 'a list" primrec "[] @ ys = ys" "(x # xs) @ ys = x # (xs @ ys)" primrec "rev [] = []" "rev (x # xs) = (rev xs) @ (x # [])" theorem rev_rev [simp]: "rev(rev xs) = xs" (*<*)oops(*>*)text_raw{*\isanewline\isanewline*} end