anchor.diff:  
   ;; (gaussian-reduction #2A((1 1 2 0 1) (2 -1 0 1 -2) (2 -1 -1 -2 4) (2 -2 2 -1 0)))
   
  -
  -;; displaced-index-offset
  
positive.code: 
  
  (defun compute-array-vector* (m)
    ;; FIXME: Move this DEFUN to the MCi CLtL 'utils' system
    (declare (type array m)
             (values (simple-array t (*))))
    (let ((dims (array-dimensions m)))
  
negative.code: 
  (in-package #:math)
  
  ;;; % Matrix class
  
  #+NIL
  (defstruct (matrix
               (:constructor %make-matrix (i j vector matrix)))
    (i 0 :type array-dimension-designator)
    (j 0 :type array-dimension-designator)
    (vector #() :type (simple-array * (*)))
    (matrix #() :type (array * (* *))))
  
  #+NIL
  (defun make-matrix (i j &optional (element-type 'real))
    (declare (type array-dimension-designator i j)
             (type type-designator element-type))
    (let* ((v (make-array (* i j) :element-type element-type))
           (m (make-array (list i j)
                          :element-type element-type
                          :displaced-to v
                          :displaced-index-offset 0)))
      (%make-matrix i j v m)))
  
  ;; (make-matrix 2 4)
  
  #+NIL
  (defmethod print-object ((object matrix) stream)
    (print-unreadable-object (object stream :type t :identity t)
      (format stream "(~D ~D)" 
              (matrix-i object)
              (matrix-j object))))
  
  
    
  ;;; % Array utilities
  
  (defun copy-array (m)
    (declare (type array m)
  