equal
deleted
inserted
replaced
64 qed "extend_set_Int_distrib"; |
64 qed "extend_set_Int_distrib"; |
65 |
65 |
66 Goalw [extend_set_def] |
66 Goalw [extend_set_def] |
67 "extend_set h (INTER A B) = (INT x:A. extend_set h (B x))"; |
67 "extend_set h (INTER A B) = (INT x:A. extend_set h (B x))"; |
68 by (force_tac (claset() addIs [h_f_g_eq RS sym], simpset()) 1); |
68 by (force_tac (claset() addIs [h_f_g_eq RS sym], simpset()) 1); |
69 qed "extend_set_INTER_distrib"; |
69 qed "extend_set_INT_distrib"; |
70 |
70 |
71 Goalw [extend_set_def] |
71 Goalw [extend_set_def] |
72 "extend_set h (A - B) = extend_set h A - extend_set h B"; |
72 "extend_set h (A - B) = extend_set h A - extend_set h B"; |
73 by Auto_tac; |
73 by Auto_tac; |
74 qed "extend_set_Diff_distrib"; |
74 qed "extend_set_Diff_distrib"; |
176 qed "extend_Join"; |
176 qed "extend_Join"; |
177 Addsimps [extend_Join]; |
177 Addsimps [extend_Join]; |
178 |
178 |
179 Goal "extend h (JOIN I F) = (JN i:I. extend h (F i))"; |
179 Goal "extend h (JOIN I F) = (JN i:I. extend h (F i))"; |
180 by (rtac program_equalityI 1); |
180 by (rtac program_equalityI 1); |
181 by (simp_tac (simpset() addsimps [image_UNION, Acts_JN]) 2); |
181 by (simp_tac (simpset() addsimps [image_UN, Acts_JN]) 2); |
182 by (simp_tac (simpset() addsimps [extend_set_INTER_distrib]) 1); |
182 by (simp_tac (simpset() addsimps [extend_set_INT_distrib]) 1); |
183 qed "extend_JN"; |
183 qed "extend_JN"; |
184 Addsimps [extend_JN]; |
184 Addsimps [extend_JN]; |
185 |
185 |
186 |
186 |
187 (*** Safety: co, stable ***) |
187 (*** Safety: co, stable ***) |