
diff -r e5e019d60f71 -r 43b03d412b82 src/HOL/UNITY/Lift_prog.thy
--- a/src/HOL/UNITY/Lift_prog.thy	Mon Oct 18 15:17:35 1999 +0200
+++ b/src/HOL/UNITY/Lift_prog.thy	Mon Oct 18 15:18:24 1999 +0200
@@ -22,19 +22,19 @@
   lift_act :: "['a, ('b*'b) set] => (('a=>'b) * ('a=>'b)) set"
     "lift_act i act == {(f,f'). f(i:= f' i) = f' & (f i, f' i) : act}"
 
-  (*Argument C allows weak safety laws to be projected*)
-  drop_act :: "[('a=>'b) set, 'a, (('a=>'b) * ('a=>'b)) set] => ('b*'b) set"
-    "drop_act C i act == {(f i, f' i) | f f'. (f,f'): act & f: C}"
+  drop_act :: "['a, (('a=>'b) * ('a=>'b)) set] => ('b*'b) set"
+    "drop_act i act == {(f i, f' i) | f f'. (f,f'): act}"
 
   lift_prog :: "['a, 'b program] => ('a => 'b) program"
     "lift_prog i F ==
        mk_program (lift_set i (Init F),
 		   lift_act i `` Acts F)"
 
+  (*Argument C allows weak safety laws to be projected*)
   drop_prog :: "[('a=>'b) set, 'a, ('a=>'b) program] => 'b program"
     "drop_prog C i F ==
        mk_program (drop_set i (Init F),
-		   drop_act C i `` (Acts F))"
+		   drop_act i `` Restrict C `` (Acts F))"
 
   (*simplifies the expression of specifications*)
   constdefs




