I try to learn Isabelle/HOL by working through this tutorial. I have a problem with the exercise about the double function. I defined it like this:
fun double :: "nat ⇒ nat" where
"double 0 = add 0 0" |
"double (Suc m) = Suc(Suc (double m))"
But when trying to prove that double m = add m m in my theorem:
theorem add_d [simp] : "double x = add x x"
apply(induction x)
apply(auto)
done
apply(auto) never gets evaluated (it's background is pink(?)). The same exercise asks to prove the commutativity and associativity of add and this worked ok. I am using Isabelle2014 with the default (Jedit) IDE.