map length (tiers :: [[ Nat->Nat->Nat ]])  =  [1,1,5,13,35,81,...]

length (list :: [ Nat->Nat->Nat ])  =  Infinity

allUnique (list :: [ Nat->Nat->Nat ])  =  True

ratioRepetitions (list :: [ Nat->Nat->Nat ])  =  0 % 1

tiers :: [Nat->Nat->Nat]  =
  [ [\_ _ -> 0]
  , [\_ _ -> 1]
  , [ \x _ -> case x of 0 -> 1; _ -> 0
    , \x _ -> case x of 0 -> 0; _ -> 1
    , \_ y -> case y of 0 -> 1; _ -> 0
    , \_ y -> case y of 0 -> 0; _ -> 1
    , \_ _ -> 2
    ]
  , [ \x y -> case (x,y) of (0,0) -> 1; _ -> 0
    , \x y -> case (x,y) of (_,0) -> 0; (0,_) -> 1; _ -> 0
    , \x _ -> case x of 0 -> 2; _ -> 0
    , \x _ -> case x of 1 -> 1; _ -> 0
    , \x _ -> case x of 1 -> 0; _ -> 1
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 0; _ -> 1
    , \x _ -> case x of 0 -> 0; _ -> 2
    , \_ y -> case y of 0 -> 2; _ -> 0
    , \_ y -> case y of 1 -> 1; _ -> 0
    , \_ y -> case y of 1 -> 0; _ -> 1
    , \_ y -> case y of 0 -> 0; _ -> 2
    , \_ _ -> 3
    ]
  , [ \x y -> case (x,y) of (0,0) -> 2; _ -> 0
    , \x y -> case (x,y) of (0,1) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,0) -> 1; (0,1) -> 0; (1,0) -> 0; (0,2) -> 1; ...
    , \x y -> case (x,y) of (_,0) -> 0; (0,_) -> 2; _ -> 0
    , \x _ -> case x of 0 -> 3; _ -> 0
    , \x y -> case (x,y) of (1,0) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 0; (1,_) -> 1; _ -> 0
    , \x _ -> case x of 1 -> 2; _ -> 0
    , \x _ -> case x of 2 -> 1; _ -> 0
    , \x y -> case (x,y) of (_,0) -> 1; (0,_) -> 0; _ -> 1
    , \x y -> case (x,y) of (0,0) -> 0; _ -> 1
    , \x _ -> case x of 0 -> 2; _ -> 1
    , \x _ -> case x of 0 -> 0; 1 -> 0; _ -> 1
    , \x _ -> case x of 2 -> 0; _ -> 1
    , \x y -> case (x,y) of (0,_) -> 1; (_,0) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,0) -> 1; (0,1) -> 0; (1,0) -> 0; (0,2) -> 0; ...
    , \x y -> case (x,y) of (0,_) -> 1; (_,0) -> 0; _ -> 1
    , \x y -> case (x,y) of (_,0) -> 0; (0,_) -> 1; (1,_) -> 0; _ -> 1
    , \x _ -> case x of 0 -> 1; _ -> 2
    , \x _ -> case x of 1 -> 0; _ -> 2
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 2; _ -> 0
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 0; (_,1) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 1; (_,1) -> 0; _ -> 1
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 0; _ -> 2
    , \x _ -> case x of 0 -> 0; _ -> 3
    , \_ y -> case y of 0 -> 3; _ -> 0
    , \_ y -> case y of 1 -> 2; _ -> 0
    , \_ y -> case y of 2 -> 1; _ -> 0
    , \_ y -> case y of 0 -> 2; _ -> 1
    , \_ y -> case y of 0 -> 0; 1 -> 0; _ -> 1
    , \_ y -> case y of 2 -> 0; _ -> 1
    , \_ y -> case y of 0 -> 1; _ -> 2
    , \_ y -> case y of 1 -> 0; _ -> 2
    , \_ y -> case y of 0 -> 0; _ -> 3
    , \_ _ -> 4
    ]
  , [ \x y -> case (x,y) of (0,0) -> 3; _ -> 0
    , \x y -> case (x,y) of (0,1) -> 2; _ -> 0
    , \x y -> case (x,y) of (0,2) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,0) -> 2; (0,_) -> 1; _ -> 0
    , \x y -> case (x,y) of (_,0) -> 0; (_,1) -> 0; (0,_) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,0) -> 1; (0,1) -> 1; (1,0) -> 0; (0,2) -> 0; ...
    , \x y -> case (x,y) of (0,0) -> 1; (0,_) -> 2; _ -> 0
    , \x y -> case (x,y) of (0,0) -> 2; (0,1) -> 0; (1,0) -> 0; (0,2) -> 2; ...
    , \x y -> case (x,y) of (_,0) -> 0; (0,_) -> 3; _ -> 0
    , \x _ -> case x of 0 -> 4; _ -> 0
    , \x y -> case (x,y) of (1,0) -> 2; _ -> 0
    , \x y -> case (x,y) of (1,1) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,0) -> 0; (0,1) -> 0; (1,0) -> 1; (0,2) -> 0; ...
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 0; (1,_) -> 2; _ -> 0
    , \x _ -> case x of 1 -> 3; _ -> 0
    , \x _ -> case x of 0 -> 1; 1 -> 1; _ -> 0
    , \x y -> case (x,y) of (2,0) -> 1; _ -> 0
    , \x y -> case (x,y) of (2,1) -> 1; (2,2) -> 1; _ -> 0
    , \x _ -> case x of 2 -> 2; _ -> 0
    , \x _ -> case x of 3 -> 1; _ -> 0
    , \x y -> case (x,y) of (0,0) -> 2; (0,_) -> 0; _ -> 1
    , \x y -> case (x,y) of (0,0) -> 0; (0,1) -> 1; (1,0) -> 1; (0,2) -> 0; ...
    , \x y -> case (x,y) of (0,1) -> 0; _ -> 1
    , \x y -> case (x,y) of (0,0) -> 0; (0,_) -> 2; _ -> 1
    , \x _ -> case x of 0 -> 3; _ -> 1
    , \x y -> case (x,y) of (0,_) -> 1; (_,0) -> 1; (1,_) -> 0; _ -> 1
    , \x y -> case (x,y) of (1,0) -> 0; _ -> 1
    , \x _ -> case x of 1 -> 2; _ -> 1
    , \x _ -> case x of 0 -> 0; 1 -> 1; 2 -> 0; _ -> 1
    , \x _ -> case x of 3 -> 0; _ -> 1
    , \x y -> case (x,y) of (0,0) -> 0; (0,_) -> 1; (_,0) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,_) -> 2; (_,0) -> 1; _ -> 0
    , \x y -> case (x,y) of (_,0) -> 1; (0,_) -> 0; (1,_) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,_) -> 0; (1,_) -> 0; (_,0) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,0) -> 1; (0,1) -> 0; (1,0) -> 1; (0,2) -> 0; ...
    , \x y -> case (x,y) of (0,0) -> 1; (0,_) -> 0; (_,0) -> 0; _ -> 1
    , \x y -> case (x,y) of (0,_) -> 2; (_,0) -> 0; _ -> 1
    , \x y -> case (x,y) of (0,0) -> 0; (0,1) -> 1; (1,0) -> 1; (0,2) -> 1; ...
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 0; (1,_) -> 0; _ -> 1
    , \x y -> case (x,y) of (_,0) -> 0; (2,_) -> 0; _ -> 1
    , \x y -> case (x,y) of (0,0) -> 1; (0,_) -> 0; _ -> 2
    , \x y -> case (x,y) of (0,0) -> 0; (0,_) -> 1; _ -> 2
    , \x _ -> case x of 1 -> 1; _ -> 2
    , \x _ -> case x of 0 -> 0; 1 -> 0; _ -> 2
    , \x _ -> case x of 2 -> 0; _ -> 2
    , \x y -> case (x,y) of (0,_) -> 1; (_,0) -> 2; _ -> 0
    , \x y -> case (x,y) of (0,0) -> 2; (0,1) -> 0; (1,0) -> 0; (0,2) -> 0; ...
    , \x y -> case (x,y) of (0,_) -> 1; (_,0) -> 0; (_,1) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,1) -> 1; (2,1) -> 1; (3,1) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,_) -> 1; (_,0) -> 1; (_,1) -> 0; _ -> 1
    , \x y -> case (x,y) of (_,1) -> 0; (1,_) -> 0; _ -> 1
    , \x y -> case (x,y) of (0,_) -> 1; (_,0) -> 0; _ -> 2
    , \x y -> case (x,y) of (_,0) -> 0; (0,_) -> 2; (1,_) -> 0; _ -> 2
    , \x _ -> case x of 0 -> 1; _ -> 3
    , \x _ -> case x of 1 -> 0; _ -> 3
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 3; _ -> 0
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 0; (_,1) -> 2; _ -> 0
    , \x y -> case (x,y) of (1,2) -> 1; (2,2) -> 1; _ -> 0
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 2; _ -> 1
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 0; (_,1) -> 0; _ -> 1
    , \x y -> case (x,y) of (0,_) -> 0; (_,2) -> 0; _ -> 1
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 1; _ -> 2
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 2; (_,1) -> 0; _ -> 2
    , \x y -> case (x,y) of (0,_) -> 0; (_,0) -> 0; _ -> 3
    , \x _ -> case x of 0 -> 0; _ -> 4
    , \_ y -> case y of 0 -> 4; _ -> 0
    , \_ y -> case y of 1 -> 3; _ -> 0
    , \_ y -> case y of 0 -> 1; 1 -> 1; _ -> 0
    , \_ y -> case y of 2 -> 2; _ -> 0
    , \_ y -> case y of 3 -> 1; _ -> 0
    , \_ y -> case y of 0 -> 3; _ -> 1
    , \_ y -> case y of 1 -> 2; _ -> 1
    , \_ y -> case y of 0 -> 0; 2 -> 0; _ -> 1
    , \_ y -> case y of 3 -> 0; _ -> 1
    , \_ y -> case y of 1 -> 1; _ -> 2
    , \_ y -> case y of 0 -> 0; 1 -> 0; _ -> 2
    , \_ y -> case y of 2 -> 0; _ -> 2
    , \_ y -> case y of 0 -> 1; _ -> 3
    , \_ y -> case y of 1 -> 0; _ -> 3
    , \_ y -> case y of 0 -> 0; _ -> 4
    , \_ _ -> 5
    ]
  , ...
  ]
