Closed nicolabotta closed 9 years ago
The problem seems to be that ( \ ) fails to infer some of the implicit arguments of MkSigma. If one replaces
> s5 : (finToNat (FS (toFin (n ** prf))) ** finToNatLemma (FS (toFin (n ** prf))))
> =
> (S n ** LTESucc prf)
with
> s5 : MkSigma {a = Nat} {P = \ i => LT i (S m)}
> (finToNat (FS (toFin (n ** prf))))
> (finToNatLemma (FS (toFin (n ** prf))))
> =
> MkSigma {a = Nat} {P = \ i => LT i (S m)} (S n) (LTESucc prf)
the program type checks fine. I do not know whether this is a bug or not so I am not closing the issue.
The program
fails to type check with
at the point of declaration of
s5
. Any idea what is going on here ? Thanks, Nicola