Determinant

Tomáš Kalvoda, KAM FIT ČVUT, 2019

Definice determinantu

Pro čtvercovou matici ACn,n\mathbb{A} \in \mathbb{C}^{n,n} definujeme

detA:=σSnsgn(π)j=1nAj,π(j),\det \mathbb{A} := \sum_{\sigma \in S_n} \mathrm{sgn}(\pi) \prod_{j=1}^n \mathbb{A}_{j,\pi(j)},

kde SnS_n je množina všech permutací množiny n^:={1,2,,n}\hat n := \{1,2,\ldots,n\} a sgn(π)\mathrm{sgn}(\pi) ja znaménko permutace π\pi. Je dobré si uvědomit, že suma v definici determinantu má n!n! členů. I pro poměrně malá nn je tak výpočet determinantu pomocí této definice neefektivní.

Výpočet determinantu pro malé matice

Matice 1×11 \times 1

Pro matici 1×11 \times 1 je výpočet velmi triviální: existuje pouze jedna permutace množiny {1}\{1\}, tj. identické zobrazení π(1)=1\pi(1) = 1, její znaménko je 11 a proto det(α)=1α=α\det (\alpha) = 1 \cdot \alpha = \alpha.

Ověřme si tento výsledek pomocí metody det na objektu typu matice (existuje i funkce det).

a = var('alpha')
m = matrix([a])
show(m)
(α)\newcommand{\Bold}[1]{\mathbf{#1}}\left(\begin{array}{r} \alpha \end{array}\right)
show(m.det())
α\newcommand{\Bold}[1]{\mathbf{#1}}\alpha

Matice 2×22 \times 2 ("křížové pravidlo")

Existují dvě permutace množiny {1,2}\{1,2\}, konkrétně opět identita a jedna transpozice (121 \mapsto 2, 212 \mapsto 1). Identita má znaménko 11 a transpozice 1-1. Suma v definici determinantu matice 2×22 \times 2 má proto dva členy

det(αβγδ)=αδβγ.\det \begin{pmatrix} \alpha & \beta \\ \gamma & \delta \end{pmatrix} = \alpha\delta - \beta \gamma.

S2 = Permutations(2)
list(S2)
[[1, 2], [2, 1]]
a,b,c,d = var('alpha,beta,gamma,delta')
m = matrix([[a,b],[c,d]])
show(m)
(αβγδ)\newcommand{\Bold}[1]{\mathbf{#1}}\left(\begin{array}{rr} \alpha & \beta \\ \gamma & \delta \end{array}\right)
show(det(m))
αδβγ\newcommand{\Bold}[1]{\mathbf{#1}}\alpha \delta - \beta \gamma

Matice 3×33 \times 3 ("Sarrusovo pravidlo")

Existuje šest permutací množiny {1,2,3}\{1,2,3\}, tři mají znaménko 11 a tři znaménko 1-1. Suma v definici determinantu matice 3×33 \times 3 má proto šest členů

det(α1β1γ1α2β2γ2α3β3γ3)=α1β2γ3+α2β3γ1+α3β1γ2γ1β2α3γ2β3α1γ3β1α2.\det \begin{pmatrix} \alpha_1 & \beta_1 & \gamma_1 \\ \alpha_2 & \beta_2 & \gamma_2 \\ \alpha_3 & \beta_3 & \gamma_3 \end{pmatrix} = \alpha_1 \beta_2 \gamma_3 + \alpha_2 \beta_3 \gamma_1 + \alpha_3 \beta_1 \gamma_2 - \gamma_1 \beta_2 \alpha_3 - \gamma_2 \beta_3 \alpha_1 - \gamma_3 \beta_1 \alpha_2.

Už pro takto malou matici je toto nepěkný výraz (pokud je matice "plná" a obsahuje malý počet nul). Je lepší matici nejprve vhodně upravit, případně použít rozvoj podle sloupce/řádku. Toto však není obsahem tohoto notebooku.

a1,b1,c1,a2,b2,c2,a3,b3,c3 = var('alpha1,beta1,gamma1,alpha2,beta2,gamma2,alpha3,beta3,gamma3')
m = matrix([[a1,b1,c1],[a2,b2,c2],[a3,b3,c3]])
show(m)
(α1β1γ1α2β2γ2α3β3γ3)\newcommand{\Bold}[1]{\mathbf{#1}}\left(\begin{array}{rrr} \alpha_{1} & \beta_{1} & \gamma_{1} \\ \alpha_{2} & \beta_{2} & \gamma_{2} \\ \alpha_{3} & \beta_{3} & \gamma_{3} \end{array}\right)
show(det(m).expand())
α3β2γ1+α2β3γ1+α3β1γ2α1β3γ2α2β1γ3+α1β2γ3\newcommand{\Bold}[1]{\mathbf{#1}}-\alpha_{3} \beta_{2} \gamma_{1} + \alpha_{2} \beta_{3} \gamma_{1} + \alpha_{3} \beta_{1} \gamma_{2} - \alpha_{1} \beta_{3} \gamma_{2} - \alpha_{2} \beta_{1} \gamma_{3} + \alpha_{1} \beta_{2} \gamma_{3}

Další výpočty

SageMath samozřejmě umí vypočítat determinant i větších rozměrů. Na pozadí se ovšem nevyužívá přímo definice. Hodí se tak velmi k ověřování vlastních výsledků.

Například:

a,b = var('alpha,beta')
m = matrix([
    [1, -1, a, b,    0,  2],
    [0,  3, 2, 1/2,  0,  1],
    [2,  3, 0, 1,    2, -1],
    [0,  a, 1, 0,   -1,  2],
    [1,  1, 0, 2,    2,  0],
    [3, -2, 1, 0,    0,  0]
])
show(m)
(11αβ0203212012301210α1012110220321000)\newcommand{\Bold}[1]{\mathbf{#1}}\left(\begin{array}{rrrrrr} 1 & -1 & \alpha & \beta & 0 & 2 \\ 0 & 3 & 2 & \frac{1}{2} & 0 & 1 \\ 2 & 3 & 0 & 1 & 2 & -1 \\ 0 & \alpha & 1 & 0 & -1 & 2 \\ 1 & 1 & 0 & 2 & 2 & 0 \\ 3 & -2 & 1 & 0 & 0 & 0 \end{array}\right)
show(det(m))
3α210αβ+772α56β+49\newcommand{\Bold}[1]{\mathbf{#1}}-3 \, \alpha^{2} - 10 \, \alpha \beta + \frac{77}{2} \, \alpha - 56 \, \beta + 49