thats what I thought.
by the way, i have a conceptual proof, no doubt well known,
that the reduced echelon form of an m by n matrix A (over a field) is unique.
Convention: In an echelon matrix, the first non zero entry in each non zero row, is called a "pivot", and the column it occurs in is called a pivot column. In a matrix of coefficients for a linear system of equations , the corresponding avriable is called a pivot variable. Hence the number of pivots equals the rank of the coefficient matrix.
Consider the system A.X = 0, and its set S of solutions in k^n.
Then the existence of the reduced echelon form of A, reveals that S is simply the graph of a linear function, with domain the subspace of k^n spanned by the "free" variables, and range the subspace of k^n spanned by the "pivot" or "fixed" variables.
Hence if you know which variables are pivots and which are free, then the set S determines the graph of the function expressing the pivot variables in terms of the free ones, and hence determines the reduced echelon matrix.
So choose as free variables the lexicographically largest possible subsequence of the n variables, such that S projects isomorphically onto the subspace they span. That will be the domain of the function with graph S.
Then the function whose graph S determines in the resulting product gives the reduced echelon form.
I.e. the column (or the part of the column above the zeroes) of that reduced matrix, corresponding to a given free variable Xj, is the value of the function with graph S, evaluated at the jth standard basis vector ej.
Is this indeed well known? standard books seem to give more tedious proofs of this result, which of course implies that rank is well defined (over a field).
But of course since this is true, and visible to anyone who thinks enough about it and knows what a graph is, it surely has been noticed before, probably by Gauss or Euler. Still I kind of hope it is news to somebody besides me.
One can also argue the rank well defined, by observing that a variable is a pivot variable if and only if the value of that variable (in the entries of every solution), is determined by the values of the later variables. Hence the set of solutions determines the subset of pivot variables, in particular the number of them, i.e. the rank.
The easier argument that a column is a pivot column if and only if the system defined by the part of the matrix to the left of that column is consistent, (with that column as desired solution vector), implies that the pivot variables are well defined, hence so is the rank, also over the integers.
My apologies to the beginners, this query was directed at the other teachers out there.