I would like to understand whether Gaussian elimination of an integer matrix, which uses only row operations of the form
- Addition (or subtraction) of row $i$ to row $j$
can be performed in polynomial time.
Fraction-free Gaussian elimination can be demonstrated using such row operations by considering that these row operations generate the group $SL(2,\mathbf Z)$. Therefore, it is possible to perform operations on an an arbitrary column as
$$\left(\begin{matrix}a&b\\c&d\end{matrix}\right)$$
where the determinant $ad-cb=1$.
The $i$-th element of a matrix row can be reduced to $0$ by choosing $c,d$ such that
$$\left(\begin{matrix}a&b\\c&d\end{matrix}\right)\left(\begin{matrix}r_i\\r_j \end{matrix}\right)=\left(\begin{matrix}ar_i+br_j\\cr_i+dr_j \end{matrix}\right)=\left(\begin{matrix}ar_i+br_j\\0 \end{matrix}\right)$$
However, after $n$ iterations this results in exponential size matrix elements.
In the book [1] chapter 9.3 gives a "fraction-free" algorithm which shows that Gaussian elimination is possible for integer matrices by making use of the fact that common factors can be removed at each stage of the algorithm.
In the first "primitive" algorithm they suggest, they reduce common factors using the GCD of the row $i$ at each iteration. However, this would not correspond to an integer row additions. And so while this algorithm is fraction-free, it is not division free, in the sense that an additional row operation (i.e. dividing a row by some integer) is required in order to reduce the size of the elements and ensure polynomial time calculation.
However, what I do not understand is whether the next algorithm in the book given in (9.5) can be performed with only row additions.
Is a truly fraction free (and division free, in the sense of row division) Gaussian elimination possible in polynomial time?
[1] Geddes, K. O., Czapor, S. R., & Labahn, G. (1992). Algorithms for computer algebra. Springer Science & Business Media.