coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Meven Lennon-Bertrand <mgapb2 AT cam.ac.uk>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] on coinductive extensionality
- Date: Wed, 13 Mar 2024 13:07:27 +0000
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cam.ac.uk; dmarc=pass action=none header.from=cam.ac.uk; dkim=pass header.d=cam.ac.uk; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yOAQVPwKIgnZdWDozwI5d6ZpKO4Vdq2p4VMHLSruoDA=; b=HexyvxysRK6fC4By80/QuE/zW5EndRKYIhvLYZWDpp+kd5d5U21VxMZIAhi1/hhvpqcudNLSlryKu/bcAiVwCt6ZT5wCbOK6AOokZLqsFnlqreYMemdiQjed1J2mHZyPg6gYqBy94AhWfCAlk4JSwUJiuLpeQJJVggoy4+sC6uUfzRLFYDOdkAre1lTQUkIpDBU+nxtWfPB38AITUgt0OlNVcx3IUstTJMrQVFBtF0CQ86t6x4L13YN55LCbIlic8Bp92LnkY3tAOObGvtN28Nk9ZjgZL9juePOa6ICPhEXX9uF3LLajECJEEOnwvyrPKzFVu9+CU/EEObfXgcIkUw==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cWxQcg1CIC1MuPOX7c0g+XsSs9t+Vs/yH8R0DED31ga8tDLqyW0JGvH9D1C2660cNL/D9M/gxqxAFpjz/Ge38wa33vdkT/s4TE7Tb6JFlO/04WF4VmThpykoPKfdNQnCYHuaCT/GEU4t6TffMSkFqc1/34/9NeKMspjO6dMFM5FT8D8493qLP0+7XDe0po3eqpEHwRH31IgSakwKBV8KGW6TweEwBA0mzD6WyK3lrQdLr6+tlYoIedxSy561C1xF6K8LfKnoJZENKJAzRpNZwKq/Wd0Xe/6TJZPVv8opFEAtcJtmQxrE/+2ZVW3tl9n24kY4GaIqK/XW1+OHLjYebw==
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=mgapb2 AT cam.ac.uk; spf=Pass smtp.mailfrom=mgapb2 AT cam.ac.uk; spf=Pass smtp.helo=postmaster AT GBR01-CWX-obe.outbound.protection.outlook.com
- Ironport-data: A9a23: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
- Ironport-hdrordr: A9a23:2+DNhKD+3qtOAmvlHehcsceALOsnbusQ8zAXPh9KJCC9I/bzqy nxpp8mPH/P5wr5K0tQ4OxoWZPhfZq4z/JICOYqTNWftWXdyROVxcRZnPDfKl7balHDH4xmpM RdmsFFYbWfbGSSz/yKhjVQe+xQveVvm5rY4ds2oU0dKj2CJ5sQijuQXW2gYzdLrUR9dO4EPa vZwvACiyureHwRYMj+Ln4ZX9Lbr9mOsJ79exYJCzMu9QHL1FqTmcjHOind+i1bfyJEwL8k/2 SAuwvl5p+7u/X+7hPHzWfc47lfhdOk4NpeA86njNQTN1zX+3GVTbUkf4fHkCE+oemp5lpvuN 7Qoy04N8A20H/VdnHdm2qf5yDQlBIVr1Pyw16RhnXu5ebjQighNsZHjYVFNjPE9ksJprhHoe h29lPck6ASIQLLnSz76dSNfQptjFCIrX0rlvNWp2BDULEZdKRaoeUkjQho+a87bW7HAb0cYa ZT5Jm23ocZTbraVQGQgoBX+q3gYpxpdS32A3TruaSuokhrdT5CvgslLfck7wY9HaIGOuZ5Dt v/Q9pVfZF1P70rhPFGdZI8qI2MeyXwfS4=
- Ironport-phdr: A9a23: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 ZwW6dgMFYWt10eeKtr7KLkCylMm4wG5fT24
- Ironport-sdr: 65f1a512_/HtijBf+tkHWh8uJ8XGyciuI+uLL2Qhm4U9ZoWtUzp8tv9+ dVu2w2otymmPDhjhQmgnd70+iKBtbI37ruL49hg==
Dear Burak,
You do not give the definition of coseq, but I expect you axiom is incosistent: it implies the cosequence is finite, while ct can hold for infinite sequences. Given the name you give to the axiom you seem to expect this is a form of extensionality. Where does this idea come from? I never saw extensionality expressed in this way.
Here is the Coq proof:
Require Import List.
Import ListNotations.
CoInductive coseq {A : Type} : Type :=
| conil : coseq
| cocons : A -> coseq -> coseq.
Arguments coseq : clear implicits.
CoInductive ct {A: Type}: coseq A -> list A -> Prop :=
| co_nil : forall ys, ct conil ys
| co_incl: forall x xs ys, List.In x ys -> ct xs ys -> ct (cocons x xs) ys.
Inductive it {A: Type}: coseq A -> list A -> Prop :=
| ci_nil : forall ys, it conil ys
| ci_incl: forall x xs ys, List.In x ys -> it xs ys -> it (cocons x xs) ys.
Fixpoint drop (n : nat) {A : Type} (c : coseq A) {struct n} : option (coseq A) :=
match n, c with
| 0, c => Some c
| S _, conil => None
| S n', cocons _ c' => drop n' c'
end.
Definition finite {A : Type} (c : coseq A) := exists n, drop n c = None.
Lemma it_finite {A : Type} (c : coseq A) (l : list A) : it c l -> finite c.
Proof.
induction 1.
- exists 1 ; reflexivity.
- destruct IHit as [n ?].
exists (S n).
cbn.
assumption.
Qed.
CoFixpoint ones : coseq nat := cocons 1 ones.
Definition hd {A} (s : coseq A) : option A :=
match s with
| conil => None
| cocons x _ => Some x
end.
Definition tl {A} (s : coseq A) : option (coseq A) :=
match s with
| conil => None
| cocons _ s' => Some s'
end.
Lemma eta_coseq {A} (s : coseq A) :
match (hd s), (tl s) with
| None, None => s = conil
| Some h, Some t => s = cocons h t
| _, _ => False
end.
Proof.
case s; simpl; reflexivity.
Qed.
Lemma ones_unfold : _ones_ = cocons 1 ones.
Proof.
exact (eta_coseq ones).
Qed.
Lemma ct_ones : ct ones [1].
Proof.
cofix CH.
rewrite ones_unfold.
constructor ; [..| assumption].
now constructor.
Qed.
Lemma ones_infinite : finite ones -> False.
Proof.
intros [n Hn].
induction n.
- cbn in * ; congruence.
- now cbn in *.
Qed.
Axiom ext: forall {A: Type} xs ys, ct xs ys -> @it A xs ys.
Theorem boom : False.
Proof.
eapply ones_infinite, it_finite, ext, ct_ones.
Qed.
Best,
Meven LENNON-BERTRAND Postdoc – Computer Lab, University of Cambridge www.meven.ac
On 13/03/2024 12:15, Burak Ekici wrote:
DB4PR10MB60466E5063C236BBA9696A8ACD2A2 AT DB4PR10MB6046.EURPRD10.PROD.OUTLOOK.COM">Dear all,
I have a pair of predicates — one inductively and the other coinductively defined as follows:
CoInductive ct {A: Type}: coseq A -> list A -> Prop := | co_nil : forall ys, ct conil ys | co_incl: forall x xs ys, List.In x ys -> ct xs ys -> ct (cocons x xs) ys. Inductive it {A: Type}: coseq A -> list A -> Prop := | ci_nil : forall ys, it conil ys | ci_incl: forall x xs ys, List.In x ys -> it xs ys -> it (cocons x xs) ys.
Would assuming an axiom like
Axiom ext: forall {A: Type} xs ys, ct xs ys -> @it A xs ys.
introduce any unsoundness?
Thank you so much.
Best,
―
Burak
- [Coq-Club] on coinductive extensionality, Burak Ekici, 03/13/2024
- Re: [Coq-Club] on coinductive extensionality, Meven Lennon-Bertrand, 03/13/2024
- Re: [Coq-Club] on coinductive extensionality, Arthur Azevedo de Amorim, 03/13/2024
Archive powered by MHonArc 2.6.19+.