axiom-developer
[Top][All Lists]

[Axiom-developer] [#170 Axiom fails to solve "separable" system of equat

 From: kratt6 Subject: [Axiom-developer] [#170 Axiom fails to solve "separable" system of equations] Date: Thu, 16 Jun 2005 04:41:00 -0500

Changes
http://page.axiom-developer.org/zope/mathaction/170AxiomFailsToSolveSeparableSystemOfEquations/diff
--

??changed:
-
Some examples:

\begin{axiom}
L := [ A = 2*P1+P2, B = 2*P2+P1, C = 2*Q1+Q2, D = 2*Q2+Q1]
solve(L, [P1,P2])
\end{axiom}

However:

\begin{axiom}
solve([L.1,L.2],[P1,P2])
solve([L.3,L.4],[Q1,Q2])
solve(L,[P1,P2,Q1,Q2])
\end{axiom}

Simpler:

\begin{axiom}
solve([a - b = 0, c - d = 0],[b])
linSolve([a - b, c - d],[b])
\end{axiom}

The operation 'solve' calls 'linSolve', which sets up the corresponding matrix
and vector and solves it using 'solve\\$LinearSystemMatrixPackage'. This in turn
returns "failed", since the last columns of the matrix contain zeros, the
vector does not. In the example above, the matrix and vector are::

+- 1+
[mat= |   |,vec= [- a,d - c]]
+ 0 +

Note that

\begin{axiom}
linSolve([a - b, 0],[b])
\end{axiom}

works.

The same happens, if the equation is not linear:

\begin{axiom}
L := [ A = 2*P1^2+P2, B = 2*P2+P1, C = 2*Q1+Q2, D = 2*Q2+Q1]
solve(L, [P1,P2])
solve([L.3,L.4],[P1,P2,Q1,Q2])
\end{axiom}

So, very probably, a fix would need to do two things:

- seperate the equations into those that do and those that don't contain the
given variables.

- check whether those that don't contain the variables are contradicting.

- solve the others.

The second point is necessary, since

\begin{axiom}
L := [ A = P+Q, B = P-Q, C = 1, C = -1]
solve(L, [P,Q])
solve(L,[P,Q,C])
\end{axiom}

really has no solution.

--