equal
deleted
inserted
replaced
8 by(Simp_tac 1); |
8 by(Simp_tac 1); |
9 qed "undiscr_Discr"; |
9 qed "undiscr_Discr"; |
10 Addsimps [undiscr_Discr]; |
10 Addsimps [undiscr_Discr]; |
11 |
11 |
12 goal thy |
12 goal thy |
13 "!!S::nat=>('a::term)discr. is_chain(S) ==> range(%i.f(S i)) = {f(S 0)}"; |
13 "!!S::nat=>('a::term)discr. is_chain(S) ==> range(%i. f(S i)) = {f(S 0)}"; |
14 by(fast_tac (!claset addDs [discr_chain0] addEs [arg_cong]) 1); |
14 by(fast_tac (!claset addDs [discr_chain0] addEs [arg_cong]) 1); |
15 qed "discr_chain_f_range0"; |
15 qed "discr_chain_f_range0"; |
16 |
16 |
17 goalw thy [cont,is_lub,is_ub] "cont(%x::('a::term)discr.f x)"; |
17 goalw thy [cont,is_lub,is_ub] "cont(%x::('a::term)discr. f x)"; |
18 by(simp_tac (!simpset addsimps [discr_chain_f_range0]) 1); |
18 by(simp_tac (!simpset addsimps [discr_chain_f_range0]) 1); |
19 qed "cont_discr"; |
19 qed "cont_discr"; |
20 AddIffs [cont_discr]; |
20 AddIffs [cont_discr]; |