Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] universe inconsistency on import

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] universe inconsistency on import


Chronological Thread 
  • From: Jason Gross <jasongross9 AT gmail.com>
  • To: coq-club <coq-club AT inria.fr>
  • Subject: Re: [Coq-Club] universe inconsistency on import
  • Date: Mon, 2 Dec 2019 12:28:49 -0500
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=jasongross9 AT gmail.com; spf=Pass smtp.mailfrom=jasongross9 AT gmail.com; spf=None smtp.helo=postmaster AT mail-ed1-f47.google.com
  • Ironport-phdr: 9a23:Q+QcrBCrhIYIYFaxv+JEUyQJP3N1i/DPJgcQr6AfoPdwSPv8oMbcNUDSrc9gkEXOFd2Cra4d0KyP7P2rADRaqb+681k6OKRWUBEEjchE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAAjwOhRoLerpBIHSk9631+ev8JHPfglEnjWwba58IRmssAnctMkbjYR/Jqot1BfCv2dFdflRyW50P1yYggzy5t23/J5t8iRQv+wu+stdWqjkfKo2UKJVAi0+P286+MPkux/DTRCS5nQHSWUZjgBIAwne4x7kWJr6rzb3ufB82CmeOs32UKw0VDG/5KplVBPklCEKPCM//WrKiMJ/kbhbrQquqBxxwYHaYI+bOvljcK3DYdwXXnBOUtpLWiFbHo+wc4kCAuwcNuhYtYn9oF4OoAO6Cwa2H+PvzTlIjWL3060g1OQhChrG1xEnEtIMqnvUt9L1NKEdUeCvy6nI1i7DYvdN1Dfy7YjHaBEhofWWUb1sdsrRzFAiGgXYhVuerozlOima1uULs2WD7upgU/ivi289pA1rrDiv3N8giobIhoIJylDE6D52zJwpKt2/TU52Z8OvHphItyyCKYd6XscvT3trtSs60LEKp4K3cSsQxJkoxRPSbeGMfZKS7RL5TumRJC91hHJ7d7K7gBa/6U2gxff9VsmwyVpFsDdKnsTVunAD2BHe6NKLSvR6/kem1jaP0x7c5vtYLkAzkKrXM58hwrgumZoPqUnPADP6lUHsgKKVdkgo4Pak5/jkb7n8qZKRNZd4igTkPaQvnsy/D/44Mg8LX2WD++Szzqbj/Ur/QLVFlP02lbLZsIveKMkAqa65BhVa0ocn6xqlEzim19EYkWEdLF1ZYBKHk5TpO1bWLf/kCve/mk2gnytvx/DbJbLsGY7NL3jGkLf5Z7lx8U9cyAwpzdBe/Z1YEL8BIOigEnP24dffF1oyNxG+i7LsD8w43YcDU0qOBLWYOeXcqwnbyPgoJryubZQSvn7SMf8+/La6j3YinlkSZ66yxso/Z3WxH/AgKEKcNym/yuwdGHsH61JtBNfhj0ePBGYKNiSCGpkk7zR+M7qISILKR4SjmruEhX7pEZhfZ2QAAVeJQy6xK9e0HswUYSfXGfdP1yQeXOH4GYAk3BCq8gT9zug/d7eGymgjrZvmkeNNyajTmBU1r2EmCs2c1ySAQzgxkD9XATAx2697rAp2zVLRiaU=

This might be an issue with a recent change to template polymorphism.  As I note in https://github.com/coq-community/coq-ext-lib/pull/76, many inductives in coq-ext-lib that were template polymorphic in Coq 8.9 are no longer polymorphic in Coq 8.10.  If you are using Coq 8.10, you can test if this is your issue by recompiling and reinstalling coq-ext-lib from source after adding `Unset Template Check` to the top of the OptionMonad file.  (Note that this flag is unsafe and permits proofs of False.  The correct fix is to either (a) move the inductive out of the section, (b) enable full universe polymorphism, or (c) wait for the Coq devs to finish implementing proper sort-polymorphism which should allow backwards-compatible template-polymorphism on top of it.)

On Mon, Dec 2, 2019, 11:49 Gaëtan Gilbert <gaetan.gilbert AT skyskimmer.net> wrote:
With Coq >=8.10 the universes may have nicer names like
Coq.Lib.File.def.u0 which can be used in commands.

Gaëtan Gilbert

On 02/12/2019 17:15, Christian Doczkal wrote:
> Hi
>
> On 01/12/2019 18:20, Vadim Zaliva wrote:
>> “If it is indeed failing to enforce [Helix.MSigmaHCOL.Memory.16 < Coq.FSets.FMapAVL.649], then you may get away with enforcing early that the universe for FMap contents is strictly larger than the universe for Memory contents.”
>>
>> How can I enforce something like this?
>>
> If you use explicit universes in the definitions for instance as follows:
>
> Universe U.
> Definition foo (T : Type@{U}) ...
>
> Then you can pose constraints:
>
> Constraint U < V.
>
> See also: https://coq.inria.fr/distrib/current/refman//addendum/universe-polymorphism.html?highlight=constraint#explicit-universes
>
> In my case, where all definitions involved in the conflict where within the library I was working in, this was sufficient.
>
> I'm not sure what's the best way to give a name to a universe that's introduced in a library one is importing (e.g., introduce a universe U and then define an object that generates the constraint U = Coq.Lib.File.n *). Maybe someone else can comment on that.
>
> Best,
> Christian
>



Archive powered by MHonArc 2.6.18.

Top of Page