[Haskell-cafe] Formalizing lazy lists?
Greg Woodhouse
gregory.woodhouse at sbcglobal.net
Fri Nov 18 19:14:54 EST 2005
--- Lennart Augustsson <lennart at augustsson.net> wrote:
>
> Unfolding Y is indeed part of the algorithm to generate the list.
> The lambda calculus is "just" another programming language, so
> why does this disturb you?
>
Well...think about this way. The function
f i = [1, 1 ..]!!i
is just a constant function expressed in a complicated way. Can I
algoritmically determine that f is a constant function? For any
particular value of i, the calculations you give demonstrate that f i =
1. It's a little less obvious that f really is constant. Yes, I know
this can be proved by induction, but verifying a proof is not the same
as discovering the theorem in the first place.
I suppose the big picture is whether I can embed the theory of finite
lists in the theory of infinite lists, preferably in such a way that
the isomorphism of the theory "finite lists" with the embedded
subtheory is immediately obvious.
===
Gregory Woodhouse <gregory.woodhouse at sbcglobal.net>
"Interaction is the mind-body problem of computing."
--Philip Wadler
More information about the Haskell-Cafe
mailing list