Fair enough :) that'll teach me to hypothesize something without thinking
about it! I guess I could amend my coinductive proof:

http://hpaste.org/paste/42516/mirrormirror_with_bottom#p42517

does that cover bottom-ness adequately? I can't say I've thought through it
terribly carefully.

On Thu, Dec 23, 2010 at 12:30 PM, Ryan Ingram <ryani.s...@gmail.com> wrote:

> On Thu, Dec 23, 2010 at 8:19 AM, Daniel Peebles <pumpkin...@gmail.com>
> wrote:
> > Simulating bottoms wouldn't be too hard, but I don't think the statement
> is
> > even true in the presence of bottoms, is it?
>
> Isn't it?
>
> data Tree a = Tip | Node (Tree a) a (Tree a)
>
> mirror :: Tree a -> Tree a
> mirror Tip = Tip
> mirror (Node x y z) = Node (mirror z) y (mirror x)
>
> --
>
> -- base cases
> mirror (mirror _|_)
>  = mirror _|_
>  = _|_
>
> mirror (mirror Tip)
>  = mirror Tip
>  = Tip
>
> -- inductive case
> mirror (mirror (Node x y z))
>  = mirror (Node (mirror z) y (mirror x))
>  = Node (mirror (mirror x)) y (mirror (mirror z))
>  -- induction
>  = Node x y z
>
>  -- ryan
>
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to