summaryrefslogtreecommitdiff
path: root/src/coq/Syntax.v
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2009-02-21 14:10:06 -0500
committerGravatar Adam Chlipala <adamc@hcoop.net>2009-02-21 14:10:06 -0500
commit9f20d9299eab7caab6421860b6a54f831af73921 (patch)
tree9e2dcb53a357f93751c3f1e1237a3d0900d02b2d /src/coq/Syntax.v
parentfe5ac0fba7f973b2557c7ae7a6bb9248024ffacd (diff)
Finish semantics for Featherweight Ur
Diffstat (limited to 'src/coq/Syntax.v')
-rw-r--r--src/coq/Syntax.v16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/coq/Syntax.v b/src/coq/Syntax.v
index b19a790e..2378037e 100644
--- a/src/coq/Syntax.v
+++ b/src/coq/Syntax.v
@@ -25,15 +25,12 @@
* POSSIBILITY OF SUCH DAMAGE.
*)
-Require Import String.
+Require Import Name.
+Export Name.
Set Implicit Arguments.
-Definition name : Type := string.
-Definition name_eq_dec : forall (x y : name), {x = y} + {x <> y} := string_dec.
-
-
(** Syntax of Featherweight Ur *)
Inductive kind : Type :=
@@ -160,9 +157,12 @@ Section vars.
-> deq (CApp (CApp (CMap k1 k2) f) (CConcat (CSingle c1 c2) c3))
(CConcat (CSingle c1 (CApp f c2)) (CApp (CApp (CMap k1 k2) f) c3))
- | Eq_Guarded : forall k1 k2 (c1 c2 : con (KRecord k1)) (c : con k2),
- (*disj c1 c2
- ->*) deq (CGuarded c1 c2 c) c
+ | Eq_Guarded_Remove : forall k1 k2 (c1 c2 : con (KRecord k1)) (c : con k2),
+ disj c1 c2
+ -> deq (CGuarded c1 c2 c) c
+ | Eq_Guarded_Cong : forall k1 k2 (c1 c2 : con (KRecord k1)) (c c' : con k2),
+ (dvar c1 c2 -> deq c c')
+ -> deq (CGuarded c1 c2 c) (CGuarded c1 c2 c')
| Eq_Map_Ident : forall k c,
deq (CApp (CApp (CMap k k) (CAbs (fun x => CVar x))) c) c