1. function Reduce_Iterative (A : Element_Array) return Element is 
  2.  
  3.    Combination : Element := A (A'First); 
  4.  
  5. begin 
  6.    for e of A (Index'Succ (A'First) .. A'Last) loop 
  7.       Combination := Combine (e, Combination); 
  8.    end loop; 
  9.    return Combination; 
  10. end Reduce_Iterative;