--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ZF/Coind/Values.thy Tue Feb 28 10:33:52 1995 +0100
@@ -0,0 +1,40 @@
+(* Title: ZF/Coind/Values.thy
+ ID: $Id$
+ Author: Jacob Frost, Cambridge University Computer Laboratory
+ Copyright 1995 University of Cambridge
+*)
+
+Values = Language + Map +
+
+(* Values, values environments and associated operators *)
+
+consts
+ Val :: "i" ValEnv :: "i" Val_ValEnv :: "i"
+codatatype
+ "Val" =
+ v_const("c:Const") |
+ v_clos("x:ExVar","e:Exp","ve:ValEnv") and
+ "ValEnv" =
+ ve_mk("m:PMap(ExVar,Val)")
+ monos "[map_mono]"
+ type_intrs "[constQU,exvarQU,exvarU,expQU,mapQU]"
+
+consts
+ ve_emp :: "i"
+ ve_owr :: "[i,i,i] => i"
+ ve_dom :: "i=>i"
+ ve_app :: "[i,i] => i"
+rules
+ ve_emp_def "ve_emp == ve_mk(map_emp)"
+ ve_owr_def
+ "ve_owr(ve,x,v) == \
+\ ve_mk(Val_ValEnv_case(%x.0,%x y z.0,%m.map_owr(m,x,v),ve))"
+ ve_dom_def
+ "ve_dom(ve) == Val_ValEnv_case(%x.0,%x y z.0,%m.domain(m),ve)"
+ ve_app_def
+ "ve_app(ve,a) == Val_ValEnv_case(%x.0,%x y z.0,%m.map_app(m,a),ve)"
+
+end
+
+
+