1: \begin{abstract}
2: We study a classical iterative algorithm for balancing matrices in the $L_\infty$ norm via a scaling transformation. This algorithm, which goes back to Osborne and Parlett \& Reinsch in the 1960s,
3: is implemented as a standard preconditioner in many numerical linear algebra packages.
4: Surprisingly, despite its widespread use over several decades, no bounds were known on
5: its rate of convergence. In this paper we prove that, for any irreducible $n\times n$
6: (real or complex) input matrix~$A$, a natural variant of the algorithm converges in
7: $O(n^3\log(n\rho/\varepsilon))$ elementary balancing operations, where $\rho$ measures
8: the initial imbalance of~$A$ and $\varepsilon$ is the target imbalance of the output matrix.
9: (The imbalance of~$A$ is $\max_i |\log(\aiout/\aiin)|$, where $\aiout,\aiin$ are the maximum
10: entries in magnitude in the $i$th row and column respectively.) This bound is tight
11: up to the $\log n$ factor. A balancing operation
12: scales the $i$th row and column so that their maximum entries are equal, and requires
13: $O(m/n)$ arithmetic operations on average, where $m$ is the number of non-zero elements in~$A$.
14: Thus the running time of the iterative algorithm is $\Otilde(n^2m)$. This is the first time bound
15: of any kind on any variant of the Osborne-Parlett-Reinsch algorithm.
16: We also prove a conjecture of Chen that characterizes those matrices for which
17: the limit of the balancing process is independent of the order in which
18: balancing operations are performed.
19: \end{abstract}
20: