src/HOLCF/Cont.thy
author slotosch
Tue, 25 Mar 1997 11:13:12 +0100
changeset 2838 2e908f29bc3d
parent 1479 21eb5e156d91
child 3323 194ae2e0c193
permissions -rw-r--r--
changed continuous functions from pcpo to cpo (including instances)

(*  Title:      HOLCF/cont.thy
    ID:         $Id$
    Author:     Franz Regensburger
    Copyright   1993 Technische Universitaet Muenchen

    Results about continuity and monotonicity
*)

Cont = Fun3 +

(* 

   Now we change the default class! Form now on all untyped typevariables are
   of default class pcpo

*)


default po

consts  
        monofun :: "('a => 'b) => bool" (* monotonicity    *)
        contlub :: "('a::cpo => 'b::cpo) => bool"         (* first cont. def *)
        cont    :: "('a::cpo => 'b::cpo) => bool"         (* secnd cont. def *)

defs 

monofun         "monofun(f) == ! x y. x << y --> f(x) << f(y)"

contlub         "contlub(f) == ! Y. is_chain(Y) --> 
                                f(lub(range(Y))) = lub(range(% i.f(Y(i))))"

cont            "cont(f)   == ! Y. is_chain(Y) --> 
                                range(% i.f(Y(i))) <<| f(lub(range(Y)))"

(* ------------------------------------------------------------------------ *)
(* the main purpose of cont.thy is to show:                                 *)
(*              monofun(f) & contlub(f)  <==> cont(f)                       *)
(* ------------------------------------------------------------------------ *)

end