Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] efficiently reducing away mentions of a variable

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] efficiently reducing away mentions of a variable


Chronological Thread 
  • From: Matthieu Sozeau <mattam AT mattam.org>
  • To: coq-club <coq-club AT inria.fr>, Coqdev <coqdev AT inria.fr>
  • Subject: Re: [Coq-Club] efficiently reducing away mentions of a variable
  • Date: Mon, 13 Feb 2017 15:31:45 +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-ua0-f176.google.com
  • Ironport-phdr: 9a23:WjVLBRHWBXPM+MB6vqfLtJ1GYnF86YWxBRYc798ds5kLTJ75p8SwAkXT6L1XgUPTWs2DsrQf2raQ4vurBjBIoc7Y9itdINoUD15NoP5VtjJjKfbNMVf8Iv/uYn5yN+V5f3ghwUuGN1NIEt31fVzYry76xzcTHhLiKVg9fbytScaBx/iwguu14tjYZxhCzG62Zqo3JxGrpy3QsNMXiM1sMPB1gjDOu3dFZawCzmRxKV+Ntxf6/Ma5upB5pXd+ofUkoutJTbn6fqklBYdfHjkvLihh4cT3qRDGZQ6G+mcVVyMRiBUeUFuN1w3zQpqk6niyjeF6wiTPZcA=

Hi Abhishek, 

  I think the only existing versions of shrinking like this in Coq's codebase do not involve any reduction but work on a given, fixed term (and are hence much simpler).
Best,
-- Matthieu

On Fri, Feb 10, 2017 at 9:22 PM Abhishek Anand <abhishek.anand.iitg AT gmail.com> wrote:
I have a parametricity-like program translation that produces theorems and their proofs.
Often these theorems have hypotheses that are not needed in their proofs,
in the sense that after fully normalizing the proof, the variable denoting the hypothesis is not
even mentioned in the proof. I want to identify and eliminate such hypothesis
from the theorem's statement.
However, naively doing the normalization blows up on bigger examples.
Is there a mechanism (e.g. a function in Coq's sources, or a tactic)
that can take a term in a context and do the reduction less naively in order to eliminate mentions
a given variable? For example, it can ignore subterms that don't even mention the variable.
Even If there isn't a function that does exactly what I want, it would be helpful for me to 
get pointers to functions that I could use in my implementation.

Thanks,



Archive powered by MHonArc 2.6.18.

Top of Page