IntEx.thy
changeset 572 a68c51dd85b3
parent 569 e121ac0028f8
child 582 a082e2d138ab
--- a/IntEx.thy	Sun Dec 06 02:41:35 2009 +0100
+++ b/IntEx.thy	Sun Dec 06 04:03:08 2009 +0100
@@ -147,15 +147,37 @@
 apply(rule refl)
 done
 
-abbreviation 
-  "Abs \<equiv> ABS_my_int"
-abbreviation 
-  "Rep \<equiv> REP_my_int"
-abbreviation 
-  "Resp \<equiv> Respects"
 
-thm apply_rsp rep_abs_rsp lambda_prs
-ML {* map (Pattern.pattern o bare_concl o prop_of) @{thms apply_rsp rep_abs_rsp lambda_prs} *}
+(*
+lemma yy:
+  "(REP_my_int ---> id)
+ (\<lambda>x. Ball (Respects op \<approx>)
+       ((ABS_my_int ---> id)
+         ((REP_my_int ---> id)
+           (\<lambda>b. (ABS_my_int ---> ABS_my_int ---> REP_my_int)
+                 ((REP_my_int ---> REP_my_int ---> ABS_my_int) my_plus)
+                 (REP_my_int (ABS_my_int x)) (REP_my_int (ABS_my_int b)) \<approx>
+                (ABS_my_int ---> ABS_my_int ---> REP_my_int)
+                 ((REP_my_int ---> REP_my_int ---> ABS_my_int) my_plus)
+                 (REP_my_int (ABS_my_int x)) (REP_my_int (ABS_my_int b)))))) =
+(\<lambda>x. Ball (Respects op \<approx>)
+     ((ABS_my_int ---> id)
+       ((REP_my_int ---> id)
+         (\<lambda>b. (ABS_my_int ---> ABS_my_int ---> REP_my_int)
+               ((REP_my_int ---> REP_my_int ---> ABS_my_int) my_plus) (REP_my_int x)
+               (REP_my_int (ABS_my_int b)) \<approx>
+              (ABS_my_int ---> ABS_my_int ---> REP_my_int)
+               ((REP_my_int ---> REP_my_int ---> ABS_my_int) my_plus) (REP_my_int x)
+               (REP_my_int (ABS_my_int b))))))"
+apply(tactic {* simp_tac (HOL_basic_ss addsimprocs [lambda_prs2 @{theory}]) 1*})
+
+apply(rule lambda_prs)
+apply(tactic {* quotient_tac @{context} 1 *})
+apply(simp add: id_simps)
+apply(tactic {* quotient_tac @{context} 1 *})
+done
+*)
+
 
 
 lemma "PLUS a b = PLUS a b"