Skip to Content.
Sympa Menu

coq-club - RE: [Coq-Club] Struggling wit typing

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

RE: [Coq-Club] Struggling wit typing


Chronological Thread 
  • From: "Soegtrop, Michael" <michael.soegtrop AT intel.com>
  • To: "coq-club AT inria.fr" <coq-club AT inria.fr>
  • Subject: RE: [Coq-Club] Struggling wit typing
  • Date: Fri, 8 Jun 2018 16:39:51 +0000
  • Accept-language: de-DE, en-US
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=michael.soegtrop AT intel.com; spf=Pass smtp.mailfrom=michael.soegtrop AT intel.com; spf=None smtp.helo=postmaster AT mga14.intel.com
  • Ironport-phdr: 9a23:NcIyGhxbI8+Sb5nXCy+O+j09IxM/srCxBDY+r6Qd2+0SIJqq85mqBkHD//Il1AaPAd2Graocw8Pt8InYEVQa5piAtH1QOLdtbDQizfssogo7HcSeAlf6JvO5JwYzHcBFSUM3tyrjaRsdF8nxfUDdrWOv5jAOBBr/KRB1JuPoEYLOksi7ze+/94HTbglSmDaxfa55IQmrownWqsQYm5ZpJLwryhvOrHtIeuBWyn1tKFmOgRvy5dq+8YB6/ShItP0v68BPUaPhf6QlVrNYFygpM3o05MLwqxbOSxaE62YGXWUXlhpIBBXF7A3/U5zsvCb2qvZx1S+HNsDwULs6Wymt771zRRHolikJKiI5/m/UhMx+jq1boQ6uqBNkzoHOfI2YMOBzcr/Bcd4YQ2dKQ8ZfVzZGAoO5d4YDAfcPPeFGoInyu1sOtxy+BRG0COjyzTFIh2P53a0g3Os/FQHK0hErEtULsHTVsNr1NL0dXv6xzKXS1jXDaO1Z2Tjh6IjSdRAhueqBXbN2ccrN10YvExnJgUmXqYzgJj6Y0PkGvWac7+plT+2vimgnphl/oziuxccsi5HJiZwIxVDF7yp12oE1Jce3SEJjYN6kFodQuD+eN4dsX8wtXWdlszs5xL0eoZO3YSwHxIo9yxPfa/GLaYiF7gz5WOqMPDt1hGppdK++ihu860StxOPxWtOq3FtEqidJiMTAu3MT2xDL98SKS/9w8l2/1TuP2A3f8P9ILVopmafUKpMsxKM7mIAJvkTZBCD2nV37jK+IeUUg/eil8+HnYrr8qZOBOIJ4kAD+MqIymsOhBeQ0KBQBX2+e+eik1b3j+1P2QKlSg/ErlqTVrorWKMQbq6KjAwJZzJwv5wuiAzqmyNgYmGMILFNBeBKJlYjpPFTOLej9Dfe+n1uskC1kyO7CPrH7GZXNKWbMkLj9fbZn7E5c0BE+zdFZ55JIFL4BJOj/VVP2tNzdFhM5KRC7w/77CNVh0YMTQX6AAqiAMK/LrVCI4v8vLPKXaY8OuDf9LuAl6OT0gX84n18dZ6ip0oENZHC2BPQ1a3meNDDnhc5EGmMXtCI/SvbrgRuMS3QbM321Ruc34iwxIIOgF4bKAI631u+vxiC+S9dtYW1JFkqLCTOgUoSPW/4BbGjadspgmTwNWLznUIgs2g20sxfSyrx7I+6S8Sod48GwnONp7vHewElhvQd/CN6QhjnUHjNE21gQTjpz55hR5El0y1ONy6992qUKFNpP6vcPWQA/Z8eFk75KTuvqUweERe+nDU68S4z/UzA3Ut81hdQJZhQlQojwvlX4xyOvRoQtufmLCZgzq/2O2nf4fpo7ynDa2a1nhF4jEJNC

Dear Helmut,

 

maybe it helps you to enable “Display all low level contents” in CoqIDE.

 

For Check sig you then get:

 

sig

     : forall A : Type@{Coq.Init.Specif.1}, (A -> Prop) -> Type@{Coq.Init.Specif.1}

 

Essentially sig is polymorphic over universe levels (the logicians may forgive me if this is not the right wording). Type@{Coq.Init.Specif.1} can be a Type of any universe level, including Set. As soon as A is known to be nat, Type@{Coq.Init.Specif.1} is bound to be Set, which then determines the result type. If sig would not be universe polymorphic, one would need separate definitions for Set, and all the levels of Type.

 

Typically Coq handles the universe restrictions automatically, so the Universe parameters (the @{…}) are not shown.

 

I guess you already read something like https://en.wikipedia.org/wiki/Impredicativity and understand the basic concept why this is needed.

 

Best regards,

 

Michael

Intel Deutschland GmbH
Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de
Managing Directors: Christin Eisenschmid, Christian Lamprechter
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928




Archive powered by MHonArc 2.6.18.

Top of Page