lean2/tests/lean/tst15.lean
Leonardo de Moura ae01d3818d fix(frontends/lean/parser): parse_type method
The parser had a nasty ambiguity. For example,
    f Type 1
had two possible interpretations
    (f (Type) (1))
or
    (f (Type 1))

To fix this issue, whenever we want to specify a particular universe, we have to precede 'Type' with a parenthesis.
Examples:
    (Type 1)
    (Type U)
    (Type M + 1)

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-12-19 15:24:34 -08:00

20 lines
472 B
Text

Variable x : (Type max U+1+2 M+1 M+2 3)
Check x
Variable f : (Type U+10) -> Type
Check f
Check f x
Check (Type 4)
Check x
Check (Type max U M)
Show (Type U+3)
Check (Type U+3)
Check (Type U ⊔ M)
Check (Type U ⊔ M ⊔ 3)
Show (Type U+1 ⊔ M ⊔ 3)
Check (Type U+1 ⊔ M ⊔ 3)
Show (Type U) -> (Type 5)
Check (Type U) -> (Type 5)
Check (Type M ⊔ 3) -> (Type U+5)
Show (Type M ⊔ 3) -> (Type U) -> (Type 5)
Check (Type M ⊔ 3) -> (Type U) -> (Type 5)
Show (Type U)