PfPrintForm Definitions HanoiTowers Sections NuprlLIB Doc
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html
Continued from hanoi sol2 ala general gloss

So, we are down to proving

(A) z:{a...}, m:{a...z-1}, s1:({a...m}{1...n}Peg),
(A) s2:({m+1...z}{1...n}Peg).
(A) (s1 @(ms2) is a Hanoi(n disk) seq on a..z
(A) s1(a) = (i.p)
(A) s2(z) = (i.q)

Since p  q, otherPeg(pq) is the remaining Peg. The stacking situation i.otherPeg(pq) has all it disks on that other Peg. Application of the inductive hypothesis twice assures us there a Hanoi sequence moving the disks smaller than n from peg p to otherPeg(pq) as well as another one from otherPeg(pq) to q. Applying it first using p, otherPeg(pq Peg, a  , gives us m  {a...} and s1  {a...m}{1...n-1}Peg such that

s1 is a Hanoi(n-1 disk) seq on a..m

s1(a) = (i.p)

s1(m) = (i.otherPeg(pq))

Applying the inductive hypothesis further to otherPeg(pq), q  Peg, m+1   gives us z  {m+1...} and s2  {m+1...z}{1...n-1}Peg such that

s2 is a Hanoi(n-1 disk) seq on m+1..z

s2(m+1) = (i.otherPeg(pq))

s2(z) = (i.q)

The principle for showing how to combine two such Hanoi sequences to show our goal has been isolated in a lemma:

Thm*  n:a:z:{a...}, m:{a...z-1}, f,g:({1...n}Peg).
Thm*  f(n g(n)
Thm*  
Thm*  (s1:({a...m}{1...n-1}Peg), s2:({m+1...z}{1...n-1}Peg).
Thm*  (s1 is a Hanoi(n-1 disk) seq on a..m
Thm*  (s1(a) = f  {1...n-1}Peg
Thm*  (s2 is a Hanoi(n-1 disk) seq on m+1..z
Thm*  (s2(z) = g  {1...n-1}Peg
Thm*  (s1(m) = s2(m+1)
Thm*  (& (i:{1...n-1}. s1(m,i f(n) & s2(m+1,i g(n)))
Thm*  
Thm*  (r1:({a...m}{1...n}Peg), r2:({m+1...z}{1...n}Peg).
Thm*  ((r1 @(mr2) is a Hanoi(n disk) seq on a..z & r1(a) = f & r2(z) = g)

Gloss

Applying this special lemma here to show (A) from above, reduces to establishing that for i  {1...n-1}

s1(m,i p, which follows from s1(m) = (i.otherPeg(pq)) above, and

s2(m+1,i q, which follows from s2(m+1) = (i.otherPeg(pq)) above.

QED

About:
intnatural_numberaddsubtractlambdaapplyfunctionequal
memberimpliesandtrueallexists
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html

PfPrintForm Definitions HanoiTowers Sections NuprlLIB Doc