equal
deleted
inserted
replaced
|
1 (* Title: HOLCF/Discrete.ML |
|
2 ID: $Id$ |
|
3 Author: Tobias Nipkow |
|
4 Copyright 1997 TUM |
|
5 *) |
|
6 |
|
7 goalw thy [undiscr_def] "undiscr(Discr x) = x"; |
|
8 by(Simp_tac 1); |
|
9 qed "undiscr_Discr"; |
|
10 Addsimps [undiscr_Discr]; |
|
11 |
|
12 goal thy |
|
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); |
|
15 qed "discr_chain_f_range0"; |
|
16 |
|
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); |
|
19 qed "cont_discr"; |
|
20 AddIffs [cont_discr]; |