Skip to Content.
Sympa Menu

coq-club - [Coq-Club] Mutually recursive lemmas and decreasing arguments

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] Mutually recursive lemmas and decreasing arguments


chronological Thread 
  • From: Alexandre Pilkiewicz <alexandre.pilkiewicz AT polytechnique.org>
  • To: Coq Club <coq-club AT inria.fr>
  • Subject: [Coq-Club] Mutually recursive lemmas and decreasing arguments
  • Date: Fri, 11 Mar 2011 01:53:20 +0100
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:from:date:x-google-sender-auth:message-id :subject:to:content-type; b=IjsIfUkyizSzP1H0AqgDRgupq47BuDAUQ67zmdqGtr/Wh9lEKTSbx0LSR7Xop+BMXi inb2JDsQUwfijkwZ6wueNW2JsjhmZ1lqz651hEEaydgrb2IzSqVF623Jb0vTc5QTLnBs 6juoLv5qkZRtISC9E1UZO+ClWYC/6y/7K7o+Q=

Dear list

I have three mutually recursive inductive on which I would like to
prove three mutually recursive lemmas.

The proof itself goes well (it's a few line, with almost no automation
to avoid using a lemma to prove itself). It is at the Qed that
everything goes wrong. After a time between 30 minutes and a few hours
(I gave up watching it), and without really increasing its memory
usage, Coq answers "Error: Cannot guess decreasing argument of fix.".
I guess the long time is due to the fact coq checks all the
combination of possible decreasing argument. So my first question is:
is there a way to specify the decreasing arguments on lemmas, so that
the checking goes faster. Because I can't try new proofs if it always
take 2 hours to check them...

In the mean time, I tried to prove it using Program. I tried to do this

Program Fixpoing lemma1 arg11 ...  arg1n {struct arg1i}: concl1 := _
with lemma2 arg21...arg2p {struct arg2j} := _
...

But it does not work. When solving the obligation for lemma1, lemma2
is not accessible. Is that a bug or a feature ?

Thanks for the help

- Alexandre



Archive powered by MhonArc 2.6.16.

Top of Page