Efficient approximation of a matrix and its inverse - MathOverflow most recent 30 from http://mathoverflow.net 2013-05-24T18:36:48Z http://mathoverflow.net/feeds/question/30071 http://www.creativecommons.org/licenses/by-nc/2.5/rdf http://mathoverflow.net/questions/30071/efficient-approximation-of-a-matrix-and-its-inverse Efficient approximation of a matrix and its inverse Iddo Tzameret 2010-06-30T16:30:15Z 2010-06-30T19:00:43Z <p>Assume that $ A $ is a real $ n\times n $ matrix whose rows constitute an orthonormal basis of $ \mathbb R^n $. </p> <p><strong>Informal statement of question:</strong> Assume we want to approximate $ A $ by a rational matrix, such that each entry can be written efficiently (that is, has a small binary encoding), but we require also the inverse of the approximate matrix to have small representation. Is this possible? </p> <p><strong>Formal statement of question:</strong> Let $ p(n) $ be some polynomial in $ n $. For a real number $ r $, we say that $ a/b $ is a <em>polynomial approximation of $ r $</em>, if $ a/b$ is a rational number (that is, $ a,b $ are integers) and both $ a $ and $ b $ are of size at most $p(n) $ (e.g., their binary representation is of logarithmic size in $ n $), such that $ |r-a/b|\le 1/p(n) $. </p> <p><em>Question</em>: Does there exist a rational matrix $ B$, such that $ B $ polynomially approximates $ A $ (that is, the entry $ B_{ij} $ in $ B $, is a polynomial approximation of the entry $ A_{ij} $ in $ A $, for all $ 1\le i,j\le n $), and such that $ B^{-1} $ is a rational matrix whose entries are all polynomially-bounded (that is, for any $ 1\le i,j\le n $, $ B^{-1}_{ij}=a/b$, where $ a,b $ are integers of size at most $ p(n) $) ? </p> http://mathoverflow.net/questions/30071/efficient-approximation-of-a-matrix-and-its-inverse/30079#30079 Answer by lhf for Efficient approximation of a matrix and its inverse lhf 2010-06-30T17:39:23Z 2010-06-30T17:39:23Z <p>If <em>A</em> is orthogonal then its inverse is the transpose and so you only need to approximate <em>A</em>.</p> http://mathoverflow.net/questions/30071/efficient-approximation-of-a-matrix-and-its-inverse/30083#30083 Answer by David Speyer for Efficient approximation of a matrix and its inverse David Speyer 2010-06-30T18:03:19Z 2010-06-30T19:00:43Z <p>In $\mathbb{R}^3$, <a href="http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.52.4964" rel="nofollow">Milenkovic and Milenkovic</a> give an alogrithm for efficiently approximating an orthogonal matrix by a rational orthogonal matrix. As lhf points out, the inverse of an orthogonal matrix is its transpose, so the inverse will also have short entries in this setting. </p> <p>Regarding $n>3$, here is a tentative thought, and a reference. I haven't put much effort into either :).</p> <p>Let $v=(v_1, v_2, \ldots, v_n)$ be a nonzero vector. Define a linear operator <code>$$s_v(u) := u - 2 \frac{\langle v,u \rangle}{\langle v,v \rangle} v.$$</code> This is the orthogonal reflection that negates $v$. Note that, if $v \in \mathbb{Q}^n$, then the entries of the matrix $s_v$ are rational. This is true even if $v$ does not have norm $1$.</p> <p>Now, any rotation matrix can be written as a product of $\leq n$ reflections: $R=\prod_{i=1}^h s_{v_i}$ for some sequence of vectors $v_i$ in $\mathbb{R}^n$. A potential algorithm, then, is to find such a factorization and then approximate each $v_i$ by a rational vector $w_i$ which is roughly parallel to it. (There are plenty of standard algorithms for rational approximation of a vector.) Then take $\prod s_{w_i}$ as the approximation to $R$.</p> <p>I got this strategy from a paper of <a href="http://www.ams.org/mathscinet-getitem?mr=2425007" rel="nofollow">Eric Schmutz</a>. Schmutz follows this strategy, but he forces his approximating vectors $w_i$ to lie on the unit sphere. As far as I can see, this is a waste of effort, since $s_v$ is orthogonal with rational entries even if $v$ is not on the unit sphere. However, Schmutz has exact bounds, which you may find useful.</p>