### 5.54.6 The operator norm of a matrix: matrix_norm, l1norm, l2norm, norm, specnorm, linfnorm

The matrix_norm command takes two arguments, a matrix A and a second argument of either 1, 2 or inf.
matrix_norm returns the operator norm of the operator associated to the matrix. (See the reminder below for a discussion of operator norms.) The operator norm will be relative to the ℓ1, ℓ2 or ℓ∞ norm on ℝn, depending on the second argument. Note that

- matrix_norm(A,1) is the same as l1norm(A) and colnorm(A).
- matrix_norm(A,2) is the same as l2norm(A) and max(SVL(A)).
- matrix_norm(A,inf) is the same as linfnorm(A) and rownorm(A).

Input:

B := [[1,2,3],[3,-9,6],[4,5,6]]

then:

matrix_norm(B,1)

or:

l1norm(B)

or:

colNorm(B)

Output:

16

since max(1+3+4, 2+9+5, 3+6+6)=16.

Input:

matrix_norm(B,2)

or:

l2norm(B)

or:

max(SVL(B))

Output:

11.2449175989

Input:

matrix_norm(B,inf)

or:

linfnorm(B)

or:

rowNorm(B)

Output:

18

since max(1+2+3, 3+9+6, 4+5+6)=18.

Reminder:
In mathematics, particularly functional analysis, a linear function between two normed spaces f:E → F is continuous exactly when there is a number K such that ||f(x)||F ≤ K ||x|| for all x in E. For this reason, they are also called bounded linear functions. The infimum of all such K is defined to be the operator norm of f, and it depends on the norms of E and F. There are other characterizations of the operator norm of f, such as the supremum of ||f(x)||F over all x in E with ||x||E ≤ 1.

If E and F are finite dimensional, then any linear function f:E→ F will be bounded.

Any m× n matrix A = (ajk) corresponds to a linear function f:ℝn → ℝm defined by f(x) = Ax. We will refer to the operator norm of f as the operator norm of A.

- If ℝn and ℝm both have the ℓ1 norm, namely for x = (x1,x2,…) the norm is ||x|| = ∑j |xj|, the operator norm of A is

  max
  k

  (

  ∑
  j

  |ajk|,

  which is given by matrix_norm(A,1) and colnorm(A).
- If ℝn and ℝm both have the ℓ2 norm, namely for x = (x1,x2,…) the norm is ||x|| = √∑j xj2 (the usual Euclidean norm), the operator norm of A is the largest eigenvalue of f*∘ f, where f* is the transpose of f, and so the largest singular value of f, which is given by matrix_norm(A,2), l2norm(A), and max(SVL(A)).
- If ℝn and ℝm both have the ℓ∞ norm, namely for x = (x1,x2,…) the norm is |x| = maxj |xj|, the operator norm of A is

  max
  j

  (

  ∑
  k

  |ajk|,

  which is given by matrix_norm(A,inf) and rownorm(A).