[Haskell-cafe] Induction (help!)
byorgey at gmail.com
Thu May 8 07:29:27 EDT 2008
On Wed, May 7, 2008 at 8:01 PM, PR Stanley <prstanley at ntlworld.com> wrote:
> So, when you apply the function to the first element in the set - e.g. Zero
> or Nil in the case of lists - you're actually testing to see the function
> works. Then in the inductive step you base everything on the assumption that
> p holds for some n and of course if that's true then p must hold for Succ n
> but you have to prove this by taking Succ from n and thus going bakc to its
> predecessor which is also the hypothesis p(n).
> So, to reiterate
> assumption: if hypothesis then conclusion
> if p(n) then p(Succ n)
> proof of assumption if p(Succ n) = Succ(p(n)) then we've won. If pn+1) =
> p(n) + p(1) then we have liftoff!
> I'm not going to go any further in case I'm once again on the wrong track.
You've got the right idea. I should point out that it doesn't make sense to
say p(Succ n) = Succ(p(n)), p(x) represents some statement that is either
true or false, so it doesn't make sense to say Succ(p(n)). But I think you
are on the right track.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe