changed 3 years ago
Linked with GitHub

基底轉換

Creative Commons License
This work by Jephian Lin is licensed under a Creative Commons Attribution 4.0 International License.

\(\newcommand{\trans}{^\top} \newcommand{\adj}{^{\rm adj}} \newcommand{\cof}{^{\rm cof}} \newcommand{\inp}[2]{\left\langle#1,#2\right\rangle} \newcommand{\dunion}{\mathbin{\dot\cup}} \newcommand{\bzero}{\mathbf{0}} \newcommand{\bone}{\mathbf{1}} \newcommand{\ba}{\mathbf{a}} \newcommand{\bb}{\mathbf{b}} \newcommand{\bc}{\mathbf{c}} \newcommand{\bd}{\mathbf{d}} \newcommand{\be}{\mathbf{e}} \newcommand{\bh}{\mathbf{h}} \newcommand{\bp}{\mathbf{p}} \newcommand{\bq}{\mathbf{q}} \newcommand{\br}{\mathbf{r}} \newcommand{\bx}{\mathbf{x}} \newcommand{\by}{\mathbf{y}} \newcommand{\bz}{\mathbf{z}} \newcommand{\bu}{\mathbf{u}} \newcommand{\bv}{\mathbf{v}} \newcommand{\bw}{\mathbf{w}} \newcommand{\tr}{\operatorname{tr}} \newcommand{\nul}{\operatorname{null}} \newcommand{\rank}{\operatorname{rank}} %\newcommand{\ker}{\operatorname{ker}} \newcommand{\range}{\operatorname{range}} \newcommand{\Col}{\operatorname{Col}} \newcommand{\Row}{\operatorname{Row}} \newcommand{\spec}{\operatorname{spec}} \newcommand{\vspan}{\operatorname{span}} \newcommand{\Vol}{\operatorname{Vol}} \newcommand{\sgn}{\operatorname{sgn}} \newcommand{\idmap}{\operatorname{id}} \newcommand{\am}{\operatorname{am}} \newcommand{\gm}{\operatorname{gm}} \newcommand{\mult}{\operatorname{mult}} \newcommand{\iner}{\operatorname{iner}}\)

from lingeo import random_good_matrix

Main idea

Let \(V\) be a vector space.
Let \(\alpha = \{{\bf v}_1, \ldots, {\bf v}_n\}\) and \(\beta = \{{\bf u}_1, \ldots, {\bf u}_n\}\) be two bases of \(V\).
Each vector \({\bf b}\) can have different representations \([{\bf b}]_\alpha\) and \([{\bf b}]_\beta\) depending on the bases used.
Let \([\operatorname{id}]_\alpha^\beta\) be the \(n \times n\) matrix
\[\begin{bmatrix} | & ~ & | \\ [{\bf v}_1]_\beta & \cdots & [{\bf v}_n]_\beta \\ | & ~ & | \\ \end{bmatrix}. \]
Then \([\operatorname{id}]_\alpha^\beta [{\bf b}]_\alpha = [{\bf b}]_\beta\) for any \({\bf b}\in V\).
Therefore, we call \([\operatorname{id}]_\alpha^\beta\) the change of basis matrix from \(\alpha\) to \(\beta\).
(The notation \([\operatorname{id}]_\alpha^\beta\) means it is an identity map from \(V\) to \(V\) but we are observing the domain and the codomain from the points of view of \(\alpha\) and \(\beta\).
This notation will be more clear when we introduce the matrix representation of a linear function.)

The change of basis matrix \([\operatorname{id}]_\alpha^\beta\) can be viewed as a function taking the representation in \(\alpha\) and output the representation in \(\beta\).
Therefore, if we have another basis \(\gamma\), then we have

  • \([\operatorname{id}]_\alpha^\alpha = I_n\),
  • \([\operatorname{id}]_\beta^\gamma[\operatorname{id}]_\alpha^\beta = [\operatorname{id}]_\alpha^\gamma\),
  • \([\operatorname{id}]_\beta^\alpha[\operatorname{id}]_\alpha^\beta = I_n\).

Note that a matrix takes its input vector from the right, so we should read a product of matrices from right to left.

Side stories

  • inverse of a change of basis matrix

Experiments

Exercise 1

執行以下程式碼。

[注意:程式碼有更新]

### code
### code
set_random_seed(0)
print_ans = False
A = random_good_matrix(3,3,3, bound=3)
B = random_good_matrix(3,3,3, bound=3)
e1,e2,e3 = identity_matrix(3).transpose()
u1,u2,u3 = A.transpose()
v1,v2,v3 = B.transpose()

print("alpha has three vectors:")
print("e1 =", e1)
print("e2 =", e2)
print("e3 =", e3)

print("beta has three vectors:")
print("u1 =", u1)
print("u2 =", u2)
print("u3 =", u3)

print("gamma has three vectors:")
print("v1 =", v1)
print("v2 =", v2)
print("v3 =", v3)

if print_ans:
    print("[id]_alpha^beta =")
    show(A.inverse())
    print("[id]_beta^alpha =")
    show(A)
    print("[id]_beta^gamma =")
    show(B.inverse() * A)
    print("[id]_alpha^gamma =")
    show(B.inverse())
  • \left\{ ... \right\} 來把大括號變高

藉由 seed = 0 得到三個 \(\mathbb R^3\) 中的基底: \[\alpha = \left\{\left( \begin{array}{c} 1 \\ 0 \\ 0 \\ \end{array} \right), \left( \begin{array}{c} 0 \\ 1 \\ 0 \\ \end{array} \right), \left( \begin{array}{c} 0 \\ 0 \\ 1 \\ \end{array} \right)\right\}\]

\[\beta = \left\{\left( \begin{array}{c} 1 \\ -3 \\ 0 \\ \end{array} \right), \left( \begin{array}{c} 3 \\ -8 \\ -1 \\ \end{array} \right), \left( \begin{array}{c} 1 \\ -1 \\ -1 \\ \end{array} \right)\right\} \]

\[\gamma = \left\{\left( \begin{array}{c} 1 \\ -3 \\ -2 \\ \end{array} \right), \left( \begin{array}{c} 1 \\ -2 \\ -2 \\ \end{array} \right), \left( \begin{array}{c} 2 \\ -5 \\ -3 \\ \end{array} \right)\right\} \]

Exercise 1(a)

計算 \([\operatorname{id}]_\alpha^\beta\)\([\operatorname{id}]_\beta^\alpha\)
並確認 \([\operatorname{id}]_\beta^\alpha [\operatorname{id}]_\alpha^\beta = I_3\)

  • 我能接受 \([\operatorname{id}]_\beta^\alpha\) 不用算式;但 \([\operatorname{id}]_\alpha^\beta\) 要說明怎麼得到的

\(Ans:\)

\[[\operatorname{id}]_\beta^\alpha =\left( \begin{array}{ccc} 1 & 3 & 1 \\ -3 & -8 & -1 \\ 0 & -1 & -1 \\ \end{array} \right). \]

假設 \(\beta\) 中的向量依序為 \(\bu_1,\bu_2,\bu_3\),那麼 \((1 , 0 , 0)\) 這個以 \(\alpha\) 表示法表示出來的向量可以表示成 \(c_1\bu_1 + c_2\bu_2 + c_3\bu_3\),其中 \(c_1,c_2,c_3 \in \mathbb R\)
\(c_1,c_2,c_3\) 就是我們要求的 \([\operatorname{id}]_\alpha^\beta\) 的第一行。同理我們可以代 \((0 , 1 , 0),(0 , 0 , 1)\) 進去求出第二及第三行。 得到

\[[\operatorname{id}]_\alpha^\beta =\left( \begin{array}{ccc} 7 & 2 & 5 \\ -3 & -1 & -2 \\ 3 & 1 & 1 \\ \end{array} \right) .\]

\[[\operatorname{id}]_\alpha^\beta [\operatorname{id}]_\beta^\alpha = \left( \begin{array}{ccc} 7 & 2 & 5 \\ -3 & -1 & -2 \\ 3 & 1 & 1 \\ \end{array} \right) \left( \begin{array}{ccc} 1 & 3 & 1 \\ -3 & -8 & -1 \\ 0 & -1 & -1 \\ \end{array} \right) =\left( \begin{array}{ccc} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \\ \end{array} \right) = I_3. \]

Exercise 1(b)

計算 \([\operatorname{id}]_\beta^\gamma\)\([\operatorname{id}]_\alpha^\gamma\)
並確認 \([\operatorname{id}]_\beta^\gamma [\operatorname{id}]_\alpha^\beta = [\operatorname{id}]_\alpha^\gamma\)

  • 說明這些數字是怎麼得到的

\(Ans:\)

同樣的,我們可以用上面的敘述算出 \([\operatorname{id}]_\beta^\gamma\) 以及 \([\operatorname{id}]_\alpha^\gamma\) 的行,得到 \[[\operatorname{id}]_\beta^\gamma = \left( \begin{array}{ccc} -1 & -3 & -2 \\ -2 & -4 & 1 \\ 2 & 5 & 1 \\ \end{array} \right),[\operatorname{id}]_\alpha^\gamma = \left( \begin{array}{ccc} -4 & -1 & -1 \\ 1 & 1 & -1 \\ 2 & 0 & 1 \\ \end{array} \right).\]

\[[\operatorname{id}]_\beta^\gamma [\operatorname{id}]_\alpha^\beta = \left( \begin{array}{ccc} -1 & -3 & -2 \\ -2 & -4 & 1 \\ 2 & 5 & 1 \\ \end{array} \right) \left( \begin{array}{ccc} 7 & 2 & 5 \\ -3 & -1 & -2 \\ 3 & 1 & 1 \\ \end{array} \right) = \left( \begin{array}{ccc} -4 & -1 & -1 \\ 1 & 1 & -1 \\ 2 & 0 & 1 \\ \end{array} \right) = [\operatorname{id}]_\alpha^\gamma. \]

Exercises

Exercise 2

對於以下的各向量空間 \(V\)
以及兩個基底 \(\alpha\)\(\beta\)
求出 \([\operatorname{id}]_\alpha^\beta\)\([\operatorname{id}]_\beta^\alpha\)

Exercise 2(a)

\(V = \mathbb{R}^3\)
\(\alpha = \{{\bf e}_1, {\bf e}_2, {\bf e}_3\}\) 為標準基底、
\[\beta = \left\{\begin{aligned} {\bf u}_1 = (0,0,1), \\ {\bf u}_2 = (0,1,1), \\ {\bf u}_3 = (1,1,1) \end{aligned}\right\}. \]

  • 說明原因

\(Ans:\)

\[[\operatorname{id}]_\beta^\alpha =\left( \begin{array}{ccc} 0 & 0 & 1 \\ 0 & 1 & 1 \\ 1 & 1 & 1 \\ \end{array} \right).\] 假設 \(\beta\) 中的向量依序為 \(\bu_1,\bu_2,\bu_3\),那麼 \((1 , 0 , 0)\) 這個以 \(\alpha\) 表示法表示出來的向量可以表示成 \(c_1\bu_1 + c_2\bu_2 + c_3\bu_3\),其中 \(c_1,c_2,c_3 \in \mathbb R\)
\(c_1,c_2,c_3\) 就是我們要求的 \([\operatorname{id}]_\alpha^\beta\) 的第一行。同理我們可以代 \((0 , 1 , 0),(0 , 0 , 1)\) 進去求出第二及第三行。 得到 \[[\operatorname{id}]_\alpha^\beta =\left[ \begin{array}{ccc} 0 & -1 & 1 \\ -1 & 1 & 0 \\ 1 & 0 & 0 \\ \end{array} \right]. \]

Exercise 2(b)

\(V = \mathbb{R}^3\)
\(\alpha = \{{\bf e}_1, {\bf e}_2, {\bf e}_3\}\) 為標準基底、
\[\beta = \left\{\begin{aligned} {\bf u}_1 = (\frac{1}{\sqrt{3}}, \frac{1}{\sqrt{3}}, \frac{1}{\sqrt{3}}), \\ {\bf u}_2 = (\frac{1}{\sqrt{2}},-\frac{1}{\sqrt{2}},0), \\ {\bf u}_3 = (\frac{1}{\sqrt{6}},\frac{1}{\sqrt{6}},-\frac{2}{\sqrt{6}}) \end{aligned}\right\}. \]

  • 說明原因

\(Ans:\)

\[[\operatorname{id}]_\beta^\alpha =\left[ \begin{array}{ccc} \frac{1}{\sqrt{3}} & \frac{1}{\sqrt{2}} & \frac{1}{\sqrt{6}} \\ \frac{1}{\sqrt{3}} & \frac{-1}{\sqrt{2}} & \frac{1}{\sqrt{6}}\\ \frac{1}{\sqrt{3}} & 0 & \frac{-2}{\sqrt{6}} \\ \end{array} \right]. \] 假設 \(\beta\) 中的向量依序為 \(\bu_1,\bu_2,\bu_3\),那麼 \((1 , 0 , 0)\) 這個以 \(\alpha\) 表示法表示出來的向量可以表示成 \(c_1\bu_1 + c_2\bu_2 + c_3\bu_3\),其中 \(c_1,c_2,c_3 \in \mathbb R\)
\(c_1,c_2,c_3\) 就是我們要求的 \([\operatorname{id}]_\alpha^\beta\) 的第一行。同理我們可以代 \((0 , 1 , 0),(0 , 0 , 1)\) 進去求出第二及第三行。 得到

\[[\operatorname{id}]_\alpha^\beta =\left[ \begin{array}{ccc} \frac{1}{\sqrt{3}} & \frac{1}{\sqrt{3}} & \frac{1}{\sqrt{3}} \\ \frac{1}{\sqrt{2}} & \frac{-1}{\sqrt{2}} & 0 \\ \frac{-1}{\sqrt{6}} & \frac{1}{\sqrt{6}} & \frac{-2}{\sqrt{6}} \\ \end{array} \right]. \]

Exercise 2©

\(V = \mathcal{P}_2\)
\(\alpha = \{1, x, x^2\}\) 為標準基底、
\(\beta = \{1, 1-x, (1-x)^2\}\)

  • 說明原因

\(Ans:\)
\(\beta = \{1, 1-x, 1-2x+x^2\}\) \[[\operatorname{id}]_\beta^\alpha =\left[ \begin{array}{ccc} 1 & 1 & 1 \\ 0 & -1 & -2 \\ 0 & 0 & 1 \\ \end{array} \right].\] 假設 \(\beta\) 中的向量依序為 \(\bu_1,\bu_2,\bu_3\),那麼 \((1 , 0 , 0)\) 這個以 \(\alpha\) 表示法表示出來的向量可以表示成 \(c_1\bu_1 + c_2\bu_2 + c_3\bu_3\),其中 \(c_1,c_2,c_3 \in \mathbb R\)
\(c_1,c_2,c_3\) 就是我們要求的 \([\operatorname{id}]_\alpha^\beta\) 的第一行。同理我們可以代 \((0 , 1 , 0),(0 , 0 , 1)\) 進去求出第二及第三行。 得到 \[[\operatorname{id}]_\alpha^\beta =\left[ \begin{array}{ccc} 1 & 1 & 1 \\ 0 & -1 & -2 \\ 0 & 0 & 1 \\ \end{array} \right]. \]

Exercise 2(d)


\[\begin{aligned} p_1(x) &= \frac{(x-2)(x-3)}{(1-2)(1-3)}, \\ p_2(x) &= \frac{(x-1)(x-3)}{(2-1)(2-3)}, \\ p_3(x) &= \frac{(x-1)(x-2)}{(3-1)(3-2)}. \\ \end{aligned} \] \(V = \mathcal{P}_2\)
\(\alpha = \{1, x, x^2\}\) 為標準基底、
\(\beta = \{p_1, p_2, p_3\}\)

  • 說明原因

\(Ans:\)
由原式可知 \[\begin{aligned} p_1(x) &= \frac{x^2-5x+6}{2} \\ p_2(x) &= -x^2+4x-3 \\ p_3(x) &= \frac{x^2-3x+2}{2} \\ \end{aligned}.\]

\[[\operatorname{id}]_\beta^\alpha =\left[ \begin{array}{ccc} 3 & -3 & 1 \\ \frac{-5}{2} & 4 & \frac{-3}{2} \\ \frac{1}{2} & -1 & \frac{1}{2} \\ \end{array} \right].\] 假設 \(\beta\) 中的向量依序為 \(\bu_1,\bu_2,\bu_3\),那麼 \((1 , 0 , 0)\) 這個以 \(\alpha\) 表示法表示出來的向量可以表示成 \(c_1\bu_1 + c_2\bu_2 + c_3\bu_3\),其中 \(c_1,c_2,c_3 \in \mathbb R\)
\(c_1,c_2,c_3\) 就是我們要求的 \([\operatorname{id}]_\alpha^\beta\) 的第一行。同理我們可以代 \((0 , 1 , 0),(0 , 0 , 1)\) 進去求出第二及第三行。 得到 \[[\operatorname{id}]_\alpha^\beta =\left[ \begin{array}{ccc} 1 & 1 & 1 \\ 1 & 2 & 4 \\ 1 & 3 & 9 \\ \end{array} \right].\]

Exercise 3

說明以下三個等式的直觀解釋:

  • \([\operatorname{id}]_\alpha^\alpha = I_n\),
  • \([\operatorname{id}]_\beta^\gamma[\operatorname{id}]_\alpha^\beta = [\operatorname{id}]_\alpha^\gamma\),
  • \([\operatorname{id}]_\beta^\alpha[\operatorname{id}]_\alpha^\beta = I_n\).

漂亮~

\(Ans:\)

\(1.\)
\([\operatorname{id}]_\alpha^\alpha\) 的意思是把以 \(\alpha\) 為基底的向量表示法轉為以 \(\alpha\) 的向量表示法,簡單說就是沒變。 而要能讓向量經過矩陣運算後不變,那只有單位矩陣這種可能,故 \[[\operatorname{id}]_\alpha^\alpha = I_n.\]

\(2.\)
\([\operatorname{id}]_\beta^\gamma[\operatorname{id}]_\alpha^\beta\) 的意思是把以 \(\alpha\) 為基底的向量表示法轉為以 \(\beta\) 的向量表示法,再把以 \(\beta\) 為基底的向量表示法轉為以 \(\gamma\) 的向量表示法。所以轉成 \(\beta\) 表示法只是一個過程,可以直接把以 \(\alpha\) 為基底的向量表示轉為以 \(\gamma\) 的向量表示法,所以 \[[\operatorname{id}]_\beta^\gamma[\operatorname{id}]_\alpha^\beta = [\operatorname{id}]_\alpha^\gamma.\]

\(3.\)
經由第二個敘述得到 \([\operatorname{id}]_\beta^\alpha[\operatorname{id}]_\alpha^\beta = [\operatorname{id}]_\alpha^\alpha\),再藉由第一個敘述得到 \([\operatorname{id}]_\alpha^\alpha = I_n.\) 所以, \[[\operatorname{id}]_\beta^\alpha[\operatorname{id}]_\alpha^\beta = I_n. \]

Exercise 4

我們已經看到每個基底轉換矩陣 \([\operatorname{id}]_\alpha^\beta\) 都是可逆的﹐而且其逆矩陣就是 \([\operatorname{id}]_\beta^\alpha\)
證明每個 \(n\times n\) 的可逆矩陣也可以寫成 \(\mathbb{R}^n\) 中的兩組基底 \(\alpha\)\(\beta\) 所建構出來的基底轉移矩陣。
(把 \(\alpha\) 取為 \(A\) 的各行向量、
\(\beta\) 取為標準基底。)

Great!

\(Ans:\)

\(A\) 為一個 \(n\times n\) 可逆矩陣, 且其行向量依序為 \(\bu_1,\ldots,\bu_n\)
\(\alpha = \{\bu_1, \ldots, \bu_n\}\)、 並令 \(\beta\)\(\mathbb{R}^n\) 中的標準基底。

那麼,因為 \(A\) 是可逆的,所以 \(A\) 中的行向量彼此線性獨立,故 \(A\)\(n\) 個軸。從這個條件中,我們可以得到 \(\alpha\)\(\Col(A) = \mathbb R^n\) 的基底。

此時如果我們想把以 \(\alpha\) 為基底的向量表示轉換成以 \(\beta\) 為基底的向量表示法,那我們可以利用一個矩陣來表示這次轉換。即

\[[\operatorname{id}]_\alpha^\beta[\operatorname{\bx}]_\alpha = [\operatorname{\bx}]_\beta, \]

其中 \([\operatorname{id}]_\alpha^\beta\) 為我們要求的矩陣,\([\bx]_\alpha\) 表示以 \(\alpha\) 為基底的向量表示法,\([\bx]_\beta\) 表示以 \(\beta\) 為基底的向量表示法。

此刻我們可以 \(\bu_1\) 代入這個式子,得到 \[[\operatorname{id}]_\alpha^\beta[\bu_1]_\alpha = [\bu_1]_\beta. \]

因為 \(\bu_1 = 1\bu_1 + 0\bu_2 + \cdots + 0\bu_n,\) 所以 \[[\bu_1]_\alpha = (1,0,\ldots,0). \] \(\bu_1 = c_1\be_1 + \cdots + c_n\be_n\),其中 \(c_1 , \ldots , c_n\)\(\bu_1\) 每一項的數值,所以 \[[\bu_1]_\beta = (c_1,\ldots,c_n) = \bu_1. \] 同理,我們可以寫出 \(\bu_2,\ldots,\bu_n\)\(\alpha\)\(\beta\) 表示法,整併之後得到 \[[\operatorname{id}]_\alpha^\beta \begin{bmatrix} | & ~ & | \\ [\bu_1]_\alpha & \cdots & [\bu_n]_\alpha \\ | & ~ & | \\ \end{bmatrix} = \begin{bmatrix} | & ~ & | \\ [\bu_1]_\beta & \cdots & [\bu_n]_\beta \\ | & ~ & | \\ \end{bmatrix}.\]

\[[\operatorname{id}]_\alpha^\beta \begin{bmatrix} | & ~ & | \\ [\bu_1]_\alpha & \cdots & [\bu_n]_\alpha \\ | & ~ & | \\ \end{bmatrix} = [\operatorname{id}]_\alpha^\beta I_n \] \[\begin{bmatrix} | & ~ & | \\ [\bu_1]_\beta & \cdots & [\bu_n]_\beta \\ | & ~ & | \\ \end{bmatrix} = \begin{bmatrix} | & ~ & | \\ \bu_1 & \cdots & \bu_n \\ | & ~ & | \\ \end{bmatrix} = A. \]

得到 \[[\operatorname{id}]_\alpha^\beta I_n = [\operatorname{id}]_\alpha^\beta = A. \]

目前分數 6.5

Select a repo