anchor.diff:  /// through the computation. If the input function is <c>f</c> and the elements are <c>i0...iN</c> 
   /// then computes <c>f (... (f s i0)...) iN</c>.
   /// </summary>
  +/// <param name="folder"></param>
  +/// <param name="state"></param>
  +/// <param name="resizeArray"></param>
  +/// <returns></returns>
   [<CompiledName("Fold")>]
   let fold (folder : 'State -> 'T -> 'State) state (resizeArray : ResizeArray<'T>) : 'State =
       // Preconditions
  
positive.code:         state <- folder.Invoke (resizeArray.[i], state)
      state
  
  //
  [<CompiledName("FoldBackSub")>]
  let foldBackSub folder (resizeArray : ResizeArray<'T>) startIndex endIndex (state : 'State) : 'State =
      // Preconditions
  
negative.code: /// <summary>
  /// Like <c>fold</c>, but return the intermediary and final results.
  /// </summary>
  /// <param name="folder"></param>
  /// <param name="state"></param>
  /// <param name="resizeArray"></param>
  /// <returns></returns>
  [<CompiledName("Scan")>]
  let scan folder (state : 'State) (resizeArray : ResizeArray<'T>) : ResizeArray<'State> =
      // Preconditions
  