anchor.diff:      let ofScalar x     = DS.scalarDenseMatrixDS x |> MS.dense
       ///
       let ofArray2D arr : matrix = MG.ofArray2D arr
  +    ///
  +    let sparseOfArray2D arr : matrix = MG.sparseOfArray2D arr
       ///
       let toArray2D (m : matrix) = MG.toArray2D m
       ///
  
positive.code:     let to_rowvec x = toRowVector x
      let to_scalar x = toScalar x
      let inline of_array2D arr  = ofArray2D arr
      let inline to_array2D m = toArray2D m
      let of_list    xss   = ofJaggedList xss
      let of_seq     xss   = ofJaggedSeq xss
      let init_diagonal v   = initDiagonal   v
      let of_scalar x     = ofScalar x
      let to_dense x = toDense x
      let init_dense i j a = initDense i j a
      let init_sparse i j a = initSparse i j a
  
  
negative.code:     let foldi f z (a:matrix) = MG.foldi f z a
      /// Transforms the matrix a to a dense matrix representation
      let toDense (a:matrix) = MG.toDense a
      /// Transforms the matrix a to a sparse matrix representation
      let toSparse (a:matrix) = MG.toSparse a
      /// Creates a dense matrix with i rows and j columns. All values are initialized to the value of a.
      let initDense i j a : matrix = MG.initDense i j a
      /// Creates a sparse matrix with i rows and j columns. All values are initialized to the value of a.
  