about summary refs log tree commit diff
path: root/lib/Data.ml
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Data.ml')
-rw-r--r--lib/Data.ml20
1 files changed, 11 insertions, 9 deletions
diff --git a/lib/Data.ml b/lib/Data.ml
index 19ca67d..d2f94d3 100644
--- a/lib/Data.ml
+++ b/lib/Data.ml
@@ -4,10 +4,10 @@ open Bwd
 
 type syn =
   | Var of int
-  | Pi of syn * (* BINDS *) syn
-  | Lam of (* BINDS *) syn
+  | Pi of Ident.local * syn * (* BINDS *) syn
+  | Lam of Ident.local * (* BINDS *) syn
   | App of syn * syn
-  | Sg of syn * (* BINDS *) syn
+  | Sg of Ident.local * syn * (* BINDS *) syn
   | Pair of syn * syn
   | Fst of syn
   | Snd of syn
@@ -16,6 +16,7 @@ type syn =
   | True
   | False
   | BoolElim of {
+      motive_var : Ident.local;
       motive : (* BINDS *) syn;
       true_case : syn;
       false_case : syn;
@@ -26,9 +27,9 @@ type syn =
 
 type value =
   | Neutral of ne
-  | Pi of value * clo
-  | Lam of clo
-  | Sg of value * clo
+  | Pi of Ident.local * value * clo
+  | Lam of Ident.local * clo
+  | Sg of Ident.local * value * clo
   | Pair of value * value
   | Type
   | Bool
@@ -42,9 +43,10 @@ and frm =
   | Fst
   | Snd
   | BoolElim of {
-      cmot: clo;
-      vtrue: value;
-      vfalse: value;
+      motive_var : Ident.local;
+      motive: clo;
+      true_case: value;
+      false_case: value;
     }
 
 and env = value bwd