author | huffman |
Thu, 11 Jun 2009 19:44:39 -0700 | |
changeset 31570 | 784decc70e07 |
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