diff options
author | dos-reis <gdr@axiomatics.org> | 2010-06-21 13:11:55 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2010-06-21 13:11:55 +0000 |
commit | 79cbfd0098caff35ed453782986ddcc8fa9ae142 (patch) | |
tree | 75603cfdc01c3bb15c33bb27961e36009110fed5 /src/algebra/mts.spad.pamphlet | |
parent | 7e65db21249e99bfcfd0a8ccf5debee565e3acde (diff) | |
download | open-axiom-79cbfd0098caff35ed453782986ddcc8fa9ae142.tar.gz |
* interp/nlib.lisp (COMPILE-LIB-FILE): Rework. Halt compilation
if generated is malformed or contains serious warnings.
* algebra/pfo.spad.pamphlet (PointsOfFiniteOrder) [cmult]: Merge
local conditional definitions.
* algebra/permgrps.spad.pamphlet (PermutationGroup) [cosetRep]:
Don't forget to return a value.
* algebra/newpoly.spad.pamphlet (RecursivePolynomialCategory)
[exactQuo]: Merge conditional local definitions.
[ZToR]: Inline at sole use point. Remove conditional definitions.
[QToR]: Likewise.
[PZToPR]: Likewise.
[PQToPR]: Likewise.
* algebra/naalgc.spad.pamphlet (FramedNonAssociativeAlgebra)
[leftRankPolynomial]: Initialize local variable xx.
(rightRankPolynomial): Likewise.
* algebra/multsqfr.spad.pamphlet (MultivariateSquareFree)
[intChoose]: Error if no solution is found in the loop.
* algebra/mts.spad.pamphlet (SparseMultivariateTaylorSeries): Tidy.
[stream] Remove duplicate definition.
* algebra/d01routine.spad.pamphlet (d01anfAnnaType) [measure]: Tidy.
(d01asfAnnaType) [measure]: Likewise.
* algebra/d01transform.spad.pamphlet (d01TransformFunctionType)
[measure]: Likewise.
* algebra/forttyp.spad.pamphlet (FortranScalarType) [coerce]: Likewise.
Diffstat (limited to 'src/algebra/mts.spad.pamphlet')
-rw-r--r-- | src/algebra/mts.spad.pamphlet | 84 |
1 files changed, 41 insertions, 43 deletions
diff --git a/src/algebra/mts.spad.pamphlet b/src/algebra/mts.spad.pamphlet index 1f232c31..14037a2a 100644 --- a/src/algebra/mts.spad.pamphlet +++ b/src/algebra/mts.spad.pamphlet @@ -77,6 +77,9 @@ SparseMultivariateTaylorSeries(Coef,Var,SMP):_ Implementation ==> PS add Rep := StS -- Below we use the fact that Rep of PS is Stream SMP. + -- FIXME: The next two functions come free if assignment to Rep is removed. + rep(x: %): Rep == x pretend Rep + per(x: Rep): % == x pretend % extend(x,n) == extend(x,n + 1)$Rep complete x == complete(x)$Rep @@ -95,9 +98,9 @@ SparseMultivariateTaylorSeries(Coef,Var,SMP):_ --% creation of series coerce(r:Coef) == monom(r::SMP,0)$STT - smp:SMP * p:% == (((smp) * (p pretend Rep))$STT)pretend % - r:Coef * p:% == (((r::SMP) * (p pretend Rep))$STT)pretend % - p:% * r:Coef == (((r::SMP) * ( p pretend Rep))$STT)pretend % + smp:SMP * p:% == per((smp * rep p)$STT) + r:Coef * p:% == per(((r::SMP) * rep p )$STT) + p:% * r:Coef == per(((r::SMP) * rep p)$STT) mts(p:SMP):% == (uv := mainVariable p) case "failed" => monom(p,0)$STT v := uv :: Var @@ -187,43 +190,40 @@ SparseMultivariateTaylorSeries(Coef,Var,SMP):_ map(differentiate(#1,v),rst s) if Coef has Algebra Fraction Integer then - - stream(x:%):Rep == x pretend Rep - - (x:%) ** (r:RN) == powern(r,stream x)$STT - (r:RN) * (x:%) == map(r * #1, stream x)$ST2(SMP,SMP) pretend % - (x:%) * (r:RN) == map(#1 * r,stream x )$ST2(SMP,SMP) pretend % - - exp x == exp(stream x)$STF - log x == log(stream x)$STF - - sin x == sin(stream x)$STF - cos x == cos(stream x)$STF - tan x == tan(stream x)$STF - cot x == cot(stream x)$STF - sec x == sec(stream x)$STF - csc x == csc(stream x)$STF - - asin x == asin(stream x)$STF - acos x == acos(stream x)$STF - atan x == atan(stream x)$STF - acot x == acot(stream x)$STF - asec x == asec(stream x)$STF - acsc x == acsc(stream x)$STF - - sinh x == sinh(stream x)$STF - cosh x == cosh(stream x)$STF - tanh x == tanh(stream x)$STF - coth x == coth(stream x)$STF - sech x == sech(stream x)$STF - csch x == csch(stream x)$STF - - asinh x == asinh(stream x)$STF - acosh x == acosh(stream x)$STF - atanh x == atanh(stream x)$STF - acoth x == acoth(stream x)$STF - asech x == asech(stream x)$STF - acsch x == acsch(stream x)$STF + (x:%) ** (r:RN) == powern(r,rep x)$STT + (r:RN) * (x:%) == per map(r * #1, rep x)$ST2(SMP,SMP) + (x:%) * (r:RN) == per map(#1 * r,rep x )$ST2(SMP,SMP) + + exp x == exp(rep x)$STF + log x == log(rep x)$STF + + sin x == sin(rep x)$STF + cos x == cos(rep x)$STF + tan x == tan(rep x)$STF + cot x == cot(rep x)$STF + sec x == sec(rep x)$STF + csc x == csc(rep x)$STF + + asin x == asin(rep x)$STF + acos x == acos(rep x)$STF + atan x == atan(rep x)$STF + acot x == acot(rep x)$STF + asec x == asec(rep x)$STF + acsc x == acsc(rep x)$STF + + sinh x == sinh(rep x)$STF + cosh x == cosh(rep x)$STF + tanh x == tanh(rep x)$STF + coth x == coth(rep x)$STF + sech x == sech(rep x)$STF + csch x == csch(rep x)$STF + + asinh x == asinh(rep x)$STF + acosh x == acosh(rep x)$STF + atanh x == atanh(rep x)$STF + acoth x == acoth(rep x)$STF + asech x == asech(rep x)$STF + acsch x == acsch(rep x)$STF intsmp(v:Var,p: SMP): SMP == up := univariate(p,v) @@ -272,9 +272,7 @@ SparseMultivariateTaylorSeries(Coef,Var,SMP):_ empty? l => (0$SMP) :: OUT reduce("+",reverse! l) if Coef has Field then - stream(x:%):Rep == x pretend Rep - SF2==> StreamFunctions2 - p:% / r:Coef ==(map(#1/$SMP r,stream p)$SF2(SMP,SMP))pretend % + p:% / r:Coef == per(map(#1/$SMP r,rep p)$StreamFunctions2(SMP,SMP)) @ \section{domain TS TaylorSeries} |