src/HOLCF/Cprod3.ML
changeset 4098 71e05eb27fb6
parent 3842 b55686a7b22c
child 4721 c8a8482a8124
equal deleted inserted replaced
4097:ddd1c18121e0 4098:71e05eb27fb6
   153 qed_goalw "beta_cfun_cprod" Cprod3.thy [cpair_def]
   153 qed_goalw "beta_cfun_cprod" Cprod3.thy [cpair_def]
   154         "(LAM x y.(x,y))`a`b = (a,b)"
   154         "(LAM x y.(x,y))`a`b = (a,b)"
   155  (fn prems =>
   155  (fn prems =>
   156         [
   156         [
   157         (stac beta_cfun 1),
   157         (stac beta_cfun 1),
   158         (simp_tac (!simpset addsimps [cont_pair1,cont_pair2,cont2cont_CF1L]) 1),
   158         (simp_tac (simpset() addsimps [cont_pair1,cont_pair2,cont2cont_CF1L]) 1),
   159         (stac beta_cfun 1),
   159         (stac beta_cfun 1),
   160         (rtac cont_pair2 1),
   160         (rtac cont_pair2 1),
   161         (rtac refl 1)
   161         (rtac refl 1)
   162         ]);
   162         ]);
   163 
   163 
   285         "csplit`f`<x,y> = f`x`y"
   285         "csplit`f`<x,y> = f`x`y"
   286  (fn prems =>
   286  (fn prems =>
   287         [
   287         [
   288         (stac beta_cfun 1),
   288         (stac beta_cfun 1),
   289         (Simp_tac 1),
   289         (Simp_tac 1),
   290         (simp_tac (!simpset addsimps [cfst2,csnd2]) 1)
   290         (simp_tac (simpset() addsimps [cfst2,csnd2]) 1)
   291         ]);
   291         ]);
   292 
   292 
   293 qed_goalw "csplit3" Cprod3.thy [csplit_def]
   293 qed_goalw "csplit3" Cprod3.thy [csplit_def]
   294   "csplit`cpair`z=z"
   294   "csplit`cpair`z=z"
   295  (fn prems =>
   295  (fn prems =>
   296         [
   296         [
   297         (stac beta_cfun 1),
   297         (stac beta_cfun 1),
   298         (Simp_tac 1),
   298         (Simp_tac 1),
   299         (simp_tac (!simpset addsimps [surjective_pairing_Cprod2]) 1)
   299         (simp_tac (simpset() addsimps [surjective_pairing_Cprod2]) 1)
   300         ]);
   300         ]);
   301 
   301 
   302 (* ------------------------------------------------------------------------ *)
   302 (* ------------------------------------------------------------------------ *)
   303 (* install simplifier for Cprod                                             *)
   303 (* install simplifier for Cprod                                             *)
   304 (* ------------------------------------------------------------------------ *)
   304 (* ------------------------------------------------------------------------ *)