[Agda] Proving equality of levels with heterogeneous equality.
Jason -Zhong Sheng- Hu
fdhzs2010 at hotmail.com
Sun Mar 10 19:23:17 CET 2019
I don't think so, though. Level should just be a counter for the universes, so it doesn't have to be big.
open import Level
Foo : Set
Foo = Level
This code actually works in Agda.
Sincerely Yours,
Jason Hu
________________________________
From: Agda <agda-bounces at lists.chalmers.se> on behalf of Stefan Monnier <monnier at iro.umontreal.ca>
Sent: March 10, 2019 2:18 PM
To: agda at lists.chalmers.se
Subject: Re: [Agda] Proving equality of levels with heterogeneous equality.
> It's not possible to prove this in Agda because the pattern matching
> unification algorithm only deals with data constructors (such as 'zero' or
> 'suc'), not with type constructors (such as 'Nat' or 'Set'). I don't
> immediately see if your particular lemma here would break soundness, but
> that doesn't say much.
I'm not surprised it's not possible, but I'm surprised by
this explanation. I'd have thought the first reason is that
ℓ₁ ≡ ℓ₂
is ill-typed because
ℓ₁, ℓ₂ : Level
(≡) : {ℓ : Level} → {A : Set ℓ} → A → A → Set ℓ
and there is no ℓ for which `Level : Set ℓ`
Stefan
_______________________________________________
Agda mailing list
Agda at lists.chalmers.se
https://lists.chalmers.se/mailman/listinfo/agda
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.chalmers.se/pipermail/agda/attachments/20190310/59767a02/attachment.html>
More information about the Agda
mailing list