From 8f29b67f349d337019093f0eeba09cc3bf09bfed Mon Sep 17 00:00:00 2001 From: alfredoport Date: Sun, 31 Aug 2008 15:40:18 +0000 Subject: Fix AW278. --- src/ChangeLog | 4 ++++ src/algebra/manip.spad.pamphlet | 11 +++++++---- 2 files changed, 11 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/ChangeLog b/src/ChangeLog index b2f16bf9..2cfe5721 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2008-08-31 Waldek Hebisch + + * algebra/manip.spad.pamphlet: Fix Bug AW278. + 2008-08-30 Gabriel Dos Reis * algebra/boolean.spad.pamphlet (Boolean): Remove definition of diff --git a/src/algebra/manip.spad.pamphlet b/src/algebra/manip.spad.pamphlet index a9f207d7..83657f90 100644 --- a/src/algebra/manip.spad.pamphlet +++ b/src/algebra/manip.spad.pamphlet @@ -624,10 +624,13 @@ TranscendentalManipulations(R, F): Exports == Implementation where -- like to combine it with a log term. terms :List F := [simplifyLog(term) for term in termList::List(F)] exprs :List F := [] - for i in 1..#terms repeat - if retractIfCan(terms.i)@Union(FPR,"failed") case FPR then - exprs := cons(terms.i,exprs) - terms := delete!(terms,i) + nterms :List F := [] + for term in terms repeat + if retractIfCan(term)@Union(FPR,"failed") case FPR then + exprs := cons(term, exprs) + else + nterms := cons(term, nterms) + terms := nterms if not empty? exprs then foundLog := false i : NonNegativeInteger := 0 -- cgit v1.2.3