(19steps total) Remark PrintForm Definitions Lemmas HanoiTowers Sections NuprlLIB Doc
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html
At: hanoi sol2 ala generalPROGworks 2 3 1 1

1. n : 
2. 0<n
3. p,q:Peg.
3. p  q
3. 
3. (a:
3. (HanoiSTD(n-1 disks; from: p; to: q; indexing from: a)/z,s.
3. (s is a Hanoi(n-1 disk) seq on a..z & s(a) = (i.p) & s(z) = (i.q))
4. p : Peg
5. q : Peg
6. p  q
7. a : 
8. p = otherPeg(pq)
9. otherPeg(pq) = q
10. m : {a...}
11. s1 : {a...m}{1...n-1}Peg
12. <m,s1> = HanoiSTD(n-1 disks; from: p; to: otherPeg(pq); indexing from: a)
13. s1 is a Hanoi(n-1 disk) seq on a..m
14. s1(a) = (i.p)
15. s1(m) = (i.otherPeg(pq))
  (HanoiSTD(n-1 disks; from: otherPeg(pq); to: q; indexing from: m+1)/z,s2.
  (<z,HanoiHelper(ns1i.ps2i.q)/r1,r2r1 @(mr2>)
  /z,s.
  s is a Hanoi(n disk) seq on a..z
  s(a) = (i.p {1...n}Peg
  s(z) = (i.q {1...n}Peg


By: Let
(whatnot = HanoiSTD(n-1 disks; from: otherPeg(pq); to: q; indexing from: m+1))
THEN
New:[z | s2] Analyze-2
THEN
Inst: Hyp:3 Using:[otherPeg(pq) | q | m+1] THEN Rewrite'-1 by Hyp:-2
THEN
OnAllClauses Reduce THEN Repeat Analyze-1


Generated subgoal:

1 16. z : {m+1...}
17. s2 : {m+1...z}{1...n-1}Peg
18. <z,s2>
18. =
18. HanoiSTD(n-1 disks; from: otherPeg(pq); to: q; indexing from: m+1)
19. s2 is a Hanoi(n-1 disk) seq on m+1..z
20. s2(m+1) = (i.otherPeg(pq))
21. s2(z) = (i.q)
  (HanoiHelper(ns1i.ps2i.q)/r1,r2r1 @(mr2)
  is a Hanoi(n disk) seq on a..z
  & (HanoiHelper(ns1i.ps2i.q)/r1,r2r1 @(mr2)(a) = (i.p)
  & (HanoiHelper(ns1i.ps2i.q)/r1,r2r1 @(mr2)(z) = (i.q)

8 steps

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

(19steps total) Remark PrintForm Definitions Lemmas HanoiTowers Sections NuprlLIB Doc