- Introduction
 
  - Cartesian Product Constructor  and Functions
  
    - car< R1, ..., Rk > : Str, ..., Str -> SetCart
 
    - CartesianProduct(R, S) : Str, ..., Str -> SetCart
 
    - CartesianProduct(L) : [Str] -> SetCart
 
    - CartesianPower(R, k) : Str, RngIntElt -> SetCart
 
    - Flat(C) : SetCart -> SetCart
 
    - NumberOfComponents(C) : SetCart -> RngIntElt
 
    - Component(C, i) : SetCart, RngIntElt -> Str
 
    - Components(C) : SetCart -> List
 
    - # C : SetCart -> RngIntElt
 
    - Rep(C) : SetCart -> Elt
 
    - Random(C) : SetCart -> Elt
 
    - Example Tuple_CartesianProduct (H12E1)
 
  
 
  - Creating and Modifying Tuples
  
    - elt< C | a1, a2, ..., ak > : SetCart, Elt, ..., Elt -> Tup
 
    - < a1, a2, ..., ak > : Elt, ..., Elt -> Tup
 
    - Append(T, x) : Tup, Elt -> Tup
 
    - Append(~T, x) : Tup, Elt ->
 
    - Prune(T) : Tup -> Tup
 
    - Prune(~T) : Tup ->
 
    - Flat(T) : Tup -> Tup
 
    - Example Tuple_Tuple (H12E2)
 
  
 
  - Tuple Access Functions
  
 
  - Equality
  
 
  - Iteration
  
 
  - Other Operations
  
 
V2.29, 21 October 2025