Contact Us!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.

| Download
Views: 54
# Kaip papildyti vektorių sistemą iki erdvės bazės? def papildom_poerdviai(W, V): """ Grąžina tiesinės erdvės V poerdvio W papildinio iki V bazę. Kitaip sakant, randa tokį poerdvį U, kad V yra W ir U tiesioginė suma ir grąžina jo bazę. """ Q, pi, lift = V.quotient_abstract(W) Basis = [lift(v) for v in Q.basis()] return Basis # pi yra projekcijos atvaizdis iš erdvės V į faktorerdvę V/W: pi(v) = v + W. # lift yra "atvirkštinis" atvaizdis iš faktorerdvės Q = V/W į erdvę V, tenkinantis # lygybę pi(lift(u)) = u su visais u iš Q. def papildom(vec, V): """ Tiesinės erdvės V vektorių šeimą vec papildo vektoriais v1,..., vn iki erdvės V bazės ir grąžina papildytus vektorius v1,..., vn. """ return papildom_poerdviai(V.span(vec), V)
# Pavyzdys. Erdvėje R^3 rasime tokį vektorių v, kad vektorių šeimą (1,2,1), (3,5,1), v sudarytų # šios erdvės bazę.

Sprendimas

vec = [vector([1,2,1]),vector([3,5,1])] v = papildom(vec, QQ^3)[0] v
(1, 0, 0)
# Pavyzdys. Erdvės R^3 vektorių v1 = (1,2,7,4), v_2 = (1,3,2,2), v3 = (4,1,2,1) tiesiniame # apvalkale L(v1,v2,v3) rasime tokius vektorius u1 ir u2, kad vektorių šeima # (2,5,9,6), u1, u2 sudarytų poerdvio L(v1,v2,v3) bazę.

Sprendimas

vec = [vector([1,2,7,4]),vector([1,3,2,2]),vector([4,1,2,1])] L = (QQ^4).span(vec) # Pasidarome tiesinį apvalkalą L(v1,v2,v3) vektoriai = papildom([vector([2,5,9,6])], L) u1 = vektoriai[0] u2 = vektoriai[1] u1 u2
(1, 0, 0, -5/61) (0, 1, 0, 23/61)
# Patikriname: L == (QQ^4).span([vector([2,5,9,6]),u1,u2])
True