The $2$-norm of matrix $\mathrm A$ can also be computed numerically, say, by solving the following convex optimization problem in $t > 0$
$$\begin{array}{ll} \text{minimize} & t\\ \text{subject to} & \| \mathrm A \|_2 \leq t\end{array}$$
or, using the Schur complement, by solving the following semidefinite program (SDP)
$$\begin{array}{ll} \text{minimize} & t\\ \text{subject to} & \begin{bmatrix} t \, \mathrm I_2 & \mathrm A\\ \mathrm A^\top & t \,\mathrm I_2\end{bmatrix} \succeq \mathrm O_4\end{array}$$
Using CVXPY (with NumPy),
from cvxpy import *
import numpy as np
A = np.array([[1, 4],
[5, 6]])
# create 2 x 2 identity matrix
I2 = np.identity(2)
# create optimization variable
t = Variable()
# create constraints
constraint1 = [ norm(A,2) <= t ]
constraint2 = [ bmat([[ t*I2, A],
[ A.T,t*I2]]) >> 0 ]
# create optimization problem
optprob = Problem( Minimize(t), constraint1 )
# solve optimization problem
optprob.solve()
print t.value
Using
constraint1
, the minimum is 8.68334897643
.
constraint2
, the minimum is 8.68262817347
.
From the other answers, the exact value of the minimum is
$$\sqrt{39 + 5 \sqrt{53}} \approx 8.68334897642624$$
and, thus, using constraint1
produces more accurate results.