## 利用行列式推導海龍公式

$\displaystyle \Delta=\sqrt{s(s-a)(s-b)(s-c)}$

$\displaystyle \Delta=\frac{1}{2}\begin{vmatrix} 1&1&1\\ x_1&x_2&x_3\\ y_1&y_2&y_3 \end{vmatrix}$

$\displaystyle d-e=\frac{d^2-e^2}{d+e}=\frac{b^2-c^2}{a}$

$\displaystyle d=\frac{a^2+b^2-c^2}{2a}$

$\displaystyle \Delta=\frac{1}{2}ah=\frac{1}{2}a\sqrt{b^2-d^2}=\frac{1}{2}\sqrt{(ab)^2-\left(\frac{a^2+b^2-c^2}{2}\right)^2}$

\displaystyle\begin{aligned} \Delta^2&=\frac{1}{16}\left((2ab)^2-(a^2+b^2-c^2)^2\right)\\ &=\frac{1}{16}(2ab+a^2+b^2-c^2)(2ab-a^2-b^2+c^2)\\ &=\frac{1}{16}((a+b)^2-c^2)(c^2-(a-b)^2)\\ &=\frac{1}{16}(a+b+c)(a+b-c)(c+a-b)(c-a+b)\\ &=s(s-c)(s-b)(s-a). \end{aligned}

\displaystyle\begin{aligned} \Delta^2&=\frac{1}{2}\begin{vmatrix} 1&x_1&y_1\\ 1&x_2&y_2\\ 1&x_3&y_3 \end{vmatrix}\cdot\frac{1}{2}\begin{vmatrix} 1&1&1\\ x_1&x_2&x_3\\ y_1&y_2&y_3 \end{vmatrix}\\ &=\frac{1}{4}\begin{vmatrix} 1+x_1x_1+y_1y_1&1+x_1x_2+y_1y_2&1+x_1x_3+y_1y_3\\ 1+x_2x_1+y_2y_1&1+x_2x_2+y_2y_2&1+x_2x_3+y_2y_3\\ 1+x_3x_1+y_3y_1&1+x_3x_2+y_3y_2&1+x_3x_3+y_3y_3 \end{vmatrix}\\ &=\frac{1}{4}\begin{vmatrix} 1+\mathbf{p}_1\cdot\mathbf{p}_1&1+\mathbf{p}_1\cdot\mathbf{p}_2&1+\mathbf{p}_1\cdot\mathbf{p}_3\\ 1+\mathbf{p}_2\cdot\mathbf{p}_1&1+\mathbf{p}_2\cdot\mathbf{p}_2&1+\mathbf{p}_2\cdot\mathbf{p}_3\\ 1+\mathbf{p}_3\cdot\mathbf{p}_1&1+\mathbf{p}_3\cdot\mathbf{p}_2&1+\mathbf{p}_3\cdot\mathbf{p}_3 \end{vmatrix}\\ &=\frac{1}{4}\begin{vmatrix} 1&1&1&1\\ 0&1+\mathbf{p}_1\cdot\mathbf{p}_1&1+\mathbf{p}_1\cdot\mathbf{p}_2&1+\mathbf{p}_1\cdot\mathbf{p}_3\\ 0&1+\mathbf{p}_2\cdot\mathbf{p}_1&1+\mathbf{p}_2\cdot\mathbf{p}_2&1+\mathbf{p}_2\cdot\mathbf{p}_3\\ 0&1+\mathbf{p}_3\cdot\mathbf{p}_1&1+\mathbf{p}_3\cdot\mathbf{p}_2&1+\mathbf{p}_3\cdot\mathbf{p}_3 \end{vmatrix}\\ &=\frac{1}{4}\begin{vmatrix} 1&1&1&1\\ -1&\mathbf{p}_1\cdot\mathbf{p}_1&\mathbf{p}_1\cdot\mathbf{p}_2&\mathbf{p}_1\cdot\mathbf{p}_3\\ -1&\mathbf{p}_2\cdot\mathbf{p}_1&\mathbf{p}_2\cdot\mathbf{p}_2&\mathbf{p}_2\cdot\mathbf{p}_3\\ -1&\mathbf{p}_3\cdot\mathbf{p}_1&\mathbf{p}_3\cdot\mathbf{p}_2&\mathbf{p}_3\cdot\mathbf{p}_3 \end{vmatrix}\\ &=-\frac{1}{4}\begin{vmatrix} -1&1&1&1\\ 1&\mathbf{p}_1\cdot\mathbf{p}_1&\mathbf{p}_1\cdot\mathbf{p}_2&\mathbf{p}_1\cdot\mathbf{p}_3\\ 1&\mathbf{p}_2\cdot\mathbf{p}_1&\mathbf{p}_2\cdot\mathbf{p}_2&\mathbf{p}_2\cdot\mathbf{p}_3\\ 1&\mathbf{p}_3\cdot\mathbf{p}_1&\mathbf{p}_3\cdot\mathbf{p}_2&\mathbf{p}_3\cdot\mathbf{p}_3 \end{vmatrix}, \end{aligned}

$\displaystyle \begin{vmatrix} \mathbf{p}_1\cdot\mathbf{p}_1&\mathbf{p}_1\cdot\mathbf{p}_2&\mathbf{p}_1\cdot\mathbf{p}_3\\ \mathbf{p}_2\cdot\mathbf{p}_1&\mathbf{p}_2\cdot\mathbf{p}_2&\mathbf{p}_2\cdot\mathbf{p}_3\\ \mathbf{p}_3\cdot\mathbf{p}_1&\mathbf{p}_3\cdot\mathbf{p}_2&\mathbf{p}_3\cdot\mathbf{p}_3 \end{vmatrix}=\begin{vmatrix} 0&x_1&y_1\\ 0&x_2&y_2\\ 0&x_3&y_3 \end{vmatrix}\cdot\begin{vmatrix} 0&0&0\\ x_1&x_2&x_3\\ y_1&y_2&y_3 \end{vmatrix}=0$

$\displaystyle \Delta^2=-\frac{1}{4}\begin{vmatrix} 0&1&1&1\\ 1&\mathbf{p}_1\cdot\mathbf{p}_1&\mathbf{p}_1\cdot\mathbf{p}_2&\mathbf{p}_1\cdot\mathbf{p}_3\\ 1&\mathbf{p}_2\cdot\mathbf{p}_1&\mathbf{p}_2\cdot\mathbf{p}_2&\mathbf{p}_2\cdot\mathbf{p}_3\\ 1&\mathbf{p}_3\cdot\mathbf{p}_1&\mathbf{p}_3\cdot\mathbf{p}_2&\mathbf{p}_3\cdot\mathbf{p}_3 \end{vmatrix}$

$\displaystyle \Delta^2=-\frac{1}{16}\begin{vmatrix} 0&1&1&1\\ 1&-2\mathbf{p}_1\cdot\mathbf{p}_1&-2\mathbf{p}_1\cdot\mathbf{p}_2&-2\mathbf{p}_1\cdot\mathbf{p}_3\\ 1&-2\mathbf{p}_2\cdot\mathbf{p}_1&-2\mathbf{p}_2\cdot\mathbf{p}_2&-2\mathbf{p}_2\cdot\mathbf{p}_3\\ 1&-2\mathbf{p}_3\cdot\mathbf{p}_1&-2\mathbf{p}_3\cdot\mathbf{p}_2&-2\mathbf{p}_3\cdot\mathbf{p}_3 \end{vmatrix}$

\displaystyle\begin{aligned} \Delta^2&=-\frac{1}{16}\begin{vmatrix} 0&1&1&1\\ 1&\Vert\mathbf{p}_1\Vert^2+\Vert\mathbf{p}_1\Vert^2-2\mathbf{p}_1\cdot\mathbf{p}_1&\Vert\mathbf{p}_1\Vert^2+\Vert\mathbf{p}_2\Vert^2-2\mathbf{p}_1\cdot\mathbf{p}_2&\Vert\mathbf{p}_1\Vert^2+\Vert\mathbf{p}_3\Vert^2-2\mathbf{p}_1\cdot\mathbf{p}_3\\ 1&\Vert\mathbf{p}_2\Vert^2+\Vert\mathbf{p}_1\Vert^2-2\mathbf{p}_2\cdot\mathbf{p}_1&\Vert\mathbf{p}_2\Vert^2+\Vert\mathbf{p}_2\Vert^2-2\mathbf{p}_2\cdot\mathbf{p}_2&\Vert\mathbf{p}_2\Vert^2+\Vert\mathbf{p}_3\Vert^2-2\mathbf{p}_2\cdot\mathbf{p}_3\\ 1&\Vert\mathbf{p}_3\Vert^2+\Vert\mathbf{p}_1\Vert^2-2\mathbf{p}_3\cdot\mathbf{p}_1&\Vert\mathbf{p}_3\Vert^2+\Vert\mathbf{p}_2\Vert^2-2\mathbf{p}_3\cdot\mathbf{p}_2&\Vert\mathbf{p}_3\Vert^2+\Vert\mathbf{p}_3\Vert^2-2\mathbf{p}_3\cdot\mathbf{p}_3 \end{vmatrix}\\ &=-\frac{1}{16}\begin{vmatrix} 0&1&1&1\\ 1&\Vert\mathbf{p}_1-\mathbf{p}_1\Vert^2&\Vert\mathbf{p}_1-\mathbf{p}_2\Vert^2&\Vert\mathbf{p}_1-\mathbf{p}_3\Vert^2\\ 1&\Vert\mathbf{p}_2-\mathbf{p}_1\Vert^2&\Vert\mathbf{p}_2-\mathbf{p}_2\Vert^2&\Vert\mathbf{p}_2-\mathbf{p}_3\Vert^2\\ 1&\Vert\mathbf{p}_3-\mathbf{p}_1\Vert^2&\Vert\mathbf{p}_3-\mathbf{p}_2\Vert^2&\Vert\mathbf{p}_3-\mathbf{p}_3\Vert^2 \end{vmatrix}. \end{aligned}

$\displaystyle \Delta^2=-\frac{1}{16}\begin{vmatrix} 0&1&1&1\\ 1&0&c^2&b^2\\ 1&c^2&0&a^2\\ 1&b^2&a^2&0 \end{vmatrix}$

$\displaystyle \Delta^2=\frac{1}{16}(a+b+c)(-a+b+c)(a-b+c)(a+b-c)$

$\displaystyle \begin{vmatrix} 0&1&1&1\\ 1&0&c^2&b^2\\ 1&c^2&0&a^2\\ 1&b^2&a^2&0 \end{vmatrix}=\begin{vmatrix} 0&a&b&c\\ a&0&c&b\\ b&c&0&a\\ c&b&a&0 \end{vmatrix}$

[1] Heron’s formula from Wikipedia
[2] Cayley-Menger determinant from Wolfram Mathworld

This entry was posted in 線性代數專欄, 應用之道 and tagged , , , . Bookmark the permalink.

### 7 則回應給 利用行列式推導海龍公式

1. Watt Lin 說：

感謝老師帶領我們欣賞奇妙的證明方法，也認識「殊途同歸」這句成語在數學的表現。
我在高中時期，對於海龍公式，只懂一種方法導出，現在看到不同方式來推演，實在很高興。
一條公式，能用多種方法證明，或許，有不少高中生認為沒必要那樣作，為了求快速，只學一種就好。
換個場景，在醫學領域，若是認為疾病只有唯一療法，會是什麼狀況呢？
假設那種「唯一療法」的副作用很強，可能使病患接受治療的意願降低。
若可提供多項選擇，給病人挑選(或由醫師協助篩選)比較合適的其中一種方式，將會更好。

• ccjou 說：

採用行列式證明的步驟比較長，但引用豐富的性質。
如果某一種療法耗時長，但最終效果較好，病患也未必會願意選擇它。我個人的感覺是，絕大多數人的決定都採計短期效用，或許是因為長期效用的風險比較高。

2. Watt Lin 說：

換個方式，打個比方：
如果坐計程車，大多數情況，乘客會希望走「最短途徑」，或者塞車時候，選擇繞路、稍微遠一點的「最省時途徑」。
若是坐公共汽車，價格低廉，在時間充裕的前提，有人從甲地到乙地，在一年之中，嘗試各種路線、轉乘方式，欣賞街景，也認識許多道路名稱，可能增加生活樂趣。
當然，這個平時很閒坐公車的人，遇到急事的時候，仍然可以選擇計程車。
在數學領域，解答一個問題，學習多種途徑，若時間夠，真的很好！頭腦可以靈活思考。
考試急用，不得已，才求速效。
考完之後，有興趣思考其他方法的人，在目前的教育體制下，似乎人數不多。

3. 个人 說：

老师您好：文章中“利用行列式的可乘公式，以及轉置不改變行列式值 (見“行列式的運算公式與性質”)，”后的那个公式怎么显示不出来呢？

• ccjou 說：

所謂后的那个公式怎么显示不出来呢，是說LaTeX無法正確顯示？我這裡可以看到完整的顯示。

原先寫的次序反了 (已更正)，應該說：利用轉置不改變行列式值，以及行列式的可乘公式。面積平方的第一個等式就是轉置不改變行列式值。

4. suehang 說：

余不敢苟同,数学证明都是越简约好,越简越美,之前的证明就已经很美,行列式证明太繁琐了,当然,作为给学生作行列式的练习,还是可以的!

5. suehang 說：

实际上就使用原证明思路,作高,分成两个直角三角形,再用这两个三角形的面积相加都比上述方法简单.