OT příklad z FB.

var('a')
a
A = matrix([
    [1,  -1, 3,  -2],
    [2, a-2, 9,  -3],
    [0,   a, 6,   2],
    [1, a-1, 6, a-1]
])
show(A)
(11322a2930a621a16a1)\newcommand{\Bold}[1]{\mathbf{#1}}\left(\begin{array}{rrrr} 1 & -1 & 3 & -2 \\ 2 & a - 2 & 9 & -3 \\ 0 & a & 6 & 2 \\ 1 & a - 1 & 6 & a - 1 \end{array}\right)
b = -vector([2, 5, 4, 3])
show(b)
(2,5,4,3)\newcommand{\Bold}[1]{\mathbf{#1}}\left(-2,\,-5,\,-4,\,-3\right)
show(det(A))
3a2\newcommand{\Bold}[1]{\mathbf{#1}}3 \, a^{2}

Takže pro a0a \neq 0 máme (tuhle kontrolu Sage a všechny CAS co znám neprovádí, vesele dělí nulou) právě jedno řešení:

show(A.solve_right(b))
(2a+1,2a,1,0)\newcommand{\Bold}[1]{\mathbf{#1}}\left(\frac{2}{a} + 1,\,\frac{2}{a},\,-1,\,0\right)

Pro a=0a = 0 se může stát celá řada zajímavých případů (třeba je to i právě to co hledáme). Soustava může být neřešitelná, nebo může mít nekonečně mnoho řešení (dimenzionalita také může být různé). Označme

A0 = A.subs(a == 0)
show(A0)
(1132229300621161)\newcommand{\Bold}[1]{\mathbf{#1}}\left(\begin{array}{rrrr} 1 & -1 & 3 & -2 \\ 2 & -2 & 9 & -3 \\ 0 & 0 & 6 & 2 \\ 1 & -1 & 6 & -1 \end{array}\right)

V tomto případě snadno zjistíme bázi podprostoru všech řešení homogenní soustavy:

show(A0.right_kernel().basis())
[(1,0,19,13),(0,1,19,13)]\newcommand{\Bold}[1]{\mathbf{#1}}\left[\left(1,\,0,\,-\frac{1}{9},\,\frac{1}{3}\right), \left(0,\,1,\,\frac{1}{9},\,-\frac{1}{3}\right)\right]

A najdeme jedno partikulární řešení:

show(A0.solve_right(b))
(1,0,13,0)\newcommand{\Bold}[1]{\mathbf{#1}}\left(-1,\,0,\,-\frac{1}{3},\,0\right)

Takže v případě a=0a = 0 má naše soustava nekonečně mnoho řešení tvaru (BI-LIN notace): (1,0,1/3,0)+(1,0,1/9,1/3),(0,1,1/9,1/3).(-1,0,-1/3,0) + \Big\langle (1,0,-1/9,1/3),\, (0,1,1/9,-1/3) \Big\rangle\,.