Matrix (Matrix matrix) { if (getColumns() != matrix.getColumns()) throw new IllegalArgumentException("columns mismatch"); if (getRows() != matrix.getRows()) throw new IllegalArgumentException("rows mismatch"); return new Matrix(width, height, vector.plus(matrix.vector)); }