Definitions HanoiTowers Sections NuprlLIB Doc
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html
Some definitions of interest.
hanoi_PEGDef  Peg == {1...3}
Thm*  Peg  Type
hanoi_sol2_ala_generalPROGDef  HanoiSTD(n disks; from: p; to: q; indexing from: a)
Def  == if n=0 <a,x,i. whatever>
Def  == else HanoiSTD(n-1 disks; from: p; to: otherPeg(pq); indexing from: a)
Def  == else /m,s1.
Def  == else HanoiSTD(n-1 disks; from: otherPeg(pq); to: q; indexing from: m
Def  == else HanoiSTD(+1)
Def  == else /z,s2. <z,HanoiHelper(ns1i.ps2i.q)/r1,r2r1 @(mr2> fi
Def  (recursive)
Thm*  n:p,q:Peg.
Thm*  p  q
Thm*  
Thm*  (a:
Thm*  (HanoiSTD(n disks; from: p; to: q; indexing from: a)
Thm*  ( z:{a...}({a...z}{1...n}Peg))
hanoi_general_exists_lemma2PROGDef  HanoiHelper(ns1fs2g)
Def  == <s1(?) {to n-1}  f {to n},s2(?) {to n-1}  g {to n}>
Thm*  n:a:z:{a...}, m:{a...z-1}, f,g:({1...n}Peg),
Thm*  s1:({a...m}{1...n-1}Peg), s2:({m+1...z}{1...n-1}Peg).
Thm*  HanoiHelper(ns1fs2g)
Thm*   ({a...m}{1...n}Peg)({m+1...z}{1...n}Peg)
hanoi_otherpegDef  otherPeg(xy) == 6-(x+y)
Thm*  x,y:Peg. x  y  otherPeg(xy Peg
hanoi_seq_joinDef  (s1 @(ms2)(x) == if xm s1(x) else s2(x) fi
Thm*  n:m,a,z:s1:({a...m}{1...n}Peg), s2:({m+1...z}{1...n}Peg).
Thm*  (s1 @(ms2 {a...z}{1...n}Peg
int_isegDef  {i...j} == {k:ik & kj }
Thm*  i,j:. {i...j Type
int_upperDef  {i...} == {j:ij }
Thm*  n:. {n...}  Type
nat_plusDef   == {i:| 0<i }
Thm*    Type
nequalDef  a  b  T == a = b  T
Thm*  A:Type, x,y:A. (x  y Prop

About:
pairspreadproductproductifthenelseintnatural_number
addsubtractless_thansetlambdaapplyfunctionrecursive_def_notice
universeequalmemberpropimpliesandall!abstraction
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html

Definitions HanoiTowers Sections NuprlLIB Doc