diff options
Diffstat (limited to 'src/algebra/intpm.spad.pamphlet')
-rw-r--r-- | src/algebra/intpm.spad.pamphlet | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/src/algebra/intpm.spad.pamphlet b/src/algebra/intpm.spad.pamphlet index dad6bfa9..3fb0f60a 100644 --- a/src/algebra/intpm.spad.pamphlet +++ b/src/algebra/intpm.spad.pamphlet @@ -138,12 +138,10 @@ PatternMatchIntegration(R, F): Exports == Implementation where goodlilog? : (K, P) -> Boolean gooddilog? : (K, P, P) -> Boolean --- goodlilog?(k, p) == is?(k, "log"::SY) and one? minimumDegree(p, k) - goodlilog?(k, p) == is?(k, "log"::SY) and (minimumDegree(p, k) = 1) + goodlilog?(k, p) == is?(k, "log"::SY) and one? minimumDegree(p, k) gooddilog?(k, p, q) == --- is?(k, "log"::SY) and one? degree(p, k) and zero? degree(q, k) - is?(k, "log"::SY) and (degree(p, k) = 1) and zero? degree(q, k) + is?(k, "log"::SY) and one? degree(p, k) and zero? degree(q, k) -- matches the integral to a result of the form d * erf(u) or d * ei(u) -- returns [case, u, d] @@ -246,8 +244,7 @@ PatternMatchIntegration(R, F): Exports == Implementation where -- returns a simplified sqrt(y) insqrt y == rec := froot(y, 2)$PolynomialRoots(IndexedExponents K, K, R, P, F) --- one?(rec.exponent) => rec.coef * rec.radicand - ((rec.exponent) = 1) => rec.coef * rec.radicand + one?(rec.exponent) => rec.coef * rec.radicand rec.exponent ~=2 => error "insqrt: hould not happen" rec.coef * sqrt(rec.radicand) @@ -320,8 +317,7 @@ PatternMatchIntegration(R, F): Exports == Implementation where empty() pmintegrate(f, x, a, b) == --- zero? a and one? whatInfinity b => - zero? a and ((whatInfinity b) = 1) => + zero? a and one? whatInfinity b => formula1(f, x, constant(x::F), suchThat(c, freeOf?(#1, x))) "failed" |