author | huffman |
Mon, 08 Mar 2010 11:34:53 -0800 | |
changeset 35655 | e8e4af6da819 |
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