ae01d3818d
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>
17 lines
595 B
Text
17 lines
595 B
Text
Variable f : Pi (A : Type), A -> Bool
|
|
Show fun (A B : Type) (a : _), f B a
|
|
(* The following one should produce an error *)
|
|
Show fun (A : Type) (a : _) (B : Type), f B a
|
|
|
|
Variable myeq : Pi A : (Type U), A -> A -> Bool
|
|
Show myeq _ (fun (A : Type) (a : _), a) (fun (B : Type) (b : B), b)
|
|
Check myeq _ (fun (A : Type) (a : _), a) (fun (B : Type) (b : B), b)
|
|
|
|
|
|
Variable R : Type -> Bool
|
|
Variable h : (Pi (A : Type), R A) -> Bool
|
|
Check (fun (H : Bool)
|
|
(f1 : Pi (A : Type), R _)
|
|
(g1 : Pi (A : Type), R A)
|
|
(G : Pi (A : Type), myeq _ (f1 _) (g1 A)),
|
|
h f1)
|