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] Why does CIC have substitution?
- Date: Sat, 26 May 2018 18:14:36 +0200
- Authentication-results: mail3-smtp-sop.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-wr0-f176.google.com
- Ironport-phdr: 9a23:ZqlrMxOpSg6zWxcDkeEl6mtUPXoX/o7sNwtQ0KIMzox0Lfj6rarrMEGX3/hxlliBBdydt6ofzbKO+4nbGkU4qa6bt34DdJEeHzQksu4x2zIaPcieFEfgJ+TrZSFpVO5LVVti4m3peRMNQJW2aFLduGC94iAPERvjKwV1Ov71GonPhMiryuy+4ZLebxlGiTanfb9+MAi9oBnMuMURnYZsMLs6xAHTontPdeRWxGdoKkyWkh3h+Mq+/4Nt/jpJtf45+MFOTav1f6IjTbxFFzsmKHw65NfqtRbYUwSC4GYXX3gMnRpJBwjF6wz6Xov0vyDnuOdxxDWWMMvrRr0yRD+s7bpkSAXwhSgIOT428mHZhMJzgqxGvhyuuwdyzJTIbIyPLvdyYr/RcNEcSGFcXshRTStBAoakYoUIFeUBIfpYr4n8p1QQsBu1GBSiBOTuyzBWnHD2wLAx3uMkEQ7cwAwgA8gBsHHPodXwLqgSTfy1w7PNzTnZaPNWwzj95ZHOfxs8r/+MWrdwftDQyUkpDw7KlEmfqYn/MzOSzOQNvG6W5PdjW+K3k2MrtR19rzy1ysovioTFnJ8Zxk7H+Clj3Yo4J9y1RUhmatC+CpRQrTuVN45uT8MiXW5ovCE6x6UDuZGhfSgKzI0rxhDFa/CbaoSI7A/vWeSQLDtii3Jlf7W/hxm28Ue+0OHzSs600FNSoipElNnDqGwN2gTN5sSbTvZx5ESs1DaV2wzO9O1JIlo4mbfZJpMg2rIwk4AcsUXHHi/4gkX2i6qWe10h+uey9+TnfrXmpp6COI9pkA3+KaMum82hDusiLwgDRGeb+eGm273i+U31WqlFjvozkqXBqpDVOdwbprKlAw9Syoss9xG/Dy6/3NsEmXkHMUlKdQmcj4npPlHOOOr3Ae2+g1SqijdrxurJMqfvApXXfTD/l+Lqeq844EpBwiIyy8pe7tRaEOIvOvX2D2r4qMDYDxIkezez0evuFZ0p04oCRWuKKqqQLL/btBmP/O15cLrEX5McpDuoc6tt3PXpl3JswQZML5ns5oMebTWDJtojJkyYZXT2hdJYSDUFuwM/SKrhj1jQCGcPNUb3ZLo143QAMKzjFZ3KH9r/hbWdwC6+WJpMaTIeUw3eITLTb4yBHsw0RmeSL8tmyGJWULGgT8o+z0nrulallfxoKe3b/iBevpXmhoB4
Right, it's possible to phrase it like this. I understand ΠΣ's motivation for turning these x := v into equalities x = v for reflection/conversion but I'm not wondering how an intensional type theory like CIC would benefit from this. The additional complication in the reduction rules looks equivalent to me to the definition of substitution.
Note that the delta/let reduction rule of CIC is performing immediate substitution.
-- Matthieu
On Sat, May 26, 2018 at 5:19 PM William J. Bowman <wjb AT williamjbowman.com> wrote:
Matthieu,
Yes that should be one of the closure rules.
I suppose this means let is head normal when its body has no more reductions;
alternatively, we could have:
x := v |- B -> B’
------------------- (when x ∉ FreeVars(B'))
let x = v in B -> B’
McBride's thesis has a reduction rule like this, and the ΠΣ calculus Thorsten
mentioned does something similar via an auxiliary relation that normalizes let
bindings.
--
William J. Bowman
On Fri, May 25, 2018 at 10:44:55AM +0200, Matthieu Sozeau wrote:
> Hi,
>
> What is the reduction rule for let, e.g. for weak head reduction?
> If you assume reduction under a local context of definitions, then you get
> something like:
>
> x := v |- B -> B’
> -------------------
> Let x = v in B -> let x = v in B’
>
> B' might still contain references to x, so you will need to consider let's
> as head normal somehow, no?
> — Matthieu
>
> Le jeu. 24 mai 2018 à 19:31, William J. Bowman <wjb AT williamjbowman.com> a
> écrit :
>
> > McBride and McKinna observe that when you have let and δ reduction,
> > including substitution is unnecesary.
> > (The View From The Left, https://dl.acm.org/citation.cfm?id=967496)
> > Instead, we can replace dependent typing rules such as:
> >
> > ...
> > ------------------
> > Γ ⊢ e₁ e₂ : B[e₂/x]
> >
> > By
> >
> > ...
> > ------------------
> > Γ ⊢ e₁ e₂ : let x = e₂ in B
> >
> > And replace substitution in reduction, such as β, by:
> >
> > Γ ⊢ (λ x.e) v → let x = v in e
> >
> > Why does CIC include both let + δ reduction *and* substitution?
> >
> > --
> > William J. Bowman
> > Northeastern University
> > College of Computer and Information Science
> >
- [Coq-Club] Why does CIC have substitution?, William J. Bowman, 05/24/2018
- Re: [Coq-Club] Why does CIC have substitution?, Matthieu Sozeau, 05/25/2018
- Re: [Coq-Club] Why does CIC have substitution?, Thorsten Altenkirch, 05/25/2018
- Re: [Coq-Club] Why does CIC have substitution?, William J. Bowman, 05/26/2018
- Re: [Coq-Club] Why does CIC have substitution?, Matthieu Sozeau, 05/26/2018
- Re: [Coq-Club] Why does CIC have substitution?, William J. Bowman, 05/26/2018
- Re: [Coq-Club] Why does CIC have substitution?, Matthieu Sozeau, 05/26/2018
- Re: [Coq-Club] Why does CIC have substitution?, Matthieu Sozeau, 05/25/2018
Archive powered by MHonArc 2.6.18.