Some examples: fricas )set output algebra on fricas )set output tex off Type: List(Equation(Polynomial(Integer)))fricas solve(L, Type: List(List(Equation(Fraction(Polynomial(Integer)))))However: fricas solve(L, Type: List(List(Equation(Fraction(Polynomial(Integer)))))Note that solution should satisfy Simpler: fricas solve([a - b = 0, Type: List(List(Equation(Fraction(Polynomial(Integer)))))fricas linSolve([a - b, Type: Record(particular: Union(Vector(Fraction(Polynomial(Integer))),The operation +- 1+ [mat= | |,vec= [- a,d - c]] + 0 + Note that fricas linSolve([a - b, Type: Record(particular: Union(Vector(Fraction(Polynomial(Integer))),works. The same happens, if the equation is not linear: fricas L := [ A = 2*X^2+Y, Type: List(Equation(Polynomial(Integer)))fricas solve(L, Type: List(List(Equation(Fraction(Polynomial(Integer)))))fricas )set output algebra on fricas )set output tex off Type: List(List(Equation(Fraction(Polynomial(Integer)))))fricas )set output algebra off fricas )set output tex on 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 fricas L := [ A = P+Q, Type: List(Equation(Polynomial(Integer)))fricas solve(L,
Type: List(List(Equation(Fraction(Polynomial(Integer)))))fricas solve(L,
Type: List(List(Equation(Fraction(Polynomial(Integer)))))really has no solution. As far as I know, this would have to be done in the very last function defined in -- general solver. Input in polynomial style -- solve(lr:L F,vl:L SE) == empty? vl => empty() checkLinear(lr,vl) => -- linear system -- soln := linSolve(lr, vl) soln case "failed" => [] eqns: L EQ F := [] for i in 1..#vl repeat lhs := (vl.i::(P R))::F rhs := rhs soln.i eqns := append(eqns, [lhs = rhs]) [eqns] -- polynomial system -- if R has GcdDomain then parRes:=triangularSystems(lr,vl) [[makeEq(map(makeR2F,f)$PP2,vl) for f in pr] for pr in parRes] else [[]] The letter |

...--test1, Tue, 15 Apr 2014 18:22:36 +0000 reply