solve bug



hi  Billinghurst,Barton
hi all

The eigenvalues bug whic I reported yesterday (http://www.math.utexas.edu/pipermail/maxima/2004/007403.html)
 was caused by solve.lisp.
eigen.mac uses $MULTIPLICIES set by SOLVE function.
solve ver 1.2 is ok. solve ver 1.3 (cvs) not.
The difference between 1.3 and 1.2 is this,in function EASY-CASES
 317,318c317
<        (COND ((OR (ATOM *EXP) (ATOM (CAR *EXP))) NIL)
<              ((EQ (CAAR *EXP) 'MTIMES)
---
>        (COND ((EQ (CAAR *EXP) 'MTIMES)
323c322
<            ((EQ (CAAR *EXP) 'MEXPT)
---
>            ((EQ (CAAR *EXP) 'MEXP)

(COND ((OR (ATOM *EXP) (ATOM (CAR *EXP))) NIL)....,atom case is OK,but
Apparently in 1.3   ((EQ (CAAR *EXP) 'MEXPT) is missspelling .
((EQ (CAAR *EXP) 'MEXP) is correct,I think.
Please change 'MEXPT to 'MEXP.
(C1) a4:matrix([3,1,0,0],
          [-4,-1,0,0],
          [7,1,2,1],
          [-17,-6,-1,0])$

(C2) eigenvalues(a4);
Warning - you are redefining the MACSYMA function EIGENVALUES
Warning - you are redefining the MACSYMA function EIGENVECTORS
PART fell off end.
#0: EIGENVALUES(mat=MATRIX([3,1,0,0],[-4,-1,0,0],[7,1,2,1],[-17,-6,-1,0]))(eigen.mac line 92)
 -- an error.  Quitting.  To debug this try DEBUGMODE(TRUE);)
(C3) load("solve.new.lisp")$
(C4) eigenvalues(a4);
(D4)                              [[1], [4]]
that is OK.

G.F



 
------------------------------------------------------------------------
$BO"5YCf!!$"$N;v7o!"$=$N8e!!$I$&$J$C$?!)!!(Bby infoseek
http://ap.infoseek.co.jp/news6.html