src/HOLCF/Discrete.ML
author oheimb
Thu May 31 16:52:32 2001 +0200 (2001-05-31)
changeset 11346 0d28bc664955
parent 5068 fb28eaa07e01
child 12030 46d57d0290a2
permissions -rw-r--r--
corrected ML names of definitions
nipkow@2841
     1
(*  Title:      HOLCF/Discrete.ML
nipkow@2841
     2
    ID:         $Id$
nipkow@2841
     3
    Author:     Tobias Nipkow
nipkow@2841
     4
    Copyright   1997 TUM
nipkow@2841
     5
*)
nipkow@2841
     6
wenzelm@5068
     7
Goalw [undiscr_def] "undiscr(Discr x) = x";
wenzelm@4423
     8
by (Simp_tac 1);
nipkow@2841
     9
qed "undiscr_Discr";
nipkow@2841
    10
Addsimps [undiscr_Discr];
nipkow@2841
    11
wenzelm@5068
    12
Goal
oheimb@4721
    13
 "!!S::nat=>('a::term)discr. chain(S) ==> range(%i. f(S i)) = {f(S 0)}";
wenzelm@4423
    14
by (fast_tac (claset() addDs [discr_chain0] addEs [arg_cong]) 1);
nipkow@2841
    15
qed "discr_chain_f_range0";
nipkow@2841
    16
oheimb@11346
    17
Goalw [cont,is_lub_def,is_ub_def] "cont(%x::('a::term)discr. f x)";
wenzelm@4423
    18
by (simp_tac (simpset() addsimps [discr_chain_f_range0]) 1);
nipkow@2841
    19
qed "cont_discr";
nipkow@2841
    20
AddIffs [cont_discr];