Linearly independent and span checks:
li1:= Matrix([[1, 4, 7,0], [2, 5,8,0], [3, 6,9,0]]);
ReducedRowEchelonForm(li1);
span1:=Matrix([[1, 4, 7, b1], [2, 5, 8,b2], [3, 6, 9,b3]]);
GaussianElimination(span1);

Plotting - to check whether they are in the same plane:
a1:=spacecurve({[t, 2*t, 3*t, t = 0 .. 1]}, color = red, thickness = 2):
a2:=textplot3d([1, 2, 3, ` vector [1,2,3]`], color = black):
b1:=spacecurve({[4*t,5*t,6*t,t = 0 .. 1]}, color = green, thickness = 2):
b2:=textplot3d([4, 5, 6, ` vector [4,5,6]`], color = black):
c1:=spacecurve({[7*t, 8*t, 9*t, t = 0 .. 1]},color=magenta,thickness = 2):
c2:=textplot3d([7,8,9,`vector[7,8,9]`],color = black):
d1:=spacecurve({[0*t,0*t,0*t,t = 0 .. 1]},color=yellow,thickness = 2):
d2:=textplot3d([0,0,0,` vector [0,0,0]`], color = black):
display(a1, a2, b1, b2, c1, c2, d1, d2);

Linear Combination check of adding a vector that is outside the plane containing Vector([1,2,3]), Vector([4,5,6]), Vector([7,8,9]), ie b3+b1-2*b2 not equal to 0: Vector([5,7,10] as opposed to [5,7,9])
M:=Matrix([[1, 4, 7, 5], [2, 5, 8, 7], [3, 6, 9, 10]]);
ReducedRowEchelonForm(M);

Span check with additional vector:
span2:=Matrix([[1, 4, 7, 5,bb1], [2, 5, 8,7,bb2], [3, 6, 9,10,bb3]]);
GaussianElimination(span2);

Linearly independent check with additional vector:
li2:= Matrix([[1, 4, 7, 5,0], [2, 5, 8,7,0], [3, 6, 9,10,0]]); ReducedRowEchelonForm(li2);

Removing Redundancy
li3:= Matrix([[1, 4, 5,0], [2, 5,7,0], [3, 6,10,0]]); ReducedRowEchelonForm(li3);

Adding the additional vector to the plot:
e1:=spacecurve({[5*t,7*t,10*t,t = 0 .. 1]},color=black,thickness = 2):
e2:=textplot3d([5,7,10,` vector [5,7,10]`], color = black):
display(a1, a2, b1, b2, c1, c2, d1, d2,e1,e2);