summaryrefslogtreecommitdiff
path: root/language
diff options
context:
space:
mode:
Diffstat (limited to 'language')
-rw-r--r--language/l2.lem3
-rw-r--r--language/l2_typ.ott3
2 files changed, 6 insertions, 0 deletions
diff --git a/language/l2.lem b/language/l2.lem
index 4921c16b..fb8b7731 100644
--- a/language/l2.lem
+++ b/language/l2.lem
@@ -450,6 +450,7 @@ end
type ne = (* internal numeric expressions *)
| Ne_var of x
| Ne_const of integer
+ | Ne_inf
| Ne_mult of ne * ne
| Ne_add of list ne
| Ne_exp of ne
@@ -470,6 +471,8 @@ type nec = (* Numeric expression constraints *)
| Nec_eq of ne * ne
| Nec_gteq of ne * ne
| Nec_in of x * list integer
+ | Nec_cond of list nec * list nec
+ | Nec_branch of list nec
type kinf = (* Whether a kind is default or from a local binding *)
diff --git a/language/l2_typ.ott b/language/l2_typ.ott
index 894ac328..a5346d8f 100644
--- a/language/l2_typ.ott
+++ b/language/l2_typ.ott
@@ -71,6 +71,7 @@ ne :: 'Ne_' ::=
{{ com internal numeric expressions }}
| ' x :: :: var
| num :: :: const
+ | infinity :: :: inf
| ne1 * ne2 :: :: mult
| ne1 + ... + nen :: :: add
| 2 ** ne :: :: exp
@@ -111,6 +112,8 @@ ne :: 'Ne_' ::=
| ne = ne' :: :: eq
| ne >= ne' :: :: gteq
| ' x 'IN' { num1 , ... , numn } :: :: in
+ | nec0 .. necn -> nec'0 ... nec'm :: :: cond
+ | nec0 ... necn :: :: branch
S_N {{ tex {\Sigma^{\textsc{N} } } }} :: '' ::= {{ phantom }}
{{ hol nec list }}