doc-src/TutorialI/Misc/Plus.thy
author wenzelm
Wed, 06 Sep 2006 22:48:36 +0200
changeset 20487 6ac7a4fc32a0
parent 19249 86c73395c99b
child 27015 f8537d69f514
permissions -rw-r--r--
read_instantiate: declare names of TVars as well (temporary workaround for no-freeze feature of type inference);

(*<*)
theory Plus imports Main begin
(*>*)

text{*\noindent Define the following addition function *}

consts add :: "nat \<Rightarrow> nat \<Rightarrow> nat"
primrec
"add m 0 = m"
"add m (Suc n) = add (Suc m) n"

text{*\noindent and prove*}
(*<*)
lemma [simp]: "!m. add m n = m+n"
apply(induct_tac n)
by(auto)
(*>*)
lemma "add m n = m+n"
(*<*)
by(simp)

end
(*>*)