diff -r 3a8d722fd3ff -r 16c4ea954511 ex/set.ML --- a/ex/set.ML Fri Nov 11 10:35:03 1994 +0100 +++ b/ex/set.ML Mon Nov 21 17:50:34 1994 +0100 @@ -21,7 +21,7 @@ goal Set.thy "~ (? f:: 'a=>'a set. ! S. ? x. f(x) = S)"; (*requires best-first search because it is undirectional*) by (best_tac (set_cs addSEs [equalityCE]) 1); -val cantor1 = result(); +qed "cantor1"; (*This form displays the diagonal term*) goal Set.thy "! f:: 'a=>'a set. ! x. f(x) ~= ?S(f)"; @@ -48,15 +48,15 @@ by (rtac equalityI 1); by (fast_tac (set_cs addEs [Inv_f_f RS ssubst]) 1); by (fast_tac (set_cs addEs [Inv_f_f RS ssubst]) 1); -val inv_image_comp = result(); +qed "inv_image_comp"; val prems = goal Set.thy "f(a) ~: (f``X) ==> a~:X"; by (cfast_tac prems 1); -val contra_imageI = result(); +qed "contra_imageI"; goal Lfp.thy "(a ~: Compl(X)) = (a:X)"; by (fast_tac set_cs 1); -val not_Compl = result(); +qed "not_Compl"; (*Lots of backtracking in this proof...*) val [compl,fg,Xa] = goal Lfp.thy @@ -64,7 +64,7 @@ by (EVERY1 [rtac (not_Compl RS subst), rtac contra_imageI, rtac (compl RS subst), rtac (fg RS subst), stac not_Compl, rtac imageI, rtac Xa]); -val disj_lemma = result(); +qed "disj_lemma"; goal Lfp.thy "range(%z. if(z:X, f(z), g(z))) = f``X Un g``Compl(X)"; by (rtac equalityI 1); @@ -77,21 +77,21 @@ by (rtac (excluded_middle RS disjE) 1); by (EVERY' [rtac (if_P RS ssubst), atac, fast_tac set_cs] 2); by (EVERY' [rtac (if_not_P RS ssubst), atac, fast_tac set_cs] 1); -val range_if_then_else = result(); +qed "range_if_then_else"; goal Lfp.thy "a : X Un Compl(X)"; by (fast_tac set_cs 1); -val X_Un_Compl = result(); +qed "X_Un_Compl"; goalw Lfp.thy [surj_def] "surj(f) = (!a. a : range(f))"; by (fast_tac (set_cs addEs [ssubst]) 1); -val surj_iff_full_range = result(); +qed "surj_iff_full_range"; val [compl] = goal Lfp.thy "Compl(f``X) = g``Compl(X) ==> surj(%z. if(z:X, f(z), g(z)))"; by (sstac [surj_iff_full_range, range_if_then_else, compl RS sym] 1); by (rtac (X_Un_Compl RS allI) 1); -val surj_if_then_else = result(); +qed "surj_if_then_else"; val [injf,injg,compl,bij] = goal Lfp.thy "[| inj_onto(f,X); inj_onto(g,Compl(X)); Compl(f``X) = g``Compl(X); \ @@ -107,13 +107,13 @@ by (fast_tac (set_cs addEs [inj_ontoD, sym RS f_eq_gE]) 1); by (stac expand_if 1); by (fast_tac (set_cs addEs [inj_ontoD, f_eq_gE]) 1); -val bij_if_then_else = result(); +qed "bij_if_then_else"; goal Lfp.thy "? X. X = Compl(g``Compl((f:: 'a=>'b)``X))"; by (rtac exI 1); by (rtac lfp_Tarski 1); by (REPEAT (ares_tac [monoI, image_mono, Compl_anti_mono] 1)); -val decomposition = result(); +qed "decomposition"; val [injf,injg] = goal Lfp.thy "[| inj(f:: 'a=>'b); inj(g:: 'b=>'a) |] ==> \ @@ -127,6 +127,6 @@ etac imageE, etac ssubst, rtac rangeI]); by (EVERY1 [etac ssubst, stac double_complement, rtac (injg RS inv_image_comp RS sym)]); -val schroeder_bernstein = result(); +qed "schroeder_bernstein"; writeln"Reached end of file.";