author | paulson |
Tue, 26 Sep 2006 11:11:57 +0200 | |
changeset 20711 | 8b52cdaee86c |
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