I am studying coinduction(not induction) as part of a class on static analysis. Rummaging around the internet, I am simply not finding clear, concise description of:
My understanding (which may be wrong) goes like this:
Coinduction is a way to prove things about infinite data structures.
Just like induction, it seems like cheating at first. The key thing to realize is that instead of:
you instead:
Coinduction is a useful proof technique for establishing structurally "obvious" propositions about infinite data structures. Unfortunately (or not?) the fact that it's commonly useful for proving "obvious" things makes it harder to see how it is proving anything at all and not just hand-waving.
This paper is helpful in some ways, and confusing in others (at least those uninitiated in category theory, among whom I count myself).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With