24 lines
754 B
Idris
24 lines
754 B
Idris
module Tests
|
|
|
|
import Term
|
|
import Check
|
|
import Check
|
|
|
|
import Data.Nat
|
|
|
|
%default total
|
|
|
|
a : {p, q : Nat} -> lt p q = True -> LT p q
|
|
a {p} {q} eq = ltReflectsLT p q eq
|
|
|
|
test1 : Either String (Bool, List String)
|
|
test1 = typecheck (TLam (TLam (TVar 0 (a Refl))))
|
|
(TPi TType (TPi (TVar 0 (a Refl)) (TVar 1 (a Refl))))
|
|
|
|
test2 : Either String (Bool, List String)
|
|
test2 = typecheck (TLam (TLam (TLam (TLam (TApp (TVar 1 (a Refl)) (TVar 0 (a Refl)))))))
|
|
(TPi TType
|
|
(TPi (TPi (TVar 0 (a Refl)) TType)
|
|
(TPi (TPi (TVar 1 (a Refl)) (TApp (TVar 1 (a Refl)) (TVar 0 (a Refl))))
|
|
(TPi (TVar 2 (a Refl)) (TApp (TVar 2 (a Refl)) (TVar 0 (a Refl)))))))
|