coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: roux cody <cody.roux AT gmail.com>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] Proposition for strictly positive occurrence
- Date: Tue, 3 Jul 2018 17:37:55 -0400
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=cody.roux AT gmail.com; spf=Pass smtp.mailfrom=cody.roux AT gmail.com; spf=None smtp.helo=postmaster AT mail-ua0-f177.google.com
- Ironport-phdr: 9a23:hX3aBRAU5RLqes6LDWPuUyQJP3N1i/DPJgcQr6AfoPdwSPv6oMbcNUDSrc9gkEXOFd2Cra4c1ayO6+jJYi8p2d65qncMcZhBBVcuqP49uEgeOvODElDxN/XwbiY3T4xoXV5h+GynYwAOQJ6tL1LdrWev4jEMBx7xKRR6JvjvGo7Vks+7y/2+94fcbglUhTexe69+IAmrpgjNq8cahpdvJLwswRXTuHtIfOpWxWJsJV2Nmhv3+9m98p1+/SlOovwt78FPX7n0cKQ+VrxYES8pM3sp683xtBnMVhWA630BWWgLiBVIAgzF7BbnXpfttybxq+Rw1DWGMcDwULs5Xymp4aV2Rx/ykCoINTA5/mHZhMJzkaxVvg6uqgdlzILIeoyYLuZycr/fcN4cWGFPXtxRVytEAo6kdYsPCPcBPOlFpIbhoFsBsBu/DhSrCezzzT9Hm3/30bcg0+QmDAHH0xctH90LsHvOrdX1ML0eXvyyzKnN1DjOae5d1zn66IjNaB8hoPeMUKpoccrLzkkvFQHFgk+Opoz4OT6ey+cDs3CD4uZ+Se6ij3QrpgJxrzS12Msgl4vEipgIxl3G9yh0xps+K8eiR05he9GkFYNdtyGEOItyRcMvW2Rotzw7yr0CoJK7YTIFxIg+yx7RdvCKcYqF7gjsVOaWJjd4i3Zld6ylixmu9kigz/XwVsiy0FlUsipIisfAumwJ2hDJ6cWKSuFx8lm81TuNzQzf9+NJLEIsmareMZEhw7owlpQJsUTEGy/7gFn5jKiLeUQk4OSo8ePnYqjpp5KHOI90jxvxMqUqmsClHes4NQ0OU3CB+eugzL3j4VH5QLJSg/IqlanZqYnWKtgfpq6kGABYyZ0j6ha6Dze+ytsUh3gHLFRfeBKGlYflIV/OIOqrRcu41l+riXJgw+3MFrznGJTEaHbZw5n7erMo8UlB2EI4ytxOr8ZfDb0QZuj0R1/Zu9nRDxt/OAuxlbW0QO5h358TDDrcSpSSN7nf5AfRt7AfZtKUbYpQgw7Tbv0s5vrgl3g8wAZPcqyg3J9RY3e9TK0/fxepJEH0i9JEKl8k+xIkRbWz2lKHWD9XIX21WvBkv2xpOMedFY7GA7uVrvmB0SO8RMMEY2lHDhWRGC+tedzbBLEDbyWdJsInmTsBB+Cs
Dear Ralph and Dan,Thanks for your suggestions. It seems like the problem is much more complicated than I expected to be :( I might just take a detour to avoid the problem for now, but I will take a look into your suggestions later. Anyway, thanks a lot!On Jul 3, 2018, 9:19 AM -0400, Ralph Matthes <Ralph.Matthes AT irit.fr>, wrote:
Dear Yixuan Chen,
Your question refers to a very old problem of Coq. It is just not possible to do categorical datatypes there in a generic fashion. One would like to speak about an arbitrary "functor" f and later use the generic construction in concrete instances that would even mostly be strictly positive. But this is not supported by Coq.
I have written papers where I suggested other recursion schemes that would work - even in Coq - for a class of f that is far more liberal than strict positivity (see my papers in JFP and SCP). The requirement for that class can be encapsulated logically, as you described in your post.
You can also switch off the checks, see the benefits of it in my TYPES'18 talk (in particular the second last slide of it), available at https://types2018.projj.eu/conference-programme/#session8 - move two lines up there and click on the title of the talk.
Kind regards, Ralph Matthes
Le 03/07/2018 à 02:20, Yixuan Chen a écrit :Dear Coq users,I met a situation where I need to define an inductive type like,Context (f: Type -> Type).
Inductive foobar: Type :=
| something_of: (f foobar) -> foobar
| nothing: foobar.
This does not pass the positive occurrence check, and it shouldn’t. However, the actual definition that would be passed as f should always guarantee to generate only legitimate types. Is there a way to write “strictly positive occurrence” as an proposition in Coq and make it as an hypothesis for f in the client and proved by the provider(s) of f? Thanks.
Best Regards,Yixuan (Luke) Chen
- [Coq-Club] Proposition for strictly positive occurrence, Yixuan Chen, 07/03/2018
- Message not available
- Re: [Coq-Club] Proposition for strictly positive occurrence, Yixuan Chen, 07/03/2018
- Re: [Coq-Club] Proposition for strictly positive occurrence, roux cody, 07/03/2018
- Re: [Coq-Club] Proposition for strictly positive occurrence, Thorsten Altenkirch, 07/04/2018
- Re: [Coq-Club] Proposition for strictly positive occurrence, roux cody, 07/03/2018
- Re: [Coq-Club] Proposition for strictly positive occurrence, Yixuan Chen, 07/03/2018
- Message not available
Archive powered by MHonArc 2.6.18.