Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Why do we have "Prop < Set" ? Why not just "Prop ≤ Set" ?

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Why do we have "Prop < Set" ? Why not just "Prop ≤ Set" ?


Chronological Thread 
  • From: Matej Kosik <5764c029b688c1c0d24a2e97cd764f AT gmail.com>
  • To: coq-club AT inria.fr
  • Subject: Re: [Coq-Club] Why do we have "Prop < Set" ? Why not just "Prop ≤ Set" ?
  • Date: Wed, 18 Jan 2017 17:30:38 +0100
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=5764c029b688c1c0d24a2e97cd764f AT gmail.com; spf=Pass smtp.mailfrom=5764c029b688c1c0d24a2e97cd764f AT gmail.com; spf=None smtp.helo=postmaster AT mail-lf0-f54.google.com
  • Ironport-phdr: 9a23:dl3LDRLDeUo35baE9dmcpTZWNBhigK39O0sv0rFitYgfK//xwZ3uMQTl6Ol3ixeRBMOAuq4C0Lud4/6ocFdDyK7JiGoFfp1IWk1NouQttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBXdrXKo8DEdBAj0OxZrKeTpAI7SiNm82/yv95HJbQhFgDWwbal8IRiyognctcgbipZ+J6gszRfEvmFGcPlMy2NyIlKTkRf85sOu85Nm7i9dpfEv+dNeXKvjZ6g3QqBWAzogM2Au+c3krgLDQheV5nsdSWoZjBxFCBXY4R7gX5fxtiz6tvdh2CSfIMb7Q6w4VSik4qx2ThLjlSUJOCMj8GzPl8J+kqxbrhKiqRJxzYHbb4OaO+ZxcK7GYdMXRnBMUtpNWyFPAI6xaZYEAeobPeZfqonwv1wAogGiBQayBuPk1zpGhnjt3a070OQqDAbL0QwiEt8Pv3nbsMn5OLkWXO+uzaTFzjbOYO9L1Tjh9ITHbw4trP6WUr5ub8XczUsiGB/YgViSqIHoMD2V2/8Cs2ie9eVgVOavh3Q7pAF2pzii38EhgZTHiIISz1DL7yR5wIAtKNKkT057e9ikH4VUtyGeLYd5XN4tQ3xwtCY7zL0Go5+7czIQxJQp3R7Tc/OHc4mU4hLjSeaeOi10i25ieLK6gRu57EuuyvXkW8WqzFpHqjBJn9rMu3wXyRDf98iKRuF980quwTqDygTe5+9eLU00iKbXMYAtzqIzm5YJr0jPACv7lUPrh6GMbEok4PKn6+H/b7XmuJCcM4h0hxn7Mqs0m8y/Bf00MgwAX2SH4Oi82r3u8ELjTLVFif02labZsJTEKsgBuqG5BApV3p4i6xa5ETimzMwVkWcbIF9BYh6KjIjkN0vQLPzlDfqzmVShnThzy/DDJLLhA5HNLnbZkLfmeLZw805RxQgywN1Q+51YFq8NLfboVULwt9HVDQM2PxGozOr7FdpxyIwTVniRDqCHNK7fs0OH6f8tLuSNa4IVti3wK/cg5/H0jH85nUURcrWu3ZsScHy4BOhpI12FYXrwhdcMCXsFvg0nTODzlFKCVSNTaG2pUqIn5jA7DZqmAp3ZSoCshryBxia7EYdMamBIEFDfWUvvIo6DQrIHbD+YCs5niD0NE7a7GKE70hT7kQbmxrgvDe3P+y5Q4c+8ioR+v7eCn09ipTctBJyRiT2EFWwlwWgEGGFq0ohwpEV8zhGI1q0u0K8QLsBa+/4cClRyDpXb1eEvU90=

On 01/18/2017 05:25 PM, Matej Kosik wrote:
> Hi,
>
> On 01/18/2017 05:10 PM, Abhishek Anand wrote:
>> Going by the general rule that Ui:Uj if i<j, I suspect that Prop < Set
>> would allow the following:
>> Check (Prop:Set)
>> which fails in Coq 8.5pl3.
>
> AFAIK this
>
> Check Prop:Set.
>

... fails ...

> in all versions of Coq (8.5, 8.6, trunk).
> That makes sense.
>
> And precisely for that, the current version of the constraint:
>
> Prop < Set
>
> does not make sense (to me).
>
>>
>> So the stronger constraint may allow some new well-typed terms and
>> potentially complicate arguments about normalization/consistency etc.

My question is about weakening (not strengthening)

Prop < Set

to

Prop <= Set

>>
>>
>>
>> -- Abhishek
>> http://www.cs.cornell.edu/~aa755/ <http://www.cs.cornell.edu/~aa755/>
>>
>> On Wed, Jan 18, 2017 at 9:27 AM, Matej Kosik
>> <5764c029b688c1c0d24a2e97cd764f AT gmail.com
>>
>> <mailto:5764c029b688c1c0d24a2e97cd764f AT gmail.com>>
>> wrote:
>>
>> Hi,
>>
>> I have noticed that in Coq, we have the following universe constraint:
>>
>> Prop < Set
>>
>> I am wondering what is the reason for that?
>> Wouldn't
>>
>> Prop <= Set
>>
>> suffice in this case?
>>
>> The code that makes the decision is here:
>>
>> https://github.com/coq/coq/blob/trunk/kernel/uGraph.ml#L716
>> <https://github.com/coq/coq/blob/trunk/kernel/uGraph.ml#L716>
>>
>> I wonder whether it is necessary to do:
>>
>> enforce_univ_lt Level.prop Level.set empty
>>
>> as now, or we could simply do
>>
>> enforce_univ_leq Level.prop Level.set empty
>>
>> I've created an experimental branch where I did the change:
>>
>>
>> https://github.com/matej-kosik/coq/commit/2fcbb0ced3bc32210ae9fbf4acc40804841c9200
>>
>> <https://github.com/matej-kosik/coq/commit/2fcbb0ced3bc32210ae9fbf4acc40804841c9200>
>>
>> ran some tests:
>>
>>
>> https://ci.inria.fr/coq/view/coq-contribs/job/coq-contribs/653/console
>> <https://ci.inria.fr/coq/view/coq-contribs/job/coq-contribs/653/console>
>> https://ci.inria.fr/coq/view/opam/job/opam-install/22/console
>> <https://ci.inria.fr/coq/view/opam/job/opam-install/22/console>
>>
>> and I do not see any breakage but the major question is, would this
>> kind of change make Coq inconsistent
>> (enable us to prove False)
>> or not?
>>
>> Thank you in advance for any insight on this.
>> --
>> Matej Košík
>>
>>
>
>


--
Matej Košík



Archive powered by MHonArc 2.6.18.

Top of Page