Costruzione base di uno spazio vettoriale partendo da dei vettori linearmente indipendenti. Siano \(v1, v2, .., v_p\) con \(p < n\) apparententi a spazio vettoriale di dimensione \(n\), esistono \(n-p\) vettori che insieme a quelli precedenti costituiscono una base (\(\{v_1, v_2, .., v_p, w_1, w_2, w_{(n-p)}\}\) è base dello spazio).
estrapolaLinearmenteIndipendenti()
). Vale anche per spazi polinomiali e matrici.def completamentoABase(basi, dimensione):
completamento = sp.zeros(0)
for base in basi:
for v in range(base.shape[0]):
completamento = completamento.row_insert(v, base.row(v))
base_canonica = sp.eye(dimensione)
for i in range(dimensione):
completamento = completamento.row_insert(dimensione+i, base_canonica.row(i))
return estrapolaLinearmenteIndipendenti(completamento)
Completare l'insieme formato da \(v_1=(1,1,0,2), v_2=(1,2,0,4)\) due vettori di \(V=\mathbb{R}^4\) verificandone in prima istanza che siano linearmente indipendenti. Soluzione: sono linearmente indipendenti, la base ottenuta dal completamento è \(\beta=\{v_1,v_2,e_2,e_3\}\).
v1 = sp.Matrix([[1,1,0,2]])
v2 = sp.Matrix([[1,2,0,4]])
result = completamentoABase([v1, v2], 4)
print(result)
Matrix([[1, 2, 0, 4], [1, 1, 0, 2], [0, 1, 0, 0], [0, 0, 1, 0]])
Ha trovato linearmente indipendenti \(v_1, v_2, e_2, e_3\), proprio come nell'esercizio.