src/HOLCF/cfun3.thy
author wenzelm
Tue, 12 Jan 1999 13:39:21 +0100
changeset 6089 4d2d5556b4f9
parent 243 c22b85994e17
permissions -rw-r--r--
signature BASIC_THM; theorem / axiom deriv: added tags; get/put_name_tags; type attribute;

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

Class instance of  -> for class pcpo

*)

Cfun3 = Cfun2 +

arities "->"	:: (pcpo,pcpo)pcpo		(* Witness cfun2.ML *)

consts  
	Istrictify   :: "('a->'b)=>'a=>'b"
	strictify    :: "('a->'b)->'a->'b"

rules 

inst_cfun_pcpo	"UU::'a->'b = UU_cfun"

Istrictify_def	"Istrictify(f,x) == (@z.\
\			  ( x=UU --> z = UU)\
\			& (~x=UU --> z = f[x]))"	

strictify_def	"strictify == (LAM f x.Istrictify(f,x))"

end