Quot/Examples/IntEx2.thy
changeset 692 c9231c2903bc
parent 691 cc3c55f56116
child 705 f51c6069cd17
--- a/Quot/Examples/IntEx2.thy	Thu Dec 10 08:44:01 2009 +0100
+++ b/Quot/Examples/IntEx2.thy	Thu Dec 10 08:55:30 2009 +0100
@@ -225,7 +225,7 @@
   shows "(op = ===> op \<approx>) int_of_nat_raw int_of_nat_raw"
 by (simp add: equivp_reflp[OF int_equivp])
 
-lemma int_def:
+lemma int_of_nat:
   shows "of_nat m = int_of_nat m"
 apply (induct m)
 apply (simp_all add: zero_int_def one_int_def int_of_nat_def int_of_nat_raw add)
@@ -303,26 +303,6 @@
 apply(simp_all add: left_distrib add_strict_mono)
 done
 
-lemma int_induct_raw:
-  assumes a: "P (0::nat, 0)"
-  and     b: "\<And>i. P i \<Longrightarrow> P (plus_raw i (1,0))"
-  and     c: "\<And>i. P i \<Longrightarrow> P (plus_raw i (uminus_raw (1,0)))"
-  shows      "P x"
-apply(case_tac x) apply(simp)
-apply(rule_tac x="b" in spec)
-apply(rule_tac Nat.induct)
-apply(rule allI)
-apply(rule_tac Nat.induct)
-using a b c apply(auto)
-done
-
-lemma int_induct:
-  assumes a: "P (0::int)"
-  and     b: "\<And>i. P i \<Longrightarrow> P (i + 1)"
-  and     c: "\<And>i. P i \<Longrightarrow> P (i + (- 1))"
-  shows      "P x"
-using a b c by (lifting int_induct_raw)
-
 lemma zero_le_imp_eq_int_raw:
   fixes k::"(nat \<times> nat)"
   shows "less_raw (0, 0) k \<Longrightarrow> (\<exists>n > 0. k \<approx> int_of_nat_raw n)"
@@ -335,8 +315,8 @@
 
 lemma zero_le_imp_eq_int:
   fixes k::int
-  shows "0 < k \<Longrightarrow> \<exists>n > 0. k = int_of_nat n"
-  unfolding less_int_def 
+  shows "0 < k \<Longrightarrow> \<exists>n > 0. k = of_nat n"
+  unfolding less_int_def int_of_nat
   by (lifting zero_le_imp_eq_int_raw)
 
 lemma zmult_zless_mono2: 
@@ -346,7 +326,6 @@
 using a
 using a
 apply(drule_tac zero_le_imp_eq_int)
-apply(fold int_def)
 apply(auto simp add: zmult_zless_mono2_lemma)
 done