aboutsummaryrefslogtreecommitdiff
path: root/src/algebra
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-06-14 01:01:07 +0000
committerdos-reis <gdr@axiomatics.org>2010-06-14 01:01:07 +0000
commit335db800c7cbaff88eda34d83e23ad808ea42fb8 (patch)
treeae48e1734c1ef02b6a3e77ab9ba6259712f19457 /src/algebra
parent14ce07ed510c78cc4d66d37e2f28e247c46972cf (diff)
downloadopen-axiom-335db800c7cbaff88eda34d83e23ad808ea42fb8.tar.gz
* algebra/catdef.spad.pamphlet (DifferentialRing): Now extends
DifferentialDomain. (DifferentialExtension): Check parameter for only DifferentialDomain. * algebra/dpolcat.spad.pamphlet (DifferentialPolynomialCategory): Likewise. * algebra/lodop.spad.pamphlet (OppositeMonogenicLinearOperator): Likewise.
Diffstat (limited to 'src/algebra')
-rw-r--r--src/algebra/Makefile.in2
-rw-r--r--src/algebra/Makefile.pamphlet2
-rw-r--r--src/algebra/catdef.spad.pamphlet15
-rw-r--r--src/algebra/dpolcat.spad.pamphlet4
-rw-r--r--src/algebra/lodop.spad.pamphlet2
5 files changed, 8 insertions, 17 deletions
diff --git a/src/algebra/Makefile.in b/src/algebra/Makefile.in
index 89983429..a70711d9 100644
--- a/src/algebra/Makefile.in
+++ b/src/algebra/Makefile.in
@@ -360,7 +360,7 @@ axiom_algebra_layer_0 = \
RCAGG RCAGG- SETAGG SETAGG- HOAGG HOAGG- \
TBAGG TBAGG- KDAGG KDAGG- DIAGG DIAGG- \
DIOPS DIOPS- STRING STRICAT ISTRING ILIST \
- LIST DIFFDOM \
+ LIST DIFFDOM DIFFDOM- \
LINEXP PATMAB REAL CHARZ LOGIC LOGIC- \
RTVALUE SYSPTR
diff --git a/src/algebra/Makefile.pamphlet b/src/algebra/Makefile.pamphlet
index 9ed8ca3f..9f76645f 100644
--- a/src/algebra/Makefile.pamphlet
+++ b/src/algebra/Makefile.pamphlet
@@ -314,7 +314,7 @@ axiom_algebra_layer_0 = \
RCAGG RCAGG- SETAGG SETAGG- HOAGG HOAGG- \
TBAGG TBAGG- KDAGG KDAGG- DIAGG DIAGG- \
DIOPS DIOPS- STRING STRICAT ISTRING ILIST \
- LIST DIFFDOM \
+ LIST DIFFDOM DIFFDOM- \
LINEXP PATMAB REAL CHARZ LOGIC LOGIC- \
RTVALUE SYSPTR
diff --git a/src/algebra/catdef.spad.pamphlet b/src/algebra/catdef.spad.pamphlet
index a7807009..1ea30684 100644
--- a/src/algebra/catdef.spad.pamphlet
+++ b/src/algebra/catdef.spad.pamphlet
@@ -403,21 +403,12 @@ DifferentialDomain(T: Type): Category == Type with
++ \spad{differentiate(x+y) = differentiate(x)+differentiate(y)}
++ \spad{differentiate(x*y) = x*differentiate(y) + differentiate(x)*y}
-DifferentialRing(): Category == Ring with
- differentiate: % -> %
- ++ differentiate(x) returns the derivative of x.
- ++ This function is a simple differential operator
- ++ where no variable needs to be specified.
- D: % -> %
- ++ D(x) returns the derivative of x.
- ++ This function is a simple differential operator
- ++ where no variable needs to be specified.
+DifferentialRing(): Category == Join(Ring,DifferentialDomain %) with
differentiate: (%, NonNegativeInteger) -> %
++ differentiate(x, n) returns the n-th derivative of x.
D: (%, NonNegativeInteger) -> %
++ D(x, n) returns the n-th derivative of x.
add
- D r == differentiate r
differentiate(r, n) ==
for i in 1..n repeat r := differentiate r
r
@@ -455,7 +446,7 @@ DifferentialExtension(R:Ring): Category == Ring with
D: (%, R -> R, NonNegativeInteger) -> %
++ D(x, deriv, n) differentiate x n times
++ using a derivation which extends deriv on R.
- if R has DifferentialRing then DifferentialRing
+ if R has DifferentialDomain R then DifferentialRing
if R has PartialDifferentialRing(Symbol) then
PartialDifferentialRing(Symbol)
add
@@ -466,7 +457,7 @@ DifferentialExtension(R:Ring): Category == Ring with
D(x:%, derivation: R -> R, n:NonNegativeInteger) ==
differentiate(x, derivation, n)
- if R has DifferentialRing then
+ if R has DifferentialDomain R then
differentiate x == differentiate(x, differentiate$R)
if R has PartialDifferentialRing Symbol then
diff --git a/src/algebra/dpolcat.spad.pamphlet b/src/algebra/dpolcat.spad.pamphlet
index c5da0b47..65533281 100644
--- a/src/algebra/dpolcat.spad.pamphlet
+++ b/src/algebra/dpolcat.spad.pamphlet
@@ -300,7 +300,7 @@ DifferentialPolynomialCategory(R:Ring,S:OrderedSet,
++ separant(p) returns the
++ partial derivative of the differential polynomial p
++ with respect to its leader.
- if R has DifferentialRing then
+ if R has DifferentialDomain R then
InnerEvalable(S, R)
InnerEvalable(S, $)
Evalable $
@@ -394,7 +394,7 @@ DifferentialPolynomialCategory(R:Ring,S:OrderedSet,
differentialVariables p ==
removeDuplicates [variable v for v in variables p]
- if R has DifferentialRing then
+ if R has DifferentialDomain R then
makeVariable p == differentiate(p, #1)
diff --git a/src/algebra/lodop.spad.pamphlet b/src/algebra/lodop.spad.pamphlet
index 3ebad1d2..d4aba322 100644
--- a/src/algebra/lodop.spad.pamphlet
+++ b/src/algebra/lodop.spad.pamphlet
@@ -86,7 +86,7 @@ OppositeMonogenicLinearOperator(P, R): OPRcat == OPRdef where
R: Ring
OPRcat == MonogenicLinearOperator(R) with
- if P has DifferentialRing then DifferentialRing
+ if P has DifferentialDomain P then DifferentialRing
op: P -> $ ++ op(p) creates a value in $ equal to p in P.
po: $ -> P ++ po(q) creates a value in P equal to q in $.