Skip to Content.
Sympa Menu

coq-club - [Coq-Club] I don't believe Coinduction; Please help me grok it :)

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] I don't believe Coinduction; Please help me grok it :)


Chronological Thread 
  • From: Siddharth Bhat <siddu.druid AT gmail.com>
  • To: Coq-Club Club <coq-club AT inria.fr>
  • Subject: [Coq-Club] I don't believe Coinduction; Please help me grok it :)
  • Date: Fri, 11 May 2018 22:43:54 +0530
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=siddu.druid AT gmail.com; spf=Pass smtp.mailfrom=siddu.druid AT gmail.com; spf=None smtp.helo=postmaster AT mail-ot0-f176.google.com
  • Ironport-phdr: 9a23:00v8chakmu6OIX3jBKvxJtX/LSx+4OfEezUN459isYplN5qZoMmzbnLW6fgltlLVR4KTs6sC17KN9fi4EUU7or+5+EgYd5JNUxJXwe43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRpOOv1BpTSj8Oq3Oyu5pHfeQpFiCazbL9oMBm6sRjau9ULj4dlNqs/0AbCrGFSe+RRy2NoJFaTkAj568yt4pNt8Dletuw4+cJYXqr0Y6o3TbpDDDQ7KG81/9HktQPCTQSU+HQRVHgdnwdSDAjE6BH6WYrxsjf/u+Fg1iSWIdH6QLYpUjm58axlVAHnhzsGNz4h8WHYlMpwjL5AoBm8oxBz2pPYbJ2JOPZ7eK7WYNEUSndbXstJWCNPAo2yYYgSAeQfIelVtJPyq0cUoBakGQWgGOHixzlVjXH2x6061OEhHBnb0gwhAt0BrXTUo8/vNKcOUeC+0bTFzTXZYPNKxDzw75PIchE8rv6RQLJ8a9feyVMyFwPEk1qdsoPlPzaP2eQMt2iX9fZvVeWqi2M+rQx6vzuhxt80h4TLiY8Z0E3I+Tt5zYovJtC0VlR3bcOmHZZRsSyRKpF4Tdk4Q25yvSY30r0GtoC/fCgN0JknwgTQa/2Dc4SR5RLjSPqdLS52hH54er+yhgy+8Uenyu37Wcm01EhFojBZndnLs3ABzx3T6s6ZRfth5kqs2zmC2xrO5u1aIU04j6nWJ4A7zrItlJcesFzPHirsl0X3iK+WeF8k+u+t6+n/ebXmp4KTOJJpig3kL6sugNG/AeUlPQUVUGib/P6z1Lzn/UHjXLpKifg2nrHDsJ/GPcQburK5AwhN34k/7Ba/Fi6q38gcnXkaN11IYwmHjojsO1HWOv/0F/a/g1K2kDdq3f/KJLPhAo+eZkTExZzmZPNW71NWgCE30NoXs5lTE/QKJO/5ck73rt3RSBEjZV+a2eHiXe582o8eUHiTAuezMKrO+QuT5+4jPq+AfpIUtB7yLvEk47jlinpvygxVRrWgwZZCMCPwJf9hOUjMJCO02o5QQ1dPhRI3SanRsHPHVDdSY3ioWKdlv2M0DYunCcHIQYX/2eXdjhf+JYVfYyV9Mn7JCW3hLtzWVPIFaSbUKchkwGRdCOqRDrQ53BTrjzfUjrpqKu2OpH8dvJPnkd9pv6jdzE5sszNzCMuZ3ieGSGQmxm4=

This title is click-baity, but I believe it captures my feelings adequately.

I am able to "believe" induction on, say, the naturals, since they have a well-founded order. Hence, one can intuit what it means to "perform induction" on these kinds of objects.

On the other hand, how does a Coinduction proof "start"? Or, well, how does one intuit cofix ? I'm now able to perform the proofs in Coq, but I really don't feel like I understand them.

The rough argument that I have in my head to justify Coinduction is as follows:

1. A Coinductive proof technique is used to prove a proposition P on functions that lazily produce infinite amounts of data.
2. We can only observe a finite amount of this infinite data
3. Hence, to prove a Coinductive proposition, we can assume our proposition P holds on the "infinite tail that is unobserved", and we show that adding some new finite data does not break the invariant P.
4. So, when someone "observes" this infinite data to some length, we can assume that the proposition P holds for the "part that remains unobserved", and "work our way backwards" to add all the finite pieces that were observed, while making sure P holds.

How do the experts think about Coinduction? Is my intuition at all correct? I'd love help and feedback on this!

Thanks,
~Siddharth


--
Sending this from my phone, please excuse any typos!



Archive powered by MHonArc 2.6.18.

Top of Page