On Mon, Nov 14, 2011 at 17:56, Richard Hennessy <rich.hennessy at verizon.net> wrote:
This will not work. The number of equations has to match the length of the list of variables to solve.
That is not quite true. There can be more variables than equations, in which case arbitrary numbers may be part of the solution:
%i10) linsolve([a=b,b=c],[a,b,c]);
(%o10) [a = %r4,b = %r4,c = %r4]
There can be fewer variables than equations, in which case some of the equations must be redundant for there to be a solution:
(%i13) linsolve([a=b,b=c,a=c],[a,b]);
solve: dependent equations eliminated: (3)
(%o13) [a = c,b = c]
But the solutions must be true for *all* values of variables which are not being solved for -- you can call those variables "parameters". For example, the following has zero solutions
(%i14) linsolve([a=b,b=c,x=3],[a,b]);
(%o14) []
because there is no way x=3 can be made true for all x.
Of course, there are some exceptions, but I was assuming the claim that the equations are independent is true. I have not checked that assumption. I have not checked for linearity either BTW.
Rich