coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Matthieu Sozeau <mattam AT mattam.org>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] Setoid rewriting for type families?
- Date: Mon, 09 Oct 2017 08:16:10 +0000
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=mattam AT mattam.org; spf=Pass smtp.mailfrom=matthieu.sozeau AT gmail.com; spf=None smtp.helo=postmaster AT mail-vk0-f54.google.com
- Ironport-phdr: 9a23:A/uLOBBt7lcreg93OZwfUyQJP3N1i/DPJgcQr6AfoPdwSP3+ocbcNUDSrc9gkEXOFd2Crakb26yL6+jJYi8p39WoiDg6aptCVhsI2409vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6i760TlHERLmcAFxO+7dG4jIjs3x2frh1YfUZlBtjSahYbJ/MV2Nqhfcv9Re1Y5rNro4zzPMq2dUcuEQwnlncwHA1y3g79u9qcYwux9bvOgsopZN
Hi Christian,
indeed there is a variant of setoid_rewrite for computational relations,
which requires you to use the CMorphisms and CRelationClasses (C for computational)
libraries instead of the usual Morphisms and RelationClasses libraries.
Using the definitions in there you can define Proper instances for your
constants where the relation is computational (typically using iffT instead of iff, arrow instead
of logical implication), to be used by setoid_rewrite.
Hope this helps,
-- Matthieu
On Sun, Oct 8, 2017 at 11:40 PM Christian Doczkal <christian.doczkal AT ens-lyon.fr> wrote:
Hello everyone,
Is it possible to use setoid rewriting when constructing inhabitants of
type families (X -> Type).
I have some developments proving meta-theoretic properties of proof
systems (e.g., Hilbert style systems or sequent systems). So far I've
been formalizing proof systems as inductive predicates of type:
formula (or sequent) -> Prop
The main reason for this is that I make extensive use of setoid
rewriting to replace formulas by provably equivalent ones.
However, treating proofs of deeply embedded calculi as computational
objects seems more natural to me. Moreover, this allow defining
functions from proofs to nat (e.g, for the size of a proof). However, I
would still want to use setoid rewriting where the shape of the proof is
irrelevant.
I recall being told that prior to the introduction of universe
polymorphism, setoid could not be used for type families. So now that we
have universe polymorphism, is this reasonable now? If so, what would I
need to do to set this up?
Thanks in advance,
Christian
- [Coq-Club] Setoid rewriting for type families?, Christian Doczkal, 10/06/2017
- Re: [Coq-Club] Setoid rewriting for type families?, Matthieu Sozeau, 10/09/2017
- Re: [Coq-Club] Setoid rewriting for type families?, Christian Doczkal, 10/09/2017
- Re: [Coq-Club] Setoid rewriting for type families?, Matthieu Sozeau, 10/15/2017
- Re: [Coq-Club] Setoid rewriting for type families?, Christian Doczkal, 10/09/2017
- Re: [Coq-Club] Setoid rewriting for type families?, Matthieu Sozeau, 10/09/2017
Archive powered by MHonArc 2.6.18.