src/HOL/MicroJava/J/Example.thy
changeset 22271 51a80e238b29
parent 21404 eb85850d3eb7
child 23757 087b0a241557
--- a/src/HOL/MicroJava/J/Example.thy	Wed Feb 07 17:41:11 2007 +0100
+++ b/src/HOL/MicroJava/J/Example.thy	Wed Feb 07 17:44:07 2007 +0100
@@ -172,19 +172,19 @@
 apply (simp (no_asm))
 done
 
-lemma not_Object_subcls [elim!]: "(Object,C) \<in> (subcls1 tprg)^+ ==> R"
-apply (auto dest!: tranclD subcls1D)
+lemma not_Object_subcls [elim!]: "(subcls1 tprg)^++ Object C ==> R"
+apply (auto dest!: tranclD' subcls1D)
 done
 
 lemma subcls_ObjectD [dest!]: "tprg\<turnstile>Object\<preceq>C C ==> C = Object"
-apply (erule rtrancl_induct)
+apply (erule rtrancl_induct')
 apply  auto
 apply (drule subcls1D)
 apply auto
 done
 
-lemma not_Base_subcls_Ext [elim!]: "(Base, Ext) \<in> (subcls1 tprg)^+ ==> R"
-apply (auto dest!: tranclD subcls1D)
+lemma not_Base_subcls_Ext [elim!]: "(subcls1 tprg)^++ Base Ext ==> R"
+apply (auto dest!: tranclD' subcls1D)
 done
 
 lemma class_tprgD: 
@@ -193,11 +193,11 @@
 apply (auto split add: split_if_asm simp add: map_of_Cons)
 done
 
-lemma not_class_subcls_class [elim!]: "(C,C) \<in> (subcls1 tprg)^+ ==> R"
-apply (auto dest!: tranclD subcls1D)
+lemma not_class_subcls_class [elim!]: "(subcls1 tprg)^++ C C ==> R"
+apply (auto dest!: tranclD' subcls1D)
 apply (frule class_tprgD)
 apply (auto dest!:)
-apply (drule rtranclD)
+apply (drule rtranclD')
 apply auto
 done
 
@@ -205,7 +205,7 @@
 apply (simp (no_asm) add: ObjectC_def BaseC_def ExtC_def NullPointerC_def ClassCastC_def OutOfMemoryC_def)
 done
 
-lemmas subcls_direct = subcls1I [THEN r_into_rtrancl]
+lemmas subcls_direct = subcls1I [THEN r_into_rtrancl' [where r="subcls1 G"], standard]
 
 lemma Ext_subcls_Base [simp]: "tprg\<turnstile>Ext\<preceq>C Base"
 apply (rule subcls_direct)
@@ -219,12 +219,12 @@
 
 declare ty_expr_ty_exprs_wt_stmt.intros [intro!]
 
-lemma acyclic_subcls1_: "acyclic (subcls1 tprg)"
-apply (rule acyclicI)
+lemma acyclic_subcls1_: "acyclicP (subcls1 tprg)"
+apply (rule acyclicI [to_pred])
 apply safe
 done
 
-lemmas wf_subcls1_ = acyclic_subcls1_ [THEN finite_subcls1 [THEN finite_acyclic_wf_converse]]
+lemmas wf_subcls1_ = acyclic_subcls1_ [THEN finite_subcls1 [THEN finite_acyclic_wf_converse [to_pred]]]
 
 lemmas fields_rec_ = wf_subcls1_ [THEN [2] fields_rec_lemma]
 
@@ -345,7 +345,7 @@
 apply (fold ExtC_def)
 apply (rule mp) defer apply (rule wf_foo_Ext)
 apply (auto simp add: wf_mdecl_def)
-apply (drule rtranclD)
+apply (drule rtranclD')
 apply auto
 done