src/HOLCF/Tr1.ML
changeset 1267 bca91b4e1710
parent 1168 74be52691d62
child 1410 324aa8134639
equal deleted inserted replaced
1266:3ae9fe3c0f68 1267:bca91b4e1710
   127  (fn prems =>
   127  (fn prems =>
   128 	[
   128 	[
   129 	(rtac allI 1),
   129 	(rtac allI 1),
   130 	(rtac allI 1),
   130 	(rtac allI 1),
   131 	(res_inst_tac [("p","x")] trE 1),
   131 	(res_inst_tac [("p","x")] trE 1),
   132 	(asm_simp_tac ccc1_ss 1),
   132 	(Asm_simp_tac 1),
   133 	(res_inst_tac [("p","y")] trE 1),
   133 	(res_inst_tac [("p","y")] trE 1),
   134 	(asm_simp_tac (ccc1_ss addsimps dist_less_tr) 1),
   134 	(asm_simp_tac (!simpset addsimps dist_less_tr) 1),
   135 	(asm_simp_tac (ccc1_ss addsimps dist_less_tr) 1),
   135 	(asm_simp_tac (!simpset addsimps dist_less_tr) 1),
   136 	(asm_simp_tac (ccc1_ss addsimps dist_less_tr) 1),
   136 	(asm_simp_tac (!simpset addsimps dist_less_tr) 1),
   137 	(res_inst_tac [("p","y")] trE 1),
   137 	(res_inst_tac [("p","y")] trE 1),
   138 	(asm_simp_tac (ccc1_ss addsimps dist_less_tr) 1),
   138 	(asm_simp_tac (!simpset addsimps dist_less_tr) 1),
   139 	(asm_simp_tac (ccc1_ss addsimps dist_less_tr) 1),
   139 	(asm_simp_tac (!simpset addsimps dist_less_tr) 1),
   140 	(asm_simp_tac (ccc1_ss addsimps dist_less_tr) 1)
   140 	(asm_simp_tac (!simpset addsimps dist_less_tr) 1)
   141 	]);
   141 	]);
   142 
   142 
   143 
   143 
   144 (* ------------------------------------------------------------------------ *) 
   144 (* ------------------------------------------------------------------------ *) 
   145 (* properties of tr_when                                                    *) 
   145 (* properties of tr_when                                                    *) 
   146 (* ------------------------------------------------------------------------ *)
   146 (* ------------------------------------------------------------------------ *)
   147 
   147 
   148 fun prover s =  prove_goalw Tr1.thy [tr_when_def,TT_def,FF_def] s
   148 fun prover s =  prove_goalw Tr1.thy [tr_when_def,TT_def,FF_def] s
   149  (fn prems =>
   149  (fn prems =>
   150 	[
   150 	[
   151 	(simp_tac Cfun_ss 1),
   151 	(Simp_tac 1),
   152 	(simp_tac (Ssum_ss addsimps [(rep_tr_iso ),
   152 	(simp_tac (!simpset addsimps [(rep_tr_iso ),
   153 		(abs_tr_iso RS allI) RS ((rep_tr_iso RS allI) 
   153 		(abs_tr_iso RS allI) RS ((rep_tr_iso RS allI) 
   154 		RS iso_strict) RS conjunct1]@dist_eq_one)1)
   154 		RS iso_strict) RS conjunct1]@dist_eq_one)1)
   155 	]);
   155 	]);
   156 
   156 
   157 val tr_when = map prover [
   157 val tr_when = map prover [