coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Helmut Brandl <helmut.brandl AT gmx.net>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] Universe Polymorphism
- Date: Thu, 17 Nov 2022 12:05:22 +0100
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=helmut.brandl AT gmx.net; spf=Pass smtp.mailfrom=helmut.brandl AT gmx.net; spf=None smtp.helo=postmaster AT mout.gmx.net
- Ironport-data: A9a23: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 bkjx5E7AvR9LlyFiwreCjxXTNqLHs/n+08=
- Ironport-hdrordr: A9a23:BaSasq7XpvzPe7BGZAPXwBDXdLJyesId70hD6qkXc202TiX4ra yTdZEgviMc5wxhO03I9ergBEDEexPhHOBOkOws1MaZMzUO0VHAROxfBMnZslnd8kbFmNK1u5 0QFJRWNP21K0RmhsDn5wSCH88n28TvytHSuQ6n9QYKcelwAZsQljuR5zzranGfz2R9b6YEKA ==
- Ironport-phdr: A9a23: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
- Ironport-sdr: 63761575_k1t6nL4z7ABWNtSDFPfDRqlb0qQDbMxbzU48F+ME3SNtuhV JGxXL4g6UwfdEmDlv+LtLuwcE7BAc3d0ADr862w==
- Ui-outboundreport: notjunk:1;M01:P0:jwRlR9NRA78=;dVAlx9JbFVi4Koyr7PvRv2jHOkU e8l7VjYYBmk5hnjQgErmsUmoy3TuY89ydZWY0B9FZrTWT7mf6iZdM7LBZ+pIjNrqoXi43HU6V BpEouvm8hyfTULrc9dPAxj/pPVyU6BQgRSW7l3d9+19FzJs+QD4dUtIiGFRrvAI6tF0vxZHU6 sYeZw8HIpzDsgshITSsXys6NBa+4PlsPAELa8SKPgOGdLsQSHTf0mcZT39S82VJLTSeJ3ghkd Y8mzfx+qRqM37AssALpZH1sr6BqHPV68SAOjzBF+eJ9ljIUG5sXuAaQU3zXTjs/8CM3BXRmkJ AOtMIYiV+efqYtawRvZ9wmsbP0gUpOIYvOCQv4gLRhSiQIDqgLy1HI7iVHlFDQHvkmu57Mzh+ avGKwUX0NyTj/7ZYNkXMVphXNu5t/WidWN9uFO9VbVSRViDsBab1fuDbMSuRt9tgDbWtJ9nHc T2TkP3mPVl7k8hwue1DDnX3E7wh4V0lNK1mM7qNu6f3FNHZWucYHuowIUI489aw/DV8PwjDYz NcMTSbeic1Ovss1dNpscdsZuZLmZJ4FJiYfokKw/VcF9cTE3KD28DRKLuKpnnVfGmWK/1owIf cNxqE9SaddwlVLA79kbK/GIw/pMrii+XzZEjaFxJWgD3YMZxBJ2MAquN+ae2FfJvWqk4ObD2T lXU4Z7rTQVxhLhRq7dQdQR8sS0yHsztGaGZGQMeJC4lwMqWgrYZmiy1arLEQ80b2fz9jxM10U skUJY/9+3jJriHR93EmS+rZdO1oagoU3zv63QFygVJYTqtTFp7R/+UgCoRqhcoPwa+61MZsg5 L4/aeh/qIXLpO7q1RFEPTsAnDqVZm8UP7vPTPe9MEJRnbd+fEkGzIRwIUZm7Ce55Yr1I/unUw m1gZuatiksRyO5A+JvbuW97r8w7SRwxAL2bN8KkKjv1d2kb4Ti7IyyLJJrsy/qDy7/KT2beuY JUldRuMpQrWGzwjr9q5Fi4iFwxw=
Thanks Gaëtan for your effort and your patience with my questions.
However the situation remains somehow unsatisfactory. By reading and
rereading the documentation I cannot find a clear rule which states what is
allowed and what is not allowed with respect to universes. As opposed to
that, the positivity condition is stated very clearly and to my surprise, the
justification of the positivity rule is explained with some examples which
are short and to the point.
My intuitive explanation with the “hiding” of a higher universe type within a
lower universe inductive definition might be correct. But it is not very
precise and does not give a justification. Furthermore the example of the
existential quantification does give a constraint on the universes without
explaining the general rule.
Sorry for me insisting on this topic. Maybe it cannot be resolved easily.
Anyhow thanks for your efforts.
Helmut
> On 17 Nov 2022, at 11:12, Gaëtan Gilbert <gaetan.gilbert AT skyskimmer.net>
> wrote:
>
> >Unfortunately I have not found the rule that every argument of a
> >constructor must be at a smaller or equal universe to the output universe
>
> I can't find it either although it's mentioned, eg
>
> >One can remark that there is a constraint between the sort of the arity of
> >the inductive type and the sort of the type of its constructors which will
> >always be satisfied for the impredicative sorts SProp and Prop but may
> >fail to define inductive type on sort Set and generate constraints between
> >universes for inductive types in the Type hierarchy.
>
> Probably a doc bug.
>
> The reason for the rule is basically what you said earlier
>
> >I suspect that if it were well typed, then I could ‘hide’ an object from
> >the universe ‘u+1’ in the list which resides in the universe ‘u’.
>
> which leads to inconsistency. See also
> https://coq.inria.fr/distrib/current/stdlib/Coq.Logic.Hurkens.html and
> mentioned references.
>
> Gaëtan Gilbert
>
> On 17/11/2022 10:45, Helmut Brandl wrote:
>>> On 16 Nov 2022, at 23:35, Gaëtan Gilbert <gaetan.gilbert AT skyskimmer.net
>>> <mailto:gaetan.gilbert AT skyskimmer.net>> wrote:
>>>
>>> The rules for inductives
>>> https://coq.github.io/doc/master/refman/language/core/inductive.html#theory-of-inductive-definitions
>>>
>>> <https://coq.github.io/doc/master/refman/language/core/inductive.html#theory-of-inductive-definitions>
>>> basically every argument of a constructor must be at a smaller or equal
>>> universe to the output universe of the inductive. The first argument of
>>> cons fails this.
>> Thanks for the explanation. I have tried to read the description in the
>> link. Unfortunately I have not found the rule that every argument of a
>> constructor must be at a smaller or equal universe to the output universe.
>> Could you point to the specific paragraph which states that rule. Since
>> the rules are very technical I might have overlooked it.
>> My intention is to understand not only the “what” of the rules, but also
>> the “why” of the rules. What is the justification of such a rule? E.g.
>> first I didn’t understand the necessity of the positivity rule of the
>> constructor types. Then I have found an example which makes the necessity
>> of the positivity rule clear. If the following inductive type were allowed
>> Inductive T: Type :=
>> | co: (T -> T) -> T.
>> I could define a fixpoint with infinite recursion
>> Fixpoint run (t: T): T :=
>> match t with
>> | co f => run (f (co f))
>> end.
>> Is there a similar justification for the rule you have mentioned? Does the
>> rule inhibit an inconsistency like infinite recursion?
>> — Helmut
>>>
>>> Gaëtan Gilbert
>>>
>>> On 16/11/2022 22:32, Helmut Brandl wrote:
>>>>> On 16 Nov 2022, at 22:06, Helmut Brandl <helmut.brandl AT gmx.net
>>>>> <mailto:helmut.brandl AT gmx.net> <mailto:helmut.brandl AT gmx.net
>>>>> <mailto:helmut.brandl AT gmx.net>>> wrote:
>>>>>
>>>>>
>>>>>
>>>>>> On 16 Nov 2022, at 21:23, Gaëtan Gilbert
>>>>>> <gaetan.gilbert AT skyskimmer.net <mailto:gaetan.gilbert AT skyskimmer.net>
>>>>>> <mailto:gaetan.gilbert AT skyskimmer.net
>>>>>> <mailto:gaetan.gilbert AT skyskimmer.net>>> wrote:
>>>>>>
>>>>>>
>>>>>>> I.e. the argument type of a function type can live in a higher
>>>>>>> universe than the result type.
>>>>>>
>>>>>> Yes, but "lst" is an _inhabitant_ of the function type, it's not the
>>>>>> function type itself.
>>>>>>
>>>>>> Similarly "(fun A:Type@{u+1} => A) : Type@{u+1} -> Type@{u}" is
>>>>>> rejected
>>>>>
>>>>> In that case the rejection is clear to me. The term ‘A’ has type
>>>>> ’Type@{u+1}’. Therefore the function returns a result of type
>>>>> ’Type@{u+1}’ and not ’Type@{u}’ as required by the type annotation.
>>>>> I.e. the function on the left hand side of the colon is not an
>>>>> inhabitant of the type on the right hand side of the colon. The
>>>>> compiler must reject it.
>>>>>
>>>>> Are you saying that the type ’Type@{u+1} -> Type@{u}’ is not allowed to
>>>>> be inhabited? Is there such a typing rule? If there is such a typing
>>>>> rule, I would like to understand why it is there. Does the violation of
>>>>> such a typing rule create any inconsistencies like an inhabitant of the
>>>>> type ‘forall A: Type, A’?
>>>> According to coq the type ’Type@{u+1} -> Type@{u}’ can have inhabitants.
>>>> E.g. the following is accepted by coq:
>>>> Check (fun A: Type@{u+1} => nat): Type@{u+1} -> Type@{u}.
>>>> However my construction of the inductive type ‘lst’ which is an
>>>> inhabitant of exactly that type is rejected. Why is it possible to
>>>> construct a function of that type but not an inductive definition?
>>>>>
>>>>>
>>>>> — Helmut
>>>>>
>>>>>
>>>>>>
>>>>>>
>>>>>> On 16/11/2022 21:02, Helmut Brandl wrote:
>>>>>>> I’d like to understand universes and universe polymorphism better.
>>>>>>> Therefore I have some questions:
>>>>>>> The following term is well typed in coq:
>>>>>>> Universe u.
>>>>>>> Check forall A:Type@{u+1}, Type@{u}.
>>>>>>> I.e. the argument type of a function type can live in a higher
>>>>>>> universe than the result type. If I try the same with an inductive
>>>>>>> type, I get an error.
>>>>>>> Inductive lst (A: Type@{u+1}): Type@{u} :=
>>>>>>> | nil: lst A
>>>>>>> | cons: A -> lst A -> lst A.
>>>>>>> *Error:*Universe inconsistency. Cannot enforce u = max(Set, u+1).
>>>>>>> What is the theoretical background of this consistency error. The
>>>>>>> type of ‘lst’ is exactly the type I have checked above as well typed.
>>>>>>> I suspect that if it were well typed, then I could ‘hide’ an object
>>>>>>> from the universe ‘u+1’ in the list which resides in the universe
>>>>>>> ‘u’. Can anybody help to give a more precise explanation.
>>>>>>> Regards
>>>>>>> Helmut
>>>>>
- [Coq-Club] Universe Polymorphism, Helmut Brandl, 11/16/2022
- Re: [Coq-Club] Universe Polymorphism, Gaëtan Gilbert, 11/16/2022
- Re: [Coq-Club] Universe Polymorphism, Helmut Brandl, 11/16/2022
- Re: [Coq-Club] Universe Polymorphism, Helmut Brandl, 11/16/2022
- Re: [Coq-Club] Universe Polymorphism, Gaëtan Gilbert, 11/16/2022
- Re: [Coq-Club] Universe Polymorphism, Helmut Brandl, 11/17/2022
- Re: [Coq-Club] Universe Polymorphism, Gaëtan Gilbert, 11/17/2022
- Re: [Coq-Club] Universe Polymorphism, Helmut Brandl, 11/17/2022
- Re: [Coq-Club] Universe Polymorphism, Gaëtan Gilbert, 11/17/2022
- Re: [Coq-Club] Universe Polymorphism, Helmut Brandl, 11/17/2022
- Re: [Coq-Club] Universe Polymorphism, Gaëtan Gilbert, 11/16/2022
- Re: [Coq-Club] Universe Polymorphism, Helmut Brandl, 11/16/2022
- Re: [Coq-Club] Universe Polymorphism, Helmut Brandl, 11/16/2022
- Re: [Coq-Club] Universe Polymorphism, Gaëtan Gilbert, 11/16/2022
Archive powered by MHonArc 2.6.19+.