anchor.diff:  
           vec |> map (fun x -> projection x, x)
   
  -    /// Returns the first element in the array.
  +    /// Returns the first element in the vector.
       [<CompiledName("First")>]
       let inline first (vec : vector<'T>) : 'T =
           if isEmpty vec then
               invalidOp "Cannot retrieve the first element of an empty vector."
           else vec.[0]
   
  -    /// Returns the index of the last element in the array.
  +    /// Returns the index of the last element in the vector.
       [<CompiledName("LastIndex")>]
       let inline lastIndex (vec : vector<'T>) : int =
           if isEmpty vec then
  -            invalidOp "The array is empty."
  +            invalidOp "The vector is empty."
           else vec.Length - 1
   
  -    /// Returns the last element in the array.
  +    /// Returns the last element in the vector.
       [<CompiledName("Last")>]
       let inline last (vec : vector<'T>) : 'T =
           if isEmpty vec then
               invalidOp "Cannot retrieve the last element of an empty vector."
           else vec.[vec.Length - 1]
   
  -    /// Determines if an array contains a specified value.
  +    /// Determines if a vector contains a specified value.
       [<CompiledName("Contains")>]
       let contains value (vec : vector<'T>) : bool =
           // Preconditions
  
positive.code:             acc <- Checked.(+) acc vec.[i]
          acc
  
      //
      [<CompiledName("SumBy")>]
      let inline sumBy (projection : 'T -> ^U) (vec : vector<'T>) : ^U =
          // Preconditions
  
negative.code:             ExtCore.vector.UnsafeCreate vec1,
              ExtCore.vector.UnsafeCreate vec2
  
      /// <summary>Splits a vector of triples into three vectors.</summary>
      /// <param name="vec">The input vector.</param>
      /// <returns>The tuple of three vectors.</returns>
      [<CompiledName("Unzip3")>]
      let unzip3 (vec : vector<'T1 * 'T2 * 'T3>) : vector<'T1> * vector<'T2> * vector<'T3> =
          // Preconditions
  