19.07.2014 Views

Contents - Student subdomain for University of Bath

Contents - Student subdomain for University of Bath

Contents - Student subdomain for University of Bath

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

66 CHAPTER 3. POLYNOMIAL EQUATIONS<br />

and multiply this by v, and <strong>for</strong> dense M and N, this is right if there are more<br />

than n such vectors v. But, if n ≫ e > 2, this is not optimal, since, once MN<br />

is computed, computing (MN)v requires ne 2 operations, while compluting Nv<br />

requires ne, as does computing M(Nv), totalling 2ne < ne 2 .<br />

3.2.3 Matrix Inverses: not a good idea!<br />

The first response to the question “how do we compute matrix inverses” ought<br />

to be “are you sure you want to?” Solving (as opposed to thinking about the<br />

solution <strong>of</strong>) equation (3.13) via equation (3.14) is <strong>of</strong>ten not the best way to<br />

proceed. Gaussian elimination (possibly using some <strong>of</strong> the techniques described<br />

later in this section) directly on equation (3.13) is generally the best way. This is<br />

particularly true if M is sparse, since M −1 is generally not sparse — an extreme<br />

example <strong>of</strong> fill-in. Indeed, special techniques are generally used <strong>for</strong> the solution<br />

<strong>of</strong> large sparse systems, particularly those arising in integer factorisation or<br />

other cryptographic applications [HD03].<br />

The usual method <strong>of</strong> solving linear equations, or computing the inverse <strong>of</strong> a<br />

matrix, is via Gaussian elimination, i.e. trans<strong>for</strong>ming equation (3.13) into one in<br />

which M is upper triangular, and then back-substituting. This trans<strong>for</strong>mation<br />

is done by row operations, which amount to adding/subtracting multiples <strong>of</strong> one<br />

row from another, since<br />

P = Q & R = S implies P + λR = Q + λS. (3.15)<br />

If we try this on the above example, we deduce successively that z = a−18b+13c,<br />

y = a − 14b + 10c and x = a − 15b + 11c. Emboldened by this we might try a<br />

larger matrix:<br />

⎛<br />

⎞<br />

a b c d<br />

e f g h<br />

M =<br />

. (3.16)<br />

⎜<br />

⎝<br />

i j k l ⎟<br />

⎠<br />

m n o p<br />

After clearing out the first column, we get the matrix<br />

⎛<br />

⎜<br />

⎝<br />

⎞<br />

a b c d<br />

0 − eb<br />

a + f − ec<br />

a + g − ed a + h<br />

0 − ib a + j − ic a + k − id a + l<br />

.<br />

⎟<br />

⎠<br />

0 − mb<br />

a + n − mc<br />

a + o − md<br />

a<br />

+ p

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!