For a matrix to be in reduced row echelon form (or Hermite normal form) it has to first satisfy the requirements to be in row echelon form and additionally satisfy the following requirements: