Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Need help with coinductive proof

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Need help with coinductive proof


chronological Thread 
  • From: Edsko de Vries <edskodevries AT gmail.com>
  • To: Thorsten Altenkirch <txa AT cs.nott.ac.uk>
  • Cc: Coq Club <coq-club AT pauillac.inria.fr>, Agda List <agda AT lists.chalmers.se>
  • Subject: Re: [Coq-Club] Need help with coinductive proof
  • Date: Thu, 27 Aug 2009 15:36:55 +0100
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=XnVVxMrFksUgKrhN/AgSAOaee5o/v+0aNJBC7y7E2bWpe5f2sOVGzqao6emqcTG7cZ bMK+N+jZuE9+Jx+/zhXNj7bFJkmSC4lWGotTDWapAM1P0JrsPWQEmgyHiPVSrZjIYEZ3 nE47VRVaPcUXnPqki6ywvZCP6ypvicCEkuJhY=
  • List-archive: <http://pauillac.inria.fr/pipermail/coq-club/>

Actually, never mind that mutually recursive bisim datatype. It still has the same problem as the definition with a coinductive/inductive data type. Consider trying to prove that bisimulation is symmetric. This now becomes a mutually-recursive proof:

Lemma bisim_sym : forall m n,
  bisim m n -> bisim n m
with bisim'_sym : forall d m n,
  bisim' d m n -> bisim' d n m.

in the second part of this proof (bisim') we want to use induction on d; but in the case for strong-tau, we have that bisim n m; we now want to apply strong_tau, then corecursive using bisim_sym to get bisim m n, but again the definition is no longer guarded: we have used bisim_sym as an argument to the induction principle for nat, and the definition is rejected.

This is very frustrating :( Is it really necessary to use something like complete ordered families of equivalences? Why does this seem to much easier in Agda?

Edsko



Archive powered by MhonArc 2.6.16.

Top of Page