[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Axiom-developer] 20080816.02.tpd.patch add additional regression tests
From: |
daly |
Subject: |
[Axiom-developer] 20080816.02.tpd.patch add additional regression tests |
Date: |
Sun, 17 Aug 2008 00:37:48 -0500 |
Add additional regression tests.
======================================================================
diff --git a/changelog b/changelog
index 30cf744..5a3a67b 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,7 @@
+20080816 tpd src/input/Makefile add regression tests
+20080816 tpd src/input/test.input create regression
+20080816 tpd src/input/regset.input create regression
+20080816 tpd src/input/bern.input break into pieces
20080816 tpd src/input/tutchap2.input remove f 0, it takes too long
20080815 tpd books/bookvol7.1 fix typo, lost $ recovered
20080815 tpd Makefile make hyperdoc before testing
diff --git a/src/input/Makefile.pamphlet b/src/input/Makefile.pamphlet
index 93718ee..5581e71 100644
--- a/src/input/Makefile.pamphlet
+++ b/src/input/Makefile.pamphlet
@@ -240,7 +240,7 @@ ASEC=errortrap.output
# Error: FLUSH is invalid as a function
# Error signalled by newGoGet
-FLUSH=regset.output
+FLUSH=
# Error: The function WRAPPED is undefined.
WRAPPED=loop.output
@@ -353,7 +353,8 @@ REGRES= algaggr.regress algbrbf.regress algfacob.regress
alist.regress \
poly1.regress polycoer.regress poly.regress psgenfcn.regress \
quat1.regress quat.regress r20abugs.regress r20bugs.regress \
r21bugsbig.regress r21bugs.regress radff.regress radix.regress \
- realclos.regress reclos.regress repa6.regress robidoux.regress \
+ realclos.regress reclos.regress regset.regress \
+ repa6.regress robidoux.regress \
roman.regress roots.regress ruleset.regress rules.regress \
schaum1.regress schaum2.regress schaum3.regress schaum4.regress \
schaum5.regress schaum6.regress schaum7.regress schaum8.regress \
@@ -373,7 +374,7 @@ REGRES= algaggr.regress algbrbf.regress algfacob.regress
alist.regress \
stbl.regress stream2.regress stream.regress streams.regress \
string.regress strtbl.regress summation.regress \
symbol.regress t111293.regress table.regress tancot.regress \
- tanhcoth.regress tanatan.regress tbagg.regress \
+ tanhcoth.regress tanatan.regress tbagg.regress test.regress \
textfile.regress torus.regress \
triglim.regress tsetcatvermeer.regress tutchap1.regress \
void.regress uniseg.regress
@@ -942,7 +943,8 @@ DOCFILES= \
${DOC}/r20bugs.input.dvi ${DOC}/r21bugsbig.input.dvi \
${DOC}/r21bugs.input.dvi ${DOC}/radff.input.dvi \
${DOC}/radix.input.dvi ${DOC}/realclos.input.dvi \
- ${DOC}/reclos.input.dvi ${DOC}/reductio.input.dvi \
+ ${DOC}/reclos.input.dvi ${DOC}/regset.input.dvi \
+ ${DOC}/reductio.input.dvi \
${DOC}/regset.input.dvi ${DOC}/repa6.input.dvi \
${DOC}/ribbon.input.dvi ${DOC}/ribbons.input.dvi \
${DOC}/ribbonsnew.input.dvi ${DOC}/rk4draw.input.dvi \
diff --git a/src/input/bern.input.pamphlet b/src/input/bern.input.pamphlet
index b383351..78cca45 100644
--- a/src/input/bern.input.pamphlet
+++ b/src/input/bern.input.pamphlet
@@ -10,8 +10,11 @@
\tableofcontents
\eject
<<*>>=
--- @(#)bern.input 1.1 89/09/07 20:54:27
-draw(curve(cos(t)/(1+sin(t)**2),sin(t)*cos(t)/(1+sin(t)**2)),t = -%pi..%pi,
[title "Lemniscate of Bernoulli"])
+f(t)==cos(t)/(1+sin(t)**2)
+g(t)==sin(t)*cos(t)/(1+sin(t)**2)
+c(t)==curve(f(t),g(t))
+d:=draw(c(t)),t = -%pi..%pi, [title "Lemniscate of Bernoulli"])
+close(d)
@
\eject
\begin{thebibliography}{99}
diff --git a/src/input/regset.input.pamphlet b/src/input/regset.input.pamphlet
index 1e52bfb..cc33b54 100644
--- a/src/input/regset.input.pamphlet
+++ b/src/input/regset.input.pamphlet
@@ -1,53 +1,550 @@
\documentclass{article}
\usepackage{axiom}
\begin{document}
-\title{\$SPAD/src/input REGSET.input}
-\author{The Axiom Team}
+\title{\$SPAD/src/input regset.input}
+\author{Timothy Daly}
\maketitle
\begin{abstract}
+Input generated from RegularTriangularSetXmpPage
\end{abstract}
\eject
\tableofcontents
\eject
<<*>>=
-
--- Input generated from RegularTriangularSetXmpPage
+)spool regset.output
+)set message test on
+)set message auto off
)clear all
-
+
+--S 1 of 34
R := Integer
+--R
+--R
+--R (1) Integer
+--R Type:
Domain
+--E 1
+
+--S 2 of 34
ls : List Symbol := [x,y,z,t]
+--R
+--R
+--R (2) [x,y,z,t]
+--R Type: List
Symbol
+--E 2
+
+--S 3 of 34
V := OVAR(ls)
+--R
+--R
+--R (3) OrderedVariableList [x,y,z,t]
+--R Type:
Domain
+--E 3
+
+--S 4 of 34
E := IndexedExponents V
+--R
+--R
+--R (4) IndexedExponents OrderedVariableList [x,y,z,t]
+--R Type:
Domain
+--E 4
+
+--S 5 of 34
P := NSMP(R, V)
+--R
+--R
+--R (5) NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--R Type:
Domain
+--E 5
+
+--S 6 of 34
x: P := 'x
+--R
+--R
+--R (6) x
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 6
+
+--S 7 of 34
y: P := 'y
+--R
+--R
+--R (7) y
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 7
+
+--S 8 of 34
z: P := 'z
+--R
+--R
+--R (8) z
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 8
+
+--S 9 of 34
t: P := 't
+--R
+--R
+--R (9) t
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 9
+
+--S 10 of 34
T := REGSET(R,E,V,P)
+--R
+--R
+--R (10)
+--R RegularTriangularSet(Integer,IndexedExponents OrderedVariableList
[x,y,z,t],O
+--R rderedVariableList
[x,y,z,t],NewSparseMultivariatePolynomial(Integer,OrderedV
+--R ariableList [x,y,z,t]))
+--R Type:
Domain
+--E 10
+
+--S 11 of 34
p1 := x ** 31 - x ** 6 - x - y
+--R
+--R
+--R 31 6
+--R (11) x - x - x - y
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 11
+
+--S 12 of 34
p2 := x ** 8 - z
+--R
+--R
+--R 8
+--R (12) x - z
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 12
+
+--S 13 of 34
p3 := x ** 10 - t
+--R
+--R
+--R 10
+--R (13) x - t
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 13
+
+--S 14 of 34
lp := [p1, p2, p3]
+--R
+--R
+--R 31 6 8 10
+--R (14) [x - x - x - y,x - z,x - t]
+--RType: List NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 14
+
+--S 15 of 34
zeroSetSplit(lp)$T
+--R
+--R
+--R 5 4 2 3 8 5 3 2 4 2
+--R (15) [{z - t ,t z y + 2z y - t + 2t + t - t ,(t - t)x - t y - z }]
+--RType: List RegularTriangularSet(Integer,IndexedExponents
OrderedVariableList [x,y,z,t],OrderedVariableList
[x,y,z,t],NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t]))
+--E 15
+
+--S 16 of 34
lts := zeroSetSplit(lp,false)$T
+--R
+--R
+--R (16)
+--R 5 4 2 3 8 5 3 2 4 2
+--R [{z - t ,t z y + 2z y - t + 2t + t - t ,(t - t)x - t y - z },
+--R 3 5 2 3 2
+--R {t - 1,z - t,t z y + 2z y + 1,z x - t}, {t,z,y,x}]
+--RType: List RegularTriangularSet(Integer,IndexedExponents
OrderedVariableList [x,y,z,t],OrderedVariableList
[x,y,z,t],NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t]))
+--E 16
+
+--S 17 of 34
[coHeight(ts) for ts in lts]
+--R
+--R
+--R (17) [1,0,0]
+--R Type: List
NonNegativeInteger
+--E 17
+
+--S 18 of 34
f1 := y**2*z+2*x*y*t-2*x-z
+--R
+--R
+--R 2
+--R (18) (2t y - 2)x + z y - z
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 18
+
+--S 19 of 34
f2 := -x**3*z+ 4*x*y**2*z+ 4*x**2*y*t+ 2*y**3*t+ 4*x**2- 10*y**2+ 4*x*z-
10*y*t+ 2
+--R
+--R
+--R 3 2 2 3 2
+--R (19) - z x + (4t y + 4)x + (4z y + 4z)x + 2t y - 10y - 10t y + 2
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 19
+
+--S 20 of 34
f3 := 2*y*z*t+x*t**2-x-2*z
+--R
+--R
+--R 2
+--R (20) (t - 1)x + 2t z y - 2z
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 20
+
+--S 21 of 34
f4 := -x*z**3+ 4*y*z**2*t+ 4*x*z*t**2+ 2*y*t**3+ 4*x*z+ 4*z**2-10*y*t-
10*t**2+2
+--R
+--R
+--R 3 2 2 3 2 2
+--R (21) (- z + (4t + 4)z)x + (4t z + 2t - 10t)y + 4z - 10t + 2
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 21
+
+--S 22 of 34
lf := [f1, f2, f3, f4]
+--R
+--R
+--R (22)
+--R 2
+--R [(2t y - 2)x + z y - z,
+--R 3 2 2 3 2
+--R - z x + (4t y + 4)x + (4z y + 4z)x + 2t y - 10y - 10t y + 2,
+--R 2
+--R (t - 1)x + 2t z y - 2z,
+--R 3 2 2 3 2 2
+--R (- z + (4t + 4)z)x + (4t z + 2t - 10t)y + 4z - 10t + 2]
+--RType: List NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 22
+
+--S 23 of 34
zeroSetSplit(lf)$T
+--R
+--R
+--R (23)
+--R 2 8 6 2 3 2
+--R [{t - 1,z - 16z + 256z - 256,t y - 1,(z - 8z)x - 8z + 16},
+--R 2 2 2
+--R {3t + 1,z - 7t - 1,y + t,x + z},
+--R 8 6 2 3 2
+--R {t - 10t + 10t - 1,z,(t - 5t)y - 5t + 1,x},
+--R 2 2
+--R {t + 3,z - 4,y + t,x - z}]
+--RType: List RegularTriangularSet(Integer,IndexedExponents
OrderedVariableList [x,y,z,t],OrderedVariableList
[x,y,z,t],NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t]))
+--E 23
+
+--S 24 of 34
lts2 := zeroSetSplit(lf,false)$T
+--R
+--R
+--R (24)
+--R 8 6 2 3 2
+--R [{t - 10t + 10t - 1,z,(t - 5t)y - 5t + 1,x},
+--R 2 8 6 2 3 2
+--R {t - 1,z - 16z + 256z - 256,t y - 1,(z - 8z)x - 8z + 16},
+--R 2 2 2 2 2
+--R {3t + 1,z - 7t - 1,y + t,x + z}, {t + 3,z - 4,y + t,x - z}]
+--RType: List RegularTriangularSet(Integer,IndexedExponents
OrderedVariableList [x,y,z,t],OrderedVariableList
[x,y,z,t],NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t]))
+--E 24
+
+--S 25 of 34
[coHeight(ts) for ts in lts2]
+--R
+--R
+--R (25) [0,0,0,0]
+--R Type: List
NonNegativeInteger
+--E 25
+
+--S 26 of 34
degrees := [degree(ts) for ts in lts2]
+--R
+--R
+--R (26) [8,16,4,4]
+--R Type: List
NonNegativeInteger
+--E 26
+
+--S 27 of 34
reduce(+,degrees)
+--R
+--R
+--R (27) 32
+--R Type:
PositiveInteger
+--E 27
+
+--S 28 of 34
u : R := 2
+--R
+--R
+--R (28) 2
+--R Type:
Integer
+--E 28
+
+--S 29 of 34
q1 := 2*(u-1)**2+ 2*(x-z*x+z**2)+ y**2*(x-1)**2- 2*u*x+ 2*y*t*(1-x)*(x-z)+
2*u*z*t*(t-y)+ u**2*t**2*(1-2*z)+ 2*u*t**2*(z-x)+ 2*u*t*y*(z-1)+ 2*u*z*x*(y+1)+
(u**2-2*u)*z**2*t**2+ 2*u**2*z**2+ 4*u*(1-u)*z+ t**2*(z-x)**2
+--R
+--R
+--R (29)
+--R 2 2 2 2 2 2
+--R (y - 2t y + t )x + (- 2y + ((2t + 4)z + 2t)y + (- 2t + 2)z - 4t -
2)x
+--R +
+--R 2 2 2 2
+--R y + (- 2t z - 4t)y + (t + 10)z - 8z + 4t + 2
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 29
+
+--S 30 of 34
q2 := t*(2*z+1)*(x-z)+ y*(z+2)*(1-x)+ u*(u-2)*t+ u*(1-2*u)*z*t+
u*y*(x+u-z*x-1)+ u*(u+1)*z**2*t
+--R
+--R
+--R 2
+--R (30) (- 3z y + 2t z + t)x + (z + 4)y + 4t z - 7t z
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 30
+
+--S 31 of 34
q3 := -u**2*(z-1)**2+ 2*z*(z-x)-2*(x-1)
+--R
+--R
+--R 2
+--R (31) (- 2z - 2)x - 2z + 8z - 2
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 31
+
+--S 32 of 34
q4 := u**2+4*(z-x**2)+3*y**2*(x-1)**2- 3*t**2*(z-x)**2
+3*u**2*t**2*(z-1)**2+u**2*z*(z-2)+6*u*t*y*(z+x+z*x-1)
+--R
+--R
+--R (32)
+--R 2 2 2 2 2 2
+--R (3y - 3t - 4)x + (- 6y + (12t z + 12t)y + 6t z)x + 3y + (12t z -
12t)y
+--R +
+--R 2 2 2 2
+--R (9t + 4)z + (- 24t - 4)z + 12t + 4
+--R Type: NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 32
+
+--S 33 of 34
lq := [q1, q2, q3, q4]
+--R
+--R
+--R (33)
+--R [
+--R 2 2 2
+--R (y - 2t y + t )x
+--R +
+--R 2 2 2 2
+--R (- 2y + ((2t + 4)z + 2t)y + (- 2t + 2)z - 4t - 2)x + y
+--R +
+--R 2 2 2
+--R (- 2t z - 4t)y + (t + 10)z - 8z + 4t + 2
+--R ,
+--R 2 2
+--R (- 3z y + 2t z + t)x + (z + 4)y + 4t z - 7t z, (- 2z - 2)x - 2z + 8z
- 2,
+--R
+--R 2 2 2 2 2 2
+--R (3y - 3t - 4)x + (- 6y + (12t z + 12t)y + 6t z)x + 3y
+--R +
+--R 2 2 2 2
+--R (12t z - 12t)y + (9t + 4)z + (- 24t - 4)z + 12t + 4
+--R ]
+--RType: List NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t])
+--E 33
+
+--S 34 of 34
zeroSetSplit(lq,true,true)$T
+--R
+--R[1 <4,0> -> |4|; {0}]W[2 <5,0>,<3,1> -> |8|; {0}][2 <4,1>,<3,1> -> |7|;
{0}][1 <3,1> -> |3|; {0}]G[2 <4,1>,<4,1> -> |8|; {0}]W[3 <5,1>,<4,1>,<3,2> ->
|12|; {0}]GI[3 <4,2>,<4,1>,<3,2> -> |11|; {0}]GWw[3 <4,1>,<3,2>,<5,2> -> |12|;
{0}][3 <3,2>,<3,2>,<5,2> -> |11|; {0}]GIwWWWw[4 <3,2>,<4,2>,<5,2>,<2,3> ->
|14|; {0}][4 <2,2>,<4,2>,<5,2>,<2,3> -> |13|; {0}]Gwww[5
<3,2>,<3,2>,<4,2>,<5,2>,<2,3> -> |17|; {0}]Gwwwwww[8
<3,2>,<4,2>,<4,2>,<4,2>,<4,2>,<4,2>,<5,2>,<2,3> -> |30|; {0}]Gwwwwww[8
<4,2>,<4,2>,<4,2>,<4,2>,<4,2>,<4,2>,<5,2>,<2,3> -> |31|; {0}][8
<3,3>,<4,2>,<4,2>,<4,2>,<4,2>,<4,2>,<5,2>,<2,3> -> |30|; {0}][8
<2,3>,<4,2>,<4,2>,<4,2>,<4,2>,<4,2>,<5,2>,<2,3> -> |29|; {0}][8
<1,3>,<4,2>,<4,2>,<4,2>,<4,2>,<4,2>,<5,2>,<2,3> -> |28|; {0}][7
<4,2>,<4,2>,<4,2>,<4,2>,<4,2>,<5,2>,<2,3> -> |27|; {0}][6
<4,2>,<4,2>,<4,2>,<4,2>,<5,2>,<2,3> -> |23|; {0}][5
<4,2>,<4,2>,<4,2>,<5,2>,<2,3> -> |19|; {0}]GIGIWwww[6
<5,2>,<4,2>,<4,2>,<5,2>,<3,3>,<2,3> -> |23|; {0}][6
<4,3>,<4,2>,<4,2>,<5,2>,<3,3!
>,<2,3> -> |22|; {0}]GIGI[6 <3,4>,<4,2>,<4,2>,<5,2>,<3,3>,<2,3> -> |21|; {0}][6
><2,4>,<4,2>,<4,2>,<5,2>,<3,3>,<2,3> -> |20|; {0}]GGG[5
><4,2>,<4,2>,<5,2>,<3,3>,<2,3> -> |18|; {0}]GIGIWwwwW[6
><5,2>,<4,2>,<5,2>,<3,3>,<3,3>,<2,3> -> |22|; {0}][6
><4,3>,<4,2>,<5,2>,<3,3>,<3,3>,<2,3> -> |21|; {0}]GIwwWwWWWWWWWwWWWWwwwww[8
><4,2>,<5,2>,<3,3>,<3,3>,<4,3>,<2,3>,<3,4>,<3,4> -> |27|; {0}][8
><3,3>,<5,2>,<3,3>,<3,3>,<4,3>,<2,3>,<3,4>,<3,4> -> |26|; {0}][8
><2,3>,<5,2>,<3,3>,<3,3>,<4,3>,<2,3>,<3,4>,<3,4> -> |25|;
>{0}]Gwwwwwwwwwwwwwwwwwwww[9
><5,2>,<3,3>,<3,3>,<4,3>,<3,3>,<3,3>,<2,3>,<3,4>,<3,4> -> |29|; {0}]GI[9
><4,3>,<3,3>,<3,3>,<4,3>,<3,3>,<3,3>,<2,3>,<3,4>,<3,4> -> |28|; {0}][9
><3,3>,<3,3>,<3,3>,<4,3>,<3,3>,<3,3>,<2,3>,<3,4>,<3,4> -> |27|; {0}][9
><2,3>,<3,3>,<3,3>,<4,3>,<3,3>,<3,3>,<2,3>,<3,4>,<3,4> -> |26|;
>{0}]GGwwwwwwwwwwwwWWwwwwwwww[11
><3,3>,<3,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |33|;
>{0}][11 <2,3>,<3,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> !
|32|; {0}][11 <1,3>,<3,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>!
,<3,3>,<3,4>,<3,4> -> |31|; {0}]GGGwwwwwwwwwwwww[12
<2,3>,<2,3>,<3,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> ->
|34|; {0}]GGwwwwwwwwwwwww[13
<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |38|; {0}]Gwwwwwwwwwwwww[13
<2,3>,<3,3>,<4,3>,<3,3>,<4,3>,<3,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |39|; {0}]GGGwwwwwwwwwwwww[15
<3,3>,<4,3>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |46|; {0}][14
<4,3>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |43|; {0}]GIGGGGIGGI[14
<3,4>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |42|; {0}]GGG[14
<2,4>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |41|; {0}][14
<1,4>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |40|; {0}]GGG[13
<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |39|;!
{0}]Gwwwwwwwwwwwww[15
<3,3>,<3,3>,<4,3>,<4,3>,<4,3>,<3,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |48|; {0}]Gwwwwwwwwwwwww[15
<4,3>,<4,3>,<3,3>,<4,3>,<4,3>,<3,3>,<4,3>,<3,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |49|; {0}]GIGI[15
<3,4>,<4,3>,<3,3>,<4,3>,<4,3>,<3,3>,<4,3>,<3,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |48|; {0}]G[14
<4,3>,<3,3>,<4,3>,<4,3>,<3,3>,<4,3>,<3,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |45|; {0}][13
<3,3>,<4,3>,<4,3>,<3,3>,<4,3>,<3,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |41|; {0}]Gwwwwwwwwwwwww[13
<4,3>,<4,3>,<4,3>,<3,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |42|; {0}]GIGGGGIGGI[13
<3,4>,<4,3>,<4,3>,<3,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |41|; {0}]GGGGGGGG[13
<2,4>,<4,3>,<4,3>,<3,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |40|; {0}][13
<1,4>,<4,3>,<4,3>,<3,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |39|; {0}][13 <0,4>,<4,3>,<4,3>,!
<3,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -!
> |38|; {0}][12
> <4,3>,<4,3>,<3,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> ->
> |38|; {1}][11
> <4,3>,<3,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |34|;
> {1}][10 <3,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |30|;
> {1}][10 <2,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |29|;
> {1}]GGGwwwwwwwwwwwww[11
> <3,3>,<3,3>,<4,3>,<3,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |33|;
> {1}]GGGwwwwwwwwwwwww[12
> <4,3>,<3,3>,<4,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> ->
> |38|; {1}]Gwwwwwwwwwwwww[12
> <3,3>,<4,3>,<5,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> ->
> |39|; {1}]GGwwwwwwwwwwwww[13
> <5,3>,<4,3>,<4,3>,<4,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
> -> |44|; {1}]GIGGGGIGGIW[13
> <4,4>,<4,3>,<4,3>,<4,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
> -> |43|; {1}]GGW[13
> <3,4>,<4,3>,<4,3>,<4,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
> -> |42|; {1}]GGG[12 <4,3>,<4,3>,<4,3>,<3,3>!
,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |39|; {1}]Gwwwwwwwwwwwww[12
<4,3>,<4,3>,<5,3>,<3,3>,<4,3>,<3,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> ->
|40|; {1}]Gwwwwwwwwwwwww[13
<5,3>,<5,3>,<4,3>,<5,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |46|; {1}]GIGIW[13
<4,4>,<5,3>,<4,3>,<5,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |45|; {1}][13
<3,4>,<5,3>,<4,3>,<5,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |44|; {1}][13
<2,4>,<5,3>,<4,3>,<5,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4>
-> |43|; {1}]GG[12
<5,3>,<4,3>,<5,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> ->
|41|; {1}]GIGGGGIGGIW[12
<4,4>,<4,3>,<5,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> ->
|40|; {1}]GGGGGGW[12
<3,4>,<4,3>,<5,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> ->
|39|; {1}][12
<2,4>,<4,3>,<5,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> ->
|38|; {1}][12 <1,4>,<4,3>,<5,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,!
3>,<3,3>,<3,3>,<3,4>,<3,4> -> |37|; {1}]GGG[11 <4,3>,<5,3>,<3!
,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |36|; {1}][10
<5,3>,<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |32|; {1}][9
<3,3>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |27|; {1}]W[9
<2,4>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |26|; {1}][9
<1,4>,<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |25|; {1}][8
<3,3>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |24|; {1}]W[8
<2,4>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |23|; {1}][8
<1,4>,<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |22|; {1}][7
<4,3>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |21|; {1}]w[7
<3,4>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |20|; {1}][7
<2,4>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |19|; {1}][7
<1,4>,<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |18|; {1}][6
<2,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |17|; {1}]GGwwwwww[7
<3,3>,<3,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |21|; {1}]GIW[7
<2,4>,<3,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |20|; {1}]GG[6
<3,3>,<3,3>,<3,3>,<3,3>,<3!
,4>,<3,4> -> |18|; {1}]Gwwwwww[7 <4,3>,<4,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> ->
|23|; {1}]GIW[7 <3,4>,<4,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |22|; {1}][6
<4,3>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |19|; {1}]GIW[6
<3,4>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |18|; {1}]GGW[6
<2,4>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |17|; {1}][6
<1,4>,<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |16|; {1}]GGG[5
<3,3>,<3,3>,<3,3>,<3,4>,<3,4> -> |15|; {1}]GIW[5 <2,4>,<3,3>,<3,3>,<3,4>,<3,4>
-> |14|; {1}]GG[4 <3,3>,<3,3>,<3,4>,<3,4> -> |12|; {1}][3 <3,3>,<3,4>,<3,4> ->
|9|; {1}]W[3 <2,4>,<3,4>,<3,4> -> |8|; {1}][3 <1,4>,<3,4>,<3,4> -> |7|; {1}]G[2
<3,4>,<3,4> -> |6|; {1}]G[1 <3,4> -> |3|; {1}][1 <2,4> -> |2|; {1}][1 <1,4> ->
|1|; {1}]
+--R *** QCMPACK Statistics ***
+--R Table size: 36
+--R Entries reused: 255
+--R
+--R *** REGSETGCD: Gcd Statistics ***
+--R Table size: 125
+--R Entries reused: 0
+--R
+--R *** REGSETGCD: Inv Set Statistics ***
+--R Table size: 30
+--R Entries reused: 0
+--R
+--R (34)
+--R [
+--R {
+--R 24 23 22
+--R 960725655771966t + 386820897948702t + 8906817198608181t
+--R +
+--R 21 20 19
+--R 2704966893949428t + 37304033340228264t + 7924782817170207t
+--R +
+--R 18 17 16
+--R 93126799040354990t + 13101273653130910t + 156146250424711858t
+--R +
+--R 15 14 13
+--R 16626490957259119t + 190699288479805763t + 24339173367625275t
+--R +
+--R 12 11
10
+--R 180532313014960135t + 35288089030975378t + 135054975747656285t
+--R +
+--R 9 8 7
+--R 34733736952488540t + 75947600354493972t + 19772555692457088t
+--R +
+--R 6 5 4
+--R 28871558573755428t + 5576152439081664t + 6321711820352976t
+--R +
+--R 3 2
+--R 438314209312320t + 581105748367008t - 60254467992576t +
1449115951104
+--R ,
+--R
+--R 23
+--R 26604210869491302385515265737052082361668474181372891857784t
+--R +
+--R 22
+--R 443104378424686086067294899528296664238693556855017735265295t
+--R +
+--R 21
+--R 279078393286701234679141342358988327155321305829547090310242t
+--R +
+--R
20
+--R 3390276361413232465107617176615543054620626391823613392185226t
+--R +
+--R 19
+--R 941478179503540575554198645220352803719793196473813837434129t
+--R +
+--R
18
+--R 11547855194679475242211696749673949352585747674184320988144390t
+--R +
+--R
17
+--R 1343609566765597789881701656699413216467215660333356417241432t
+--R +
+--R
16
+--R 23233813868147873503933551617175640859899102987800663566699334t
+--R +
+--R 15
+--R 869574020537672336950845440508790740850931336484983573386433t
+--R +
+--R
14
+--R 31561554305876934875419461486969926554241750065103460820476969t
+--R +
+--R
13
+--R 1271400990287717487442065952547731879554823889855386072264931t
+--R +
+--R
12
+--R 31945089913863736044802526964079540198337049550503295825160523t
+--R +
+--R
11
+--R 3738735704288144509871371560232845884439102270778010470931960t
+--R +
+--R
10
+--R 25293997512391412026144601435771131587561905532992045692885927t
+--R +
+--R 9
+--R 5210239009846067123469262799870052773410471135950175008046524t
+--R +
+--R
8
+--R 15083887986930297166259870568608270427403187606238713491129188t
+--R +
+--R 7
+--R 3522087234692930126383686270775779553481769125670839075109000t
+--R +
+--R 6
+--R 6079945200395681013086533792568886491101244247440034969288588t
+--R +
+--R 5
+--R 1090634852433900888199913756247986023196987723469934933603680t
+--R +
+--R 4
+--R 1405819430871907102294432537538335402102838994019667487458352t
+--R +
+--R 3
+--R 88071527950320450072536671265507748878347828884933605202432t
+--R +
+--R 2
+--R 135882489433640933229781177155977768016065765482378657129440t
+--R +
+--R - 13957283442882262230559894607400314082516690749975646520320t
+--R +
+--R 334637692973189299277258325709308472592117112855749713920
+--R *
+--R z
+--R +
+--R 23
+--R 8567175484043952879756725964506833932149637101090521164936t
+--R +
+--R 22
+--R 149792392864201791845708374032728942498797519251667250945721t
+--R +
+--R 21
+--R 77258371783645822157410861582159764138123003074190374021550t
+--R +
+--R 20
+--R 1108862254126854214498918940708612211184560556764334742191654t
+--R +
+--R 19
+--R 213250494460678865219774480106826053783815789621501732672327t
+--R +
+--R 18
+--R 3668929075160666195729177894178343514501987898410131431699882t
+--R +
+--R 17
+--R 171388906471001872879490124368748236314765459039567820048872t
+--R +
+--R 16
+--R 7192430746914602166660233477331022483144921771645523139658986t
+--R +
+--R 15
+--R - 128798674689690072812879965633090291959663143108437362453385t
+--R +
+--R 14
+--R 9553010858341425909306423132921134040856028790803526430270671t
+--R +
+--R 13
+--R - 13296096245675492874538687646300437824658458709144441096603t
+--R +
+--R 12
+--R 9475806805814145326383085518325333106881690568644274964864413t
+--R +
+--R 11
+--R 803234687925133458861659855664084927606298794799856265539336t
+--R +
+--R 10
+--R 7338202759292865165994622349207516400662174302614595173333825t
+--R +
+--R 9
+--R 1308004628480367351164369613111971668880538855640917200187108t
+--R +
+--R 8
+--R 4268059455741255498880229598973705747098216067697754352634748t
+--R +
+--R 7
+--R 892893526858514095791318775904093300103045601514470613580600t
+--R +
+--R 6
+--R 1679152575460683956631925852181341501981598137465328797013652t
+--R +
+--R 5
+--R 269757415767922980378967154143357835544113158280591408043936t
+--R +
+--R 4
+--R 380951527864657529033580829801282724081345372680202920198224t
+--R +
+--R 3
+--R 19785545294228495032998826937601341132725035339452913286656t
+--R +
+--R 2
+--R 36477412057384782942366635303396637763303928174935079178528t
+--R +
+--R - 3722212879279038648713080422224976273210890229485838670848t
+--R +
+--R 89079724853114348361230634484013862024728599906874105856
+--R ,
+--R 3 2 3 2
+--R (3z - 11z + 8z + 4)y + 2t z + 4t z - 5t z - t,
+--R 2
+--R (z + 1)x + z - 4z + 1}
+--R ]
+--RType: List RegularTriangularSet(Integer,IndexedExponents
OrderedVariableList [x,y,z,t],OrderedVariableList
[x,y,z,t],NewSparseMultivariatePolynomial(Integer,OrderedVariableList
[x,y,z,t]))
+--E 34
+)spool
+)lisp (bye)
+
@
\eject
\begin{thebibliography}{99}
diff --git a/src/input/test.input.pamphlet b/src/input/test.input.pamphlet
index 49460a9..ea9b453 100644
--- a/src/input/test.input.pamphlet
+++ b/src/input/test.input.pamphlet
@@ -2,9 +2,10 @@
\usepackage{axiom}
\begin{document}
\title{\$SPAD/src/input test.input}
-\author{The Axiom Team}
+\author{Scott Morrison, Bill Burge, Robert Sutor, Timothy Daly}
\maketitle
\begin{abstract}
+File of recently fixed interpreter bugs
\end{abstract}
\eject
\tableofcontents
@@ -14,638 +15,2350 @@
--Copyright The Numerical Algorithms Group Limited 1991.
@
<<*>>=
-<<license>>
-
-
-
--- File of recently fixed interpreter bugs
-
---- eval a polynomial with EXPR substitution values
---- Fixed by SCM, verified on 10/30/90
-
+)spool test.output
+)set message test on
+)set message auto off
+)set break resume
+
+@
+Eval a polynomial with EXPR substitution values.
+Fixed by SCM, verified on 10/30/90
+<<*>>=
)clear all
-
+--S 1
eq1:= A*x**2 + B*x*y + C*y**2 +D*x + E*y + F
-
+--R
+--R
+--R 2 2
+--R (1) C y + (B x + E)y + A x + D x + F
+--R Type: Polynomial
Integer
+--E 1
+
+--S 2
eq2:= eval(eq1,[x= xdot*cos(t) - ydot*sin(t), y=xdot*sin(t) + ydot*cos(t)])
+--R
+--R
+--R (2)
+--R 2 2 2
+--R (A ydot - B xdot ydot + C xdot )sin(t)
+--R +
+--R 2 2
+--R ((- B ydot + (2C - 2A)xdot ydot + B xdot )cos(t) - D ydot + E
xdot)sin(t)
+--R +
+--R 2 2 2
+--R (C ydot + B xdot ydot + A xdot )cos(t) + (E ydot + D xdot)cos(t) + F
+--R Type: Expression
Integer
+--E 2
--- UTS coercions. Fixed by SCM, verified on 10/30/90
-
+@
+UTS coercions. Fixed by SCM, verified on 10/30/90
+<<*>>=
)clear all
+--S 3
taylor exp x
-
+--R
+--R
+--R (1)
+--R 1 2 1 3 1 4 1 5 1 6 1 7 1 8
+--R 1 + x + - x + - x + -- x + --- x + --- x + ---- x + ----- x
+--R 2 6 24 120 720 5040 40320
+--R +
+--R 1 9 1 10 11
+--R ------ x + ------- x + O(x )
+--R 362880 3628800
+--R Type: UnivariateTaylorSeries(Expression
Integer,x,0)
+--E 3
+
+--S 4
s := %
-
+--R
+--R
+--R (2)
+--R 1 2 1 3 1 4 1 5 1 6 1 7 1 8
+--R 1 + x + - x + - x + -- x + --- x + --- x + ---- x + ----- x
+--R 2 6 24 120 720 5040 40320
+--R +
+--R 1 9 1 10 11
+--R ------ x + ------- x + O(x )
+--R 362880 3628800
+--R Type: UnivariateTaylorSeries(Expression
Integer,x,0)
+--E 4
+
+--S 5
s::(UTS(EXPR FLOAT, x, 0))
+--R
+--R
+--R (3)
+--R 2 3
+--R 1.0 + x + 0.5 x + 0.1666666666 6666666667 x
+--R +
+--R 4 5
+--R 0.0416666666 6666666666 7 x + 0.0083333333 3333333333 34 x
+--R +
+--R 6 7
+--R 0.0013888888 8888888888 89 x + 0.0001984126 9841269841 27 x
+--R +
+--R 8 9
+--R 0.0000248015 8730158730 1587 x + 0.0000027557 3192239858 90653 x
+--R +
+--R 10 11
+--R 0.2755731922 3985890653 E -6 x + O(x )
+--R Type: UnivariateTaylorSeries(Expression
Float,x,0.0)
+--E 5
+
+--S 6
s::(UTS(FLOAT, x, 0))
-
+--R
+--R
+--R (4)
+--R 2 3
+--R 1.0 + x + 0.5 x + 0.1666666666 6666666667 x
+--R +
+--R 4 5
+--R 0.0416666666 6666666666 7 x + 0.0083333333 3333333333 34 x
+--R +
+--R 6 7
+--R 0.0013888888 8888888888 89 x + 0.0001984126 9841269841 27 x
+--R +
+--R 8 9
+--R 0.0000248015 8730158730 1587 x + 0.0000027557 3192239858 90653 x
+--R +
+--R 10 11
+--R 0.2755731922 3985890653 E -6 x + O(x )
+--R Type:
UnivariateTaylorSeries(Float,x,0.0)
+--E 6
+
+--S 7
eval(s,1)
+--R
+--R
+--R 5 8 65 163 1957 685 109601 98641
+--R (5) [1,2,-,-,--,---,----,---,------,-----,...]
+--R 2 3 24 60 720 252 40320 36288
+--R Type: Stream Expression
Integer
+--E 7
+
+--S 8
%::(Stream Float)
+--R
+--R
+--R (6)
+--R [1.0, 2.0, 2.5, 2.6666666666 666666667, 2.7083333333 333333333,
+--R 2.7166666666 666666667, 2.7180555555 555555556, 2.7182539682 53968254,
+--R 2.7182787698 412698413, 2.7182815255 731922399, ...]
+--R Type: Stream
Float
+--E 8
--- Another bug, fixed by adding UPXS2 package,
+@
+Another bug, fixed by adding UPXS2 package,
+<<*>>=
+)clear all
+--S 9
s := series(sin(a*x),x=0)
+--R
+--R
+--R 3 5 7 9 11
+--R a 3 a 5 a 7 a 9 a 11 12
+--R (1) a x - -- x + --- x - ---- x + ------ x - -------- x + O(x )
+--R 6 120 5040 362880 39916800
+--R Type: UnivariatePuiseuxSeries(Expression
Integer,x,0)
+--E 9
+
+--S 10
eval(s, 1.0)
-
+--R
+--R
+--R (2)
+--R 3
+--R [0.0, a, a, - 0.1666666666 6666666667 a + a,
+--R 3
+--R - 0.1666666666 6666666667 a + a,
+--R 5 3
+--R 0.0083333333 3333333333 34 a - 0.1666666666 6666666667 a + a,
+--R 5 3
+--R 0.0083333333 3333333333 34 a - 0.1666666666 6666666667 a + a,
+--R
+--R 7 5
+--R - 0.0001984126 9841269841 27 a + 0.0083333333 3333333333 34 a
+--R +
+--R 3
+--R - 0.1666666666 6666666667 a + a
+--R ,
+--R
+--R 7 5
+--R - 0.0001984126 9841269841 27 a + 0.0083333333 3333333333 34 a
+--R +
+--R 3
+--R - 0.1666666666 6666666667 a + a
+--R ,
+--R
+--R 9 7
+--R 0.0000027557 3192239858 90653 a - 0.0001984126 9841269841 27 a
+--R +
+--R 5 3
+--R 0.0083333333 3333333333 34 a - 0.1666666666 6666666667 a + a
+--R ,
+--R ...]
+--R Type: Stream Expression
Float
+--E 10
+
+--S 11
s - a*x
+--R
+--R
+--R (3)
+--R 3 5 7 9 11 13
+--R a 3 a 5 a 7 a 9 a 11 a 13
+--R - -- x + --- x - ---- x + ------ x - -------- x + ---------- x
+--R 6 120 5040 362880 39916800 6227020800
+--R +
+--R 14
+--R O(x )
+--R Type: UnivariatePuiseuxSeries(Expression
Integer,x,0)
+--E 11
+@
+Grand finale, just fixed on 3/23/91
+<<*>>=
--- grand finale, just fixed on 3/23/91
+--S 12
eval(s, 1.0)
+--R
+--R
+--R (4)
+--R 3
+--R [0.0, a, a, - 0.1666666666 6666666667 a + a,
+--R 3
+--R - 0.1666666666 6666666667 a + a,
+--R 5 3
+--R 0.0083333333 3333333333 34 a - 0.1666666666 6666666667 a + a,
+--R 5 3
+--R 0.0083333333 3333333333 34 a - 0.1666666666 6666666667 a + a,
+--R
+--R 7 5
+--R - 0.0001984126 9841269841 27 a + 0.0083333333 3333333333 34 a
+--R +
+--R 3
+--R - 0.1666666666 6666666667 a + a
+--R ,
+--R
+--R 7 5
+--R - 0.0001984126 9841269841 27 a + 0.0083333333 3333333333 34 a
+--R +
+--R 3
+--R - 0.1666666666 6666666667 a + a
+--R ,
+--R
+--R 9 7
+--R 0.0000027557 3192239858 90653 a - 0.0001984126 9841269841 27 a
+--R +
+--R 5 3
+--R 0.0083333333 3333333333 34 a - 0.1666666666 6666666667 a + a
+--R ,
+--R ...]
+--R Type: Stream Expression
Float
+--E 12
--- generalized resolve
--- Fixed (enhanced) by SCM in 3/23/91
-
-)cl all
+@
+Generalized resolve. Fixed (enhanced) by SCM in 3/23/91
+<<*>>=
+)clear all
+--S 13
v := vector [1,2,3]
-(1/2)*v
+--R
+--R
+--R (1) [1,2,3]
+--R Type: Vector
PositiveInteger
+--E 13
+--S 14
+(1/2)*v
+--R
+--R
+--R 1 3
+--R (2) [-,1,-]
+--R 2 2
+--R Type: Vector Fraction
Integer
+--E 14
+
+--S 15
eval(x**2, x=1/2)
+--R
+--R
+--R 1
+--R (3) -
+--R 4
+--R Type: Polynomial Fraction
Integer
+--E 15
+
+--S 16
eval(x**2, x=0.5)
-eval(3**x, x=0.5)
+--R
+--R
+--R (4) 0.25
+--R Type: Polynomial
Float
+--E 16
--- overloading interpreter maps on arity
---- Fixed by SCM, verified on 10/30/90
+--S 17
+eval(3**x, x=0.5)
+--R
+--R
+--R (5) 1.7320508075 688772935
+--R Type: Expression
Float
+--E 17
+@
+Overloading interpreter maps on arity. Fixed by SCM, verified on 10/30/90
+<<*>>=
)clear all
+--S 18
f(x) == x+1
+--R
+--R Type:
Void
+--E 18
+
+--S 19
f(x,y) == x+y
+--R
+--R Type:
Void
+--E 19
+--S 20
f 3
+--R
+--R Compiling function f with type PositiveInteger -> PositiveInteger
+--R
+--R (3) 4
+--R Type:
PositiveInteger
+--E 20
+
+--S 21
f(3,4)
+--R
+--R Compiling function f with type (PositiveInteger,PositiveInteger) ->
+--R PositiveInteger
+--R
+--R (4) 7
+--R Type:
PositiveInteger
+--E 21
+
+--S 22
f(5)
-f(1,x)
+--R
+--R
+--R (5) 6
+--R Type:
PositiveInteger
+--E 22
--- targetted function requiring a coercion
---- Fixed by SCM, verified on 10/30/90
+--S 23
+f(1,x)
+--R
+--R Compiling function f with type (PositiveInteger,Variable x) ->
+--R Polynomial Integer
+--R
+--R (6) x + 1
+--R Type: Polynomial
Integer
+--E 23
+@
+Targetted function requiring a coercion. Fixed by SCM, verified on 10/30/90
+<<*>>=
)clear all
-series(n +-> bernoulli(n)/factorial(n), t=0)
--- in-homogeneous list mapping
---- Fixed by SCM, verified on 10/30/90
+--S 24
+series(n +-> bernoulli(n)/factorial(n), t=0)
+--R
+--R
+--R (1)
+--R 1 1 2 1 4 1 6 1 8 1 10 11
+--R 1 - - t + -- t - --- t + ----- t - ------- t + -------- t + O(t )
+--R 2 12 720 30240 1209600 47900160
+--R Type: UnivariatePuiseuxSeries(Expression
Integer,t,0)
+--E 24
+@
+In-homogeneous list mapping. Fixed by SCM, verified on 10/30/90
+<<*>>=
)clear all
+
+--S 25
l := [1,2,-1]
+--R
+--R
+--R (1) [1,2,- 1]
+--R Type: List
Integer
+--E 25
+
+--S 26
f : INT -> FRAC INT
+--R
+--R Type:
Void
+--E 26
+
+--S 27
f x == x
+--R
+--R Type:
Void
+--E 27
+
+--S 28
map(f, l)
+--R
+--R Compiling function f with type Integer -> Fraction Integer
+--R
+--R (4) [1,2,- 1]
+--R Type: List Fraction
Integer
+--E 28
--- Function args to interpreter functions
---- Fixed by SCM, verified on 10/30/90
+@
+Function args to interpreter functions. Fixed by SCM, verified on 10/30/90
+<<*>>=
+)clear all
-)cl all
+--S 29
f: INT -> INT
+--R
+--R Type:
Void
+--E 29
+
+--S 30
f x == x+1
+--R
+--R Type:
Void
+--E 30
+
+--S 31
u g == g 3
-u f
+--R
+--R Type:
Void
+--E 31
--- category modemap requiring a field to be constructed
---- Fixed by SCM, verified on 10/30/90
+--S 32
+u f
+--R
+--R Compiling function u with type (Integer -> Integer) -> Integer
+--R Compiling function f with type Integer -> Integer
+--R
+--R (4) 4
+--R Type:
PositiveInteger
+--E 32
+@
+Category modemap requiring a field to be constructed.
+Fixed by SCM, verified on 10/30/90
+<<*>>=
)clear all
+--S 33
groebner [x**2 - y, y**3+1]
+--R
+--R
+--R 2 6
+--R (1) [y - x ,x + 1]
+--R Type: List Polynomial
Integer
+--E 33
--- operations requiring polynomials, passed variables
---- Fixed by SCM, verified on 10/30/90
-
+@
+Operations requiring polynomials, passed variables.
+Fixed by SCM, verified on 10/30/90
+<<*>>=
)clear all
+
+--S 34
factor x
-draw(x, x=-1..1)
+--R
+--R
+--R (1) x
+--R Type: Factored Polynomial
Integer
+--E 34
--- bracket parsing and empty-set types
---- Fixed by SCM, verified on 10/30/90
+--draw(x, x=-1..1)
+@
+Bracket parsing and empty-set types. Fixed by SCM, verified on 10/30/90
+<<*>>=
)clear all
+
+@
+--S 35
+{}$(List INT)
+--R
+--RDaly Bug
+--R The function SEQ is not implemented in List Integer .
+--E 35
+
+--S 36
brace [] -- {}
---{}$(List INT)
+--R
+--R (1) {}
+--R Type: Set
None
+--E 36
+
+--S 37
brace [1] -- {1}
--- The following still doesn't work
-union(brace [], brace [1,2]) -- union({}, {1,2})
+--R
+--R (2) {1}
+--R Type: Set
PositiveInteger
+--E 37
--- Shouldn't work, but no longer bombs the interpreter
---- Fixed by SCM, verified on 10/30/90
+--S 38
+union(brace [], brace [1,2]) -- union({}, {1,2})
+--R
+--R (3) {1,2}
+--R Type: Set
PositiveInteger
+--E 38
+@
+Shouldn't work, but no longer bombs the interpreter.
+Fixed by SCM, verified on 10/30/90
+<<*>>=
)clear all
+
)set mes test off
+
+--S 39
map(variable, [x,y])
+--R
+--R
+--R (1) [x,y]
+--R Type: List Union(OrderedVariableList
[x,y],"failed")
+--E 39
+
)set mes test on
--- Recursive map type analysis bug
---- Fixed by SCM, verified on 10/30/90
-)set fun recur off
+@
+Recursive map type analysis bug. Fixed by SCM, verified on 10/30/90
+<<*>>=
)clear all
+)set fun recur off
+
+--S 40
p(n,x) == if n=0 then 1 else (x+n-1)*p(n-1,x)
+--R
+--R Type:
Void
+--E 40
+
+--S 41
pp(n,x) == if n=0 then 1 else if n<0 then (-1)**n/p(-n,1-x) else p(n,x)
+--R
+--R Type:
Void
+--E 41
+
+--S 42
pp(-1,x) -- should be 1/(x-1)
+--R
+--R Compiling function p with type (Integer,Polynomial Integer) ->
+--R Polynomial Integer
+--R Compiling function p with type (Integer,Variable x) -> Polynomial
+--R Integer
+--R Compiling function pp with type (Integer,Variable x) -> Fraction
+--R Polynomial Fraction Integer
+--R
+--R 1
+--R (3) -----
+--R x - 1
+--R Type: Fraction Polynomial Fraction
Integer
+--E 42
--- interpret-code mode for iterators is broken
+@
+Interpret-code mode for iterators is broken
+<<*>>=
+)clear all
-)cl all
+--S 43
f n ==
for i in 1..n repeat
j:=2*i
m:SQMATRIX(j,?):=1
print m
+--R
+--R Type:
Void
+--E 43
+
+--S 44
g n ==
j:=2*n
m:SQMATRIX(j,?):=1
print m
+--R
+--R Type:
Void
+--E 44
+--S 45
g 3
+--R
+--R Cannot compile the declaration for m because its (possible partial)
+--R type contains a local variable.
+--R AXIOM will attempt to step through and interpret the code.
+--R +1 0 0 0 0 0+
+--R | |
+--R |0 1 0 0 0 0|
+--R | |
+--R |0 0 1 0 0 0|
+--R | |
+--R |0 0 0 1 0 0|
+--R | |
+--R |0 0 0 0 1 0|
+--R | |
+--R +0 0 0 0 0 1+
+--R Type:
Void
+--E 45
+
+--S 46
f 3
+--R
+--R Cannot compile the declaration for m because its (possible partial)
+--R type contains a local variable.
+--R AXIOM will attempt to step through and interpret the code.
+--R +1 0+
+--R | |
+--R +0 1+
+--R +1 0 0 0+
+--R | |
+--R |0 1 0 0|
+--R | |
+--R |0 0 1 0|
+--R | |
+--R +0 0 0 1+
+--R +1 0 0 0 0 0+
+--R | |
+--R |0 1 0 0 0 0|
+--R | |
+--R |0 0 1 0 0 0|
+--R | |
+--R |0 0 0 1 0 0|
+--R | |
+--R |0 0 0 0 1 0|
+--R | |
+--R +0 0 0 0 0 1+
+--R Type:
Void
+--E 46
--- Test interpreter list destructuring
-
+@
+Test interpreter list destructuring
+<<*>>=
)clear all
+
+--S 47
mp(x,l) ==
l is [a,:b] =>
a*x**(#b)+ mp(x,b)
0
+--R
+--R Type:
Void
+--E 47
+--S 48
mp(x, [1,3,4, 2])
+--R
+--R Compiling function mp with type (Variable x,List PositiveInteger)
+--R -> Polynomial Integer
+--R
+--R 3 2
+--R (2) x + 3x + 4x + 2
+--R Type: Polynomial
Integer
+--E 48
+
+--S 49
mp(x, [1,2,-3, 4])
+--R
+--R Compiling function mp with type (Variable x,List Integer) ->
+--R Polynomial Integer
+--R
+--R 3 2
+--R (3) x + 2x - 3x + 4
+--R Type: Polynomial
Integer
+--E 49
--- Tests compilation of recursive functions
-
+@
+Tests compilation of recursive functions
+<<*>>=
)clear all
+--S 50
f1 n ==
if n=0 then 1 else if n=1 then 1 else f1(n-1)+f1(n-2)
+--R
+--R Type:
Void
+--E 50
+--S 51
f2 n ==
m:=n
if n=0 then 1 else if n=1 then 1 else f2(n-1)+f2(n-2)
+--R
+--R Type:
Void
+--E 51
+--S 52
f3 n ==
n=0 => 1
n=1 => 1
f3(n-1)+f3(n-2)
+--R
+--R Type:
Void
+--E 52
+--S 53
f4 n ==
m:=n
n=0 => 1
n=1 => 1
m:=n
f4(n-1)+f4(n-2)
+--R
+--R Type:
Void
+--E 53
+--S 54
f5 n == if n=0 or n=1 then 1 else f5(n-1)+f5(n-2)
+--R
+--R Type:
Void
+--E 54
+--S 55
[f1 3,f2 3, f3 3,f4 3,f5 3]
+--R
+--R Compiling function f1 with type Integer -> PositiveInteger
+--R Compiling function f2 with type Integer -> PositiveInteger
+--R Compiling function f3 with type Integer -> PositiveInteger
+--R Compiling function f4 with type Integer -> PositiveInteger
+--R Compiling function f5 with type Integer -> PositiveInteger
+--R
+--R (6) [3,3,3,3,3]
+--R Type: List
PositiveInteger
+--E 55
--- Input of GDMP types
--- Fixed by SCM on 1/22/91
-
-)cl all
+@
+Input of GDMP types. Fixed by SCM on 1/22/91
+<<*>>=
+)clear all
+--S 56
g: GDMP([x,y], INT, DIRPROD(2, NNI)) := x**2 + y
+--R
+--R
+--R 2
+--R (1) x + y
+--RType:
GeneralDistributedMultivariatePolynomial([x,y],Integer,DirectProduct(2,NonNegativeInteger))
+--E 56
--- has test with variables
--- Fixed by SCM on 1/22/91
-
-)cl all
+@
+Has test with variables. Fixed by SCM on 1/22/91
+<<*>>=
+)clear all
+--S 57
i := INT
-i has Algebra(i)
+--R
+--R
+--R (1) Integer
+--R Type:
Domain
+--E 57
--- returns in functions
--- Fixed by SCM on 1/22/91
+--S 58
+i has Algebra(i)
+--R
+--R
+--R (2) true
+--R Type:
Boolean
+--E 58
-)cl all
+@
+Returns in functions. Fixed by SCM on 1/22/91
+<<*>>=
+)clear all
+--S 59
f x == if x<0 then return x else x+1
+--R
+--R Type:
Void
+--E 59
+--S 60
f 2 -- should be 3
+--R
+--R Compiling function f with type PositiveInteger -> PositiveInteger
+--R
+--R (2) 3
+--R Type:
PositiveInteger
+--E 60
+
+--S 61
f(-2) -- should be -2
+--R
+--R Compiling function f with type Integer -> Integer
+--R
+--R (3) - 2
+--R Type:
Integer
+--E 61
--- resolveTT not returning Any
--- Fixed by SCM 1/30/91
-
-)cl all
+@
+resolveTT not returning Any. Fixed by SCM 1/30/91
+<<*>>=
+)clear all
+--S 62
m = [[1,2],[2,3]] -- Should return type EQ POLY SQMATRIX(2, INT)
-
+--R
+--R
+--R +1 2+
+--R (1) m= | |
+--R +2 3+
+--R Type: Equation Polynomial
SquareMatrix(2,Integer)
+--E 62
+
+--S 63
[1, "asd"] -- Should be of type List Any
+--R
+--R
+--R (2) [1,"asd"]
+--R Type: List
Any
+--E 63
)set mes test off
+
+--S 64
1+"asd" -- These should both fail in the same way
+--R
+--R There are 11 exposed and 5 unexposed library operations named +
+--R having 2 argument(s) but none was determined to be applicable.
+--R Use HyperDoc Browse, or issue
+--R )display op +
+--R to learn more about the available operations. Perhaps
+--R package-calling the operation or using coercions on the arguments
+--R will allow you to apply the operation.
+--R
+--R Cannot find a definition or applicable library operation named +
+--R with argument type(s)
+--R PositiveInteger
+--R String
+--R
+--R Perhaps you should use "@" to indicate the required return type,
+--R or "$" to specify which version of the function you need.
+--E 64
+
+--S 65
1/"asd"
-)set mes test on
+--R
+--R There are 12 exposed and 12 unexposed library operations named /
+--R having 2 argument(s) but none was determined to be applicable.
+--R Use HyperDoc Browse, or issue
+--R )display op /
+--R to learn more about the available operations. Perhaps
+--R package-calling the operation or using coercions on the arguments
+--R will allow you to apply the operation.
+--R
+--R Cannot find a definition or applicable library operation named /
+--R with argument type(s)
+--R PositiveInteger
+--R String
+--R
+--R Perhaps you should use "@" to indicate the required return type,
+--R or "$" to specify which version of the function you need.
+--E 65
--- Passing type variables to )show
+)set mes test on
-)cl all
+@
+Passing type variables to )show
+<<*>>=
+)clear all
+--S 66
t := MPOLY([x,y], INT)
+--R
+--R
+--R (1) MultivariatePolynomial([x,y],Integer)
+--R Type:
Domain
+--E 66
+
+--S 67
)show t
+--R
+--R MultivariatePolynomial([x,y],Integer) is a domain constructor.
+--R Abbreviation for MultivariatePolynomial is MPOLY
+--R This constructor is exposed in this frame.
+--R Issue )edit multpoly.spad.pamphlet to see algebra source code for MPOLY
+--R
+--R------------------------------- Operations --------------------------------
+--R
+--R ?*? : (Fraction Integer,%) -> % ?*? : (Integer,%) -> %
+--R ?*? : (PositiveInteger,%) -> % ?*? : (%,Fraction Integer) -> %
+--R ?*? : (%,Integer) -> % ?*? : (%,%) -> %
+--R ?**? : (%,PositiveInteger) -> % ?+? : (%,%) -> %
+--R ?-? : (%,%) -> % -? : % -> %
+--R ?/? : (%,Integer) -> % ?<? : (%,%) -> Boolean
+--R ?<=? : (%,%) -> Boolean ?=? : (%,%) -> Boolean
+--R ?>? : (%,%) -> Boolean ?>=? : (%,%) -> Boolean
+--R 1 : () -> % 0 : () -> %
+--R ?^? : (%,PositiveInteger) -> % associates? : (%,%) -> Boolean
+--R coefficients : % -> List Integer coerce : % -> OutputForm
+--R coerce : Fraction Integer -> % coerce : Integer -> %
+--R coerce : % -> % content : % -> Integer
+--R convert : % -> InputForm convert : % -> Pattern Float
+--R convert : % -> Pattern Integer eval : (%,Equation %) -> %
+--R eval : (%,List Equation %) -> % eval : (%,List %,List %) -> %
+--R eval : (%,%,%) -> % factor : % -> Factored %
+--R gcd : List % -> % gcd : (%,%) -> %
+--R ground : % -> Integer ground? : % -> Boolean
+--R hash : % -> SingleInteger latex : % -> String
+--R lcm : List % -> % lcm : (%,%) -> %
+--R leadingCoefficient : % -> Integer leadingMonomial : % -> %
+--R max : (%,%) -> % min : (%,%) -> %
+--R monomial? : % -> Boolean monomials : % -> List %
+--R one? : % -> Boolean prime? : % -> Boolean
+--R primitiveMonomials : % -> List % primitivePart : % -> %
+--R recip : % -> Union(%,"failed") reductum : % -> %
+--R retract : % -> Fraction Integer retract : % -> Integer
+--R sample : () -> % squareFree : % -> Factored %
+--R squareFreePart : % -> % unit? : % -> Boolean
+--R unitCanonical : % -> % zero? : % -> Boolean
+--R ?~=? : (%,%) -> Boolean
+--R ?*? : (NonNegativeInteger,%) -> %
+--R ?**? : (%,NonNegativeInteger) -> %
+--R D : (%,List OrderedVariableList [x,y],List NonNegativeInteger) -> %
+--R D : (%,List OrderedVariableList [x,y]) -> %
+--R D : (%,OrderedVariableList [x,y],NonNegativeInteger) -> %
+--R D : (%,OrderedVariableList [x,y]) -> %
+--R ?^? : (%,NonNegativeInteger) -> %
+--R binomThmExpt : (%,%,NonNegativeInteger) -> %
+--R characteristic : () -> NonNegativeInteger
+--R charthRoot : % -> Union(%,"failed")
+--R coefficient : (%,IndexedExponents OrderedVariableList [x,y]) -> Integer
+--R coefficient : (%,List OrderedVariableList [x,y],List NonNegativeInteger)
-> %
+--R coefficient : (%,OrderedVariableList [x,y],NonNegativeInteger) -> %
+--R coerce : OrderedVariableList [x,y] -> %
+--R conditionP : Matrix % -> Union(Vector %,"failed")
+--R content : (%,OrderedVariableList [x,y]) -> %
+--R degree : % -> IndexedExponents OrderedVariableList [x,y]
+--R degree : (%,List OrderedVariableList [x,y]) -> List NonNegativeInteger
+--R degree : (%,OrderedVariableList [x,y]) -> NonNegativeInteger
+--R differentiate : (%,List OrderedVariableList [x,y],List NonNegativeInteger)
-> %
+--R differentiate : (%,List OrderedVariableList [x,y]) -> %
+--R differentiate : (%,OrderedVariableList [x,y],NonNegativeInteger) -> %
+--R differentiate : (%,OrderedVariableList [x,y]) -> %
+--R discriminant : (%,OrderedVariableList [x,y]) -> %
+--R eval : (%,List OrderedVariableList [x,y],List Integer) -> %
+--R eval : (%,List OrderedVariableList [x,y],List %) -> %
+--R eval : (%,OrderedVariableList [x,y],Integer) -> %
+--R eval : (%,OrderedVariableList [x,y],%) -> %
+--R exquo : (%,Integer) -> Union(%,"failed")
+--R exquo : (%,%) -> Union(%,"failed")
+--R factorPolynomial : SparseUnivariatePolynomial % -> Factored
SparseUnivariatePolynomial %
+--R factorSquareFreePolynomial : SparseUnivariatePolynomial % -> Factored
SparseUnivariatePolynomial %
+--R gcdPolynomial : (SparseUnivariatePolynomial %,SparseUnivariatePolynomial
%) -> SparseUnivariatePolynomial %
+--R isExpt : % -> Union(Record(var: OrderedVariableList [x,y],exponent:
NonNegativeInteger),"failed")
+--R isPlus : % -> Union(List %,"failed")
+--R isTimes : % -> Union(List %,"failed")
+--R mainVariable : % -> Union(OrderedVariableList [x,y],"failed")
+--R map : ((Integer -> Integer),%) -> %
+--R mapExponents : ((IndexedExponents OrderedVariableList [x,y] ->
IndexedExponents OrderedVariableList [x,y]),%) -> %
+--R minimumDegree : % -> IndexedExponents OrderedVariableList [x,y]
+--R minimumDegree : (%,List OrderedVariableList [x,y]) -> List
NonNegativeInteger
+--R minimumDegree : (%,OrderedVariableList [x,y]) -> NonNegativeInteger
+--R monicDivide : (%,%,OrderedVariableList [x,y]) -> Record(quotient:
%,remainder: %)
+--R monomial : (Integer,IndexedExponents OrderedVariableList [x,y]) -> %
+--R monomial : (%,List OrderedVariableList [x,y],List NonNegativeInteger) -> %
+--R monomial : (%,OrderedVariableList [x,y],NonNegativeInteger) -> %
+--R multivariate : (SparseUnivariatePolynomial Integer,OrderedVariableList
[x,y]) -> %
+--R multivariate : (SparseUnivariatePolynomial %,OrderedVariableList [x,y]) ->
%
+--R numberOfMonomials : % -> NonNegativeInteger
+--R patternMatch : (%,Pattern Float,PatternMatchResult(Float,%)) ->
PatternMatchResult(Float,%)
+--R patternMatch : (%,Pattern Integer,PatternMatchResult(Integer,%)) ->
PatternMatchResult(Integer,%)
+--R pomopo! : (%,Integer,IndexedExponents OrderedVariableList [x,y],%) -> %
+--R primitivePart : (%,OrderedVariableList [x,y]) -> %
+--R reducedSystem : Matrix % -> Matrix Integer
+--R reducedSystem : (Matrix %,Vector %) -> Record(mat: Matrix Integer,vec:
Vector Integer)
+--R resultant : (%,%,OrderedVariableList [x,y]) -> %
+--R retract : % -> OrderedVariableList [x,y]
+--R retractIfCan : % -> Union(Fraction Integer,"failed")
+--R retractIfCan : % -> Union(Integer,"failed")
+--R retractIfCan : % -> Union(OrderedVariableList [x,y],"failed")
+--R solveLinearPolynomialEquation : (List SparseUnivariatePolynomial
%,SparseUnivariatePolynomial %) -> Union(List SparseUnivariatePolynomial
%,"failed")
+--R squareFreePolynomial : SparseUnivariatePolynomial % -> Factored
SparseUnivariatePolynomial %
+--R subtractIfCan : (%,%) -> Union(%,"failed")
+--R totalDegree : (%,List OrderedVariableList [x,y]) -> NonNegativeInteger
+--R totalDegree : % -> NonNegativeInteger
+--R unitNormal : % -> Record(unit: %,canonical: %,associate: %)
+--R univariate : % -> SparseUnivariatePolynomial Integer
+--R univariate : (%,OrderedVariableList [x,y]) -> SparseUnivariatePolynomial %
+--R variables : % -> List OrderedVariableList [x,y]
+--R
+--R
+--E 67
--- caching nullary functions
+@
+Caching nullary functions
+<<*>>=
+)clear all
+--S 68
)set fun cache all
+--R
+--R In general, interpreter functions will cache all values.
+--E 68
+--S 69
u == 1
+--R
+--R Type:
Void
+--E 69
+--S 70
u
+--R
+--R Compiling body of rule u to compute value of type PositiveInteger
+--R u will cache all previously computed values.
+--R
+--R (2) 1
+--R Type:
PositiveInteger
+--E 70
+
+--S 71
)set fun cache 0
+--R
+--R In general, functions will cache no returned values.
+--E 71
--- Interpreter Only mode on collects
--- Fixed by SCM on 3/1/91
+@
+Interpreter Only mode on collects. Fixed by SCM on 3/1/91
+<<*>>=
+)clear all
+--S 72
factorp: (UP(x,INT),PositiveInteger,PositiveInteger) -> List(UP(x,INT))
+--R
+--R Type:
Void
+--E 72
+
+--S 73
factorp(poly,p,e) ==
ppoly:UP(x,PF p):=poly
pl := [rec.factor for rec in factors factor ppoly]
facl:=pl::List(UP(x,INT))
+--R
+--R Type:
Void
+--E 73
+--S 74
factorp(x**2+x+5,7,1)
+--R
+--R Cannot compile the declaration for ppoly because its (possible
+--R partial) type contains a local variable.
+--R AXIOM will attempt to step through and interpret the code.
+--R Compiling function factorp with type (UnivariatePolynomial(x,Integer
+--R ),PositiveInteger,PositiveInteger) -> List UnivariatePolynomial(x
+--R ,Integer)
+--R
+--R (3) [x + 2,x + 6]
+--R Type: List
UnivariatePolynomial(x,Integer)
+--E 74
+@
+Using "by" with segments. Fixed by SCM on 2/14/91
+<<*>>=
+)clear all
--- using "by" with segments
--- Fixed by SCM on 2/14/91
-
-)cl all
-
+--S 75
b:= 1..10
-for i in b by 2 repeat output i
+--R
+--R
+--R (1) 1..10
+--R Type: Segment
PositiveInteger
+--E 75
--- DMP resolve bug
--- Fixed by SCM 3/7/91
+--S 76
+for i in b by 2 repeat output i
+--R
+--R 1
+--R 3
+--R 5
+--R 7
+--R 9
+--R Type:
Void
+--E 76
-)cl all
+@
+DMP resolve bug. Fixed by SCM 3/7/91
+<<*>>=
+)clear all
+--S 77
macro RN == FRAC INT
+--R
+--R Type:
Void
+--E 77
+
+--S 78
a51:=x+y+z+t+u;
+--R
+--R
+--R Type: Polynomial
Integer
+--E 78
+
+--S 79
a52:=x*y+y*z+z*t+x*u+t*u;
+--R
+--R
+--R Type: Polynomial
Integer
+--E 79
+
+--S 80
a53:=x*y*z+y*z*t+x*y*u+x*t*u+z*t*u;
+--R
+--R
+--R Type: Polynomial
Integer
+--E 80
+
+--S 81
a54:=x*y*z*t+x*y*z*u+x*y*t*u+x*z*t*u+y*z*t*u;
+--R
+--R
+--R Type: Polynomial
Integer
+--E 81
+
+--S 82
a55:=x*y*z*t*u-1;
+--R
+--R
+--R Type: Polynomial
Integer
+--E 82
+--S 83
arnborg5: List HDMP([x,y,z,t,u],RN):=[a51,a52,a53,a54,a55];
-arnborg5l: List DMP([x,y,z,t,u],RN):=[a51,a52,a53,a54,a55];
+--R
+--R
+--RType: List
HomogeneousDistributedMultivariatePolynomial([x,y,z,t,u],Fraction Integer)
+--E 83
--- construct in interpret-only mode
--- Fixed by SCM on 3/7/91
+--S 84
+arnborg5l: List DMP([x,y,z,t,u],RN):=[a51,a52,a53,a54,a55];
+--R
+--R
+--R Type: List DistributedMultivariatePolynomial([x,y,z,t,u],Fraction
Integer)
+--E 84
-)cl all
+@
+Construct in interpret-only mode. Fixed by SCM on 3/7/91
+<<*>>=
+)clear all
+--S 85
factorp(poly,p,e) ==
[rec.factor for rec in factors factor (poly::UP(x, PF p))]::List UP(x, INT)
+--R
+--R Type:
Void
+--E 85
+--S 86
factorp(x**2+x+5,7,1)
+--R
+--R Cannot compile conversion for types involving local variables. In
+--R particular, could not compile the expression involving :: UP(x,PF
+--R #2)
+--R AXIOM will attempt to step through and interpret the code.
+--R
+--R (2) [x + 2,x + 6]
+--R Type: List
UnivariatePolynomial(x,Integer)
+--E 86
--- return in interpret-only mode
--- fixed by SCM 3/11/91
-
-)cl all
+@
+Return in interpret-only mode. fixed by SCM 3/11/91
+<<*>>=
+)clear all
+--S 87
f (x) ==
y: PF x := 1
x = 3 => return x
x = 4 => return(-x)
(x+1)
+--R
+--R Type:
Void
+--E 87
+--S 88
f 3
+--R
+--R Cannot compile the declaration for y because its (possible partial)
+--R type contains a local variable.
+--R AXIOM will attempt to step through and interpret the code.
+--R
+--R (2) 3
+--R Type:
PositiveInteger
+--E 88
--- incorrect handling of type of returns
--- fixed by SCM 3/11/91
-
-)cl all
+@
+Incorrect handling of type of returns. fixed by SCM 3/11/91
+<<*>>=
+)clear all
+--S 89
f (x) ==
x = 3 => return x
x = 4 => return(-x)
return (x+1)
+--R
+--R Type:
Void
+--E 89
+--S 90
f 3
+--R
+--R Compiling function f with type PositiveInteger -> Integer
+--R
+--R (2) 3
+--R Type:
PositiveInteger
+--E 90
--- SquareMatrix coercion bug
--- Fixed by SCM on 4/3/91
-
-)cl all
+@
+SquareMatrix coercion bug. Fixed by SCM on 4/3/91
+<<*>>=
+)clear all
+--S 91
s:SQMATRIX(2, INT) := matrix [[1,2],[2,3]]
+--R
+--R
+--R +1 2+
+--R (1) | |
+--R +2 3+
+--R Type:
SquareMatrix(2,Integer)
+--E 91
+
+--S 92
s::SQMATRIX(2, FRAC INT)
+--R
+--R
+--R +1 2+
+--R (2) | |
+--R +2 3+
+--R Type: SquareMatrix(2,Fraction
Integer)
+--E 92
+@
+SquareMatric resolve bug
+<<*>>=
+)clear all
--- SquareMatric resolve bug
-
-)cl all
+--S 93
Mat := SquareMatrix(2, Polynomial Integer)
+--R
+--R
+--R (1) SquareMatrix(2,Polynomial Integer)
+--R Type:
Domain
+--E 93
+
+--S 94
s:Mat := matrix [[ 2*x + 1, x], [x, 1]]
+--R
+--R
+--R +2x + 1 x+
+--R (2) | |
+--R + x 1+
+--R Type: SquareMatrix(2,Polynomial
Integer)
+--E 94
+
+--S 95
s**3
+--R
+--R
+--R + 3 2 3 2 +
+--R |12x + 15x + 6x + 1 5x + 6x + 3x|
+--R (3) | |
+--R | 3 2 3 2 |
+--R + 5x + 6x + 3x 2x + 3x + 1 +
+--R Type: SquareMatrix(2,Polynomial
Integer)
+--E 95
+
+--S 96
%::Polynomial(?)
+--R
+--R
+--R +12 5+ 3 +15 6+ 2 +6 3+ +1 0+
+--R (4) | |x + | |x + | |x + | |
+--R +5 2+ +6 3+ +3 0+ +0 1+
+--R Type: Polynomial
SquareMatrix(2,Integer)
+--E 96
--- parsing bug
--- Fixed by BURGE on 4/18/91
+@
+Parsing bug. Fixed by BURGE on 4/18/91
+<<*>>=
+)clear all
-)cl all
+--S 97
-2**2 -- Should return -4
+--R
+--R
+--R (1) - 4
+--R Type:
Integer
+--E 97
--- # in constructor arguemnt list bug
--- Fixed by SCM on 4/9/91
+@
+\# in constructor arguemnt list bug. Fixed by SCM on 4/9/91
+<<*>>=
+)clear all
-)cl all
+--S 98
f: DMP([x,y], INT) := x**2-y**2
+--R
+--R
+--R 2 2
+--R (1) x - y
+--R Type:
DistributedMultivariatePolynomial([x,y],Integer)
+--E 98
+
+--S 99
coefficient(f, degree f)
+--R
+--R
+--R (2) 1
+--R Type:
PositiveInteger
+--E 99
--- retract from EXPR to POLY
--- fixed by SCM and SUTOR on 5/1/91
+@
+Retract from EXPR to POLY. fixed by SCM and SUTOR on 5/1/91
+<<*>>=
+)clear all
-)cl all
+--S 100
x+1::EXPR INT
+--R
+--R
+--R (1) x + 1
+--R Type: Expression
Integer
+--E 100
+
+--S 101
%::POLY INT
+--R
+--R
+--R (2) x + 1
+--R Type: Polynomial
Integer
+--E 101
--- fixed by SCM in May
+@
+Fixed by SCM in May
+<<*>>=
+)clear all
-)cl all
+--S 102
solve([[1,2],[2,3]],[-2,3])
+--R
+--R
+--R (1) [particular= [12,- 7],basis= [[0,0]]]
+--RType: Record(particular: Union(Vector Fraction Integer,"failed"),basis:
List Vector Fraction Integer)
+--E 102
+@
+Fixed by several people over a period of time
+<<*>>=
+)clear all
--- fixed by several people over a period of time
-)cl all
-
+--S 103
eval(m**2, m=[[1,2],[2,3]])
+--R
+--R
+--R +5 8 +
+--R (1) | |
+--R +8 13+
+--R Type: Polynomial
SquareMatrix(2,Integer)
+--E 103
--- filtering various illegal declarations
-
-)cl all
+@
+Filtering various illegal declarations
+<<*>>=
+)clear all
)set mes test off
+
+--S 104
r: Ring
+--R
+--R
+--R Ring is a category, not a domain, and declarations require domains.
+--E 104
+
+--S 105
w: RF INT
-)set mes test on
+--R
+--R
+--R RationalFunction Integer is a package, not a domain, and
+--R declarations require domains.
+--E 105
--- Correct representation of length 1 records
+)set mes test on
-)cl all
+@
+Correct representation of length 1 records
+<<*>>=
+)clear all
+--S 106
r:Record(a: INT) := [1]
+--R
+--R
+--R (1) [a= 1]
+--R Type: Record(a:
Integer)
+--E 106
--- Fast generation of POLY FLOAT graphics code
+@
+Fast generation of POLY FLOAT graphics code
+<<*>>=
+)clear all
-)time on
+--S 107
p: POLY FLOAT := (x-1)**30
-draw(p, x=-1..1)
-
-)time )off
+--R
+--R
+--R (1)
+--R 30 29 28 27 26 25
+--R x - 30.0 x + 435.0 x - 4060.0 x + 27405.0 x - 142506.0 x
+--R +
+--R 24 23 22 21
+--R 593775.0 x - 2035800.0 x + 5852925.0 x - 14307150.0 x
+--R +
+--R 20 19 18 17
+--R 30045015.0 x - 54627300.0 x + 86493225.0 x - 1 19759850.0 x
+--R +
+--R 16 15 14
13
+--R 1 45422675.0 x - 1 55117520.0 x + 1 45422675.0 x - 1 19759850.0 x
+--R +
+--R 12 11 10 9
+--R 86493225.0 x - 54627300.0 x + 30045015.0 x - 14307150.0 x
+--R +
+--R 8 7 6 5 4
+--R 5852925.0 x - 2035800.0 x + 593775.0 x - 142506.0 x + 27405.0 x
+--R +
+--R 3 2
+--R - 4060.0 x + 435.0 x - 30.0 x + 1.0
+--R Type: Polynomial
Float
+--E 107
+
+--draw(p, x=-1..1)
--- Case broken in interpreter
--- fixed by SCM in early 1991
-
-)cl all
+@
+Case broken in interpreter. fixed by SCM in early 1991
+<<*>>=
+)clear all
+--S 108
sayBranch x == _
if x case INT then output "Integer Branch" _
else if x case STRING then output "String Branch" _
else if x case FLOAT then output "Float Branch" _
else output "don't know"
+--R
+--R Type:
Void
+--E 108
+--S 109
x:Union(INT,STRING,FLOAT)
+--R
+--R Type:
Void
+--E 109
+
+--S 110
x:=3
-sayBranch(x)
+--R
+--R
+--R (3) 3
+--R Type:
Union(Integer,...)
+--E 110
--- bug in evaluateType
--- fixed by SCM in May 1991
+--S 111
+sayBranch(x)
+--R
+--R
+--RDaly Bug
+--R case is only used for Unions and the object on the left-hand side
+--R does not belong to a union.
+--E 111
-)cl all
+@
+Bug in evaluateType. fixed by SCM in May 1991
+<<*>>=
+)clear all
+--S 112
RFI := FRAC POLY INT
+--R
+--R
+--R (1) Fraction Polynomial Integer
+--R Type:
Domain
+--E 112
+
+--S 113
g:DMP([x,y], RFI) := a**2*x**2/b**2 - c**2*y**2/d**2
+--R
+--R
+--R 2 2
+--R a 2 c 2
+--R (2) -- x - -- y
+--R 2 2
+--R b d
+--R Type: DistributedMultivariatePolynomial([x,y],Fraction Polynomial
Integer)
+--E 113
+
+--S 114
factor g
+--R
+--R
+--R 2
+--R a b c b c
+--R (3) -- (x - --- y)(x + --- y)
+--R 2 a d a d
+--R b
+--RType: Factored DistributedMultivariatePolynomial([x,y],Fraction Polynomial
Integer)
+--E 114
--- bug in resolveTTSpecial
--- Fixed by SCM 6/2/91
-
-)cl all
+@
+Bug in resolveTTSpecial. Fixed by SCM 6/2/91
+<<*>>=
+)clear all
+--S 115
f(u:DoubleFloat, v:DoubleFloat):DoubleFloat == u+v
+--R
+--R Function declaration f : (DoubleFloat,DoubleFloat) -> DoubleFloat
+--R has been added to workspace.
+--R Type:
Void
+--E 115
+
+--S 116
g(u:DoubleFloat, v:DoubleFloat):DoubleFloat == sin(u+v)
+--R
+--R Function declaration g : (DoubleFloat,DoubleFloat) -> DoubleFloat
+--R has been added to workspace.
+--R Type:
Void
+--E 116
+
+--S 117
h(u:DoubleFloat, v:DoubleFloat):DoubleFloat == u+cos(v)
-draw(surface(f,g,h), 0..4, 0..2*%pi)
+--R
+--R Function declaration h : (DoubleFloat,DoubleFloat) -> DoubleFloat
+--R has been added to workspace.
+--R Type:
Void
+--E 117
--- check for package calling from categories
--- fixed by SCM 6/4/91
+--draw(surface(f,g,h), 0..4, 0..2*%pi)
-)cl all
+@
+Check for package calling from categories. fixed by SCM 6/4/91
+<<*>>=
+)clear all
)set mes test off
+
+--S 118
(1+1)$Ring
-)set mes test on
+--R
+--R
+--R The right-hand side of the $ operator must be a package or domain
+--R name, but Ring is a category.
+--E 118
--- UnivariateSeries coercions
--- Fixed by SCM 6/20/91
+)set mes test on
-)cl all
+@
+UnivariateSeries coercions. Fixed by SCM 6/20/91
+<<*>>=
+)clear all
+--S 119
s := series(sin(a*x), x=0)
+--R
+--R
+--R 3 5 7 9 11
+--R a 3 a 5 a 7 a 9 a 11 12
+--R (1) a x - -- x + --- x - ---- x + ------ x - -------- x + O(x )
+--R 6 120 5040 362880 39916800
+--R Type: UnivariatePuiseuxSeries(Expression
Integer,x,0)
+--E 119
+
+--S 120
s - a*x
+--R
+--R
+--R (2)
+--R 3 5 7 9 11 13
+--R a 3 a 5 a 7 a 9 a 11 a 13
+--R - -- x + --- x - ---- x + ------ x - -------- x + ---------- x
+--R 6 120 5040 362880 39916800 6227020800
+--R +
+--R 14
+--R O(x )
+--R Type: UnivariatePuiseuxSeries(Expression
Integer,x,0)
+--E 120
+
+--S 121
s - sin(a*x)
+--R
+--R
+--R 21
+--R (3) O(x )
+--R Type: UnivariatePuiseuxSeries(Expression
Integer,x,0)
+--E 121
--- Complex & AlgebraicNumber coercions
--- fixed by SCM 6/91
-
-)cl all
+@
+Complex & AlgebraicNumber coercions. fixed by SCM 6/91
+<<*>>=
+)clear all
+--S 122
sin %i
+--R
+--R
+--R (1) sin(%i)
+--R Type: Expression Complex
Integer
+--E 122
+
+--S 123
sin sqrt 2
+--R
+--R
+--R +-+
+--R (2) sin(\|2 )
+--R Type: Expression
Integer
+--E 123
+
+--S 124
%i*sqrt(2)
+--R
+--R
+--R +-+
+--R (3) %i\|2
+--R Type: Expression Complex
Integer
+--E 124
+
+--S 125
sin(%i*sqrt 2)
+--R
+--R
+--R +-+
+--R (4) sin(%i\|2 )
+--R Type: Expression Complex
Integer
+--E 125
+
+--S 126
%i * sin(x)
+--R
+--R
+--R (5) %i sin(x)
+--R Type: Expression Complex
Integer
+--E 126
+
+--S 127
sin(x/sqrt(2))
+--R
+--R
+--R +-+
+--R x\|2
+--R (6) sin(-----)
+--R 2
+--R Type: Expression
Integer
+--E 127
--- bug in resolve
--- fixed by SCM 8/12/91
+@
+Bug in resolve. fixed by SCM 8/12/91
+<<*>>=
+)clear all
-)cl all
+)set msg test off
-)set test msg off
+--S 128
primaryDecomp xx
-)set test msg on
+--R
+--R There are 1 exposed and 0 unexposed library operations named
+--R primaryDecomp having 1 argument(s) but none was determined to be
+--R applicable. Use HyperDoc Browse, or issue
+--R )display op primaryDecomp
+--R to learn more about the available operations. Perhaps
+--R package-calling the operation or using coercions on the arguments
+--R will allow you to apply the operation.
+--R
+--RDaly Bug
+--R Cannot find a definition or applicable library operation named
+--R primaryDecomp with argument type(s)
+--R Variable xx
+--R
+--R Perhaps you should use "@" to indicate the required return type,
+--R or "$" to specify which version of the function you need.
+--E 128
+
+)set msg test on
+@
+Functions with ADEFs were broken. fixed by SCM 8/9/91
+<<*>>=
+)clear all
--- functions with ADEFs were broken
--- fixwd by SCM 8/9/91
-
-)cl all
-
+--S 129
f l ==
reduce((x,y) +-> l.1 + x + y, l)
+--R
+--R Type:
Void
+--E 129
+--S 130
f [10,2,53]
-
+--R
+--R Compiling function f with type List PositiveInteger ->
+--R PositiveInteger
+--R
+--R (2) 85
+--R Type:
PositiveInteger
+--E 130
+
+--S 131
g l ==
(x:INT):INT +-> l.x
+--R
+--R Type:
Void
+--E 131
+--S 132
w := g [23,1,341,12] ;
-
+--R
+--R Compiling function g with type List PositiveInteger -> (Integer ->
+--R Integer)
+--R
+--R Type: (Integer ->
Integer)
+--E 132
+
+--S 133
w(1) + w(3)
--- w(-1) removed tpd; causes testing to crash
+--R
+--R
+--R (5) 364
+--R Type:
PositiveInteger
+--E 133
+
+--S 134
+w(-1)
+--R
+--R
+--RDaly Bug
+--R >> Error detected within library code:
+--R index out of range
+--R
+--R Continuing to read the file...
+--R
+--E 134
--- coerces RN to PF and POLY to EXPR
--- fixed by SCM 8/9/91
-
-)cl all
+@
+Coerces RN to PF and POLY to EXPR. fixed by SCM 8/9/91
+<<*>>=
+)clear all
+--S 135
a := 2/3
+--R
+--R
+--R 2
+--R (1) -
+--R 3
+--R Type: Fraction
Integer
+--E 135
+
)set mes test off
+
+--S 136
a::PF 3
+--R
+--R
+--R Division by zero on conversion to GaloisField.
+--E 136
+
)set mes test on
+--S 137
b := x+1
-b:: EXPR FLOAT
-
--- minivector use in coercion functions
+--R
+--R
+--R (2) x + 1
+--R Type: Polynomial
Integer
+--E 137
-)cl all
+--S 138
+b:: EXPR FLOAT
+--R
+--R
+--R (3) x + 1.0
+--R Type: Expression
Float
+--E 138
+@
+Minivector use in coercion functions.
+<<*>>=
+)clear all
+
+--S 139
symbol(s:Symbol,i:Integer):Symbol ==
st0:String:= convert(i)
st0:= concat(string(s),st0)
st0::Symbol
+--R
+--R Function declaration symbol : (Symbol,Integer) -> Symbol has been
+--R added to workspace.
+--R Type:
Void
+--E 139
+--S 140
f(a,b) == symbol(a,b)
+--R
+--R Type:
Void
+--E 140
+--S 141
f('abc,3)
+--R
+--R Compiling function symbol with type (Symbol,Integer) -> Symbol
+--R Compiling function f with type (Variable abc,PositiveInteger) ->
+--R Symbol
+--R
+--R (3) abc3
+--R Type:
Symbol
+--E 141
--- coercing undeclared maps to Mapping types
--- fixed by SCM 9/3/91
-)cl all
+@
+Coercing undeclared maps to Mapping types. fixed by SCM 9/3/91
+<<*>>=
+)clear all
+--S 142
f := operator 'f
+--R
+--R
+--R (1) f
+--R Type:
BasicOperator
+--E 412
+
+--S 143
y := f(x)
+--R
+--R
+--R (2) f(x)
+--R Type: Expression
Integer
+--E 143
+
+--S 144
foo(u) == sin(u)
-eval(y, 'f, foo)
+--R
+--R Type:
Void
+--E 144
--- package calling constants
--- fixed by SCM 9/3/91
+--S 145
+eval(y, 'f, foo)
+--R
+--R There are 2 exposed and 6 unexposed library operations named sin
+--R having 1 argument(s) but none was determined to be applicable.
+--R Use HyperDoc Browse, or issue
+--R )display op sin
+--R to learn more about the available operations. Perhaps
+--R package-calling the operation or using coercions on the arguments
+--R will allow you to apply the operation.
+--R Compiling function foo with type Expression Integer -> Expression
+--R Integer
+--R
+--R (4) sin(x)
+--R Type: Expression
Integer
+--E 145
-)cl all
+@
+Package calling constants. fixed by SCM 9/3/91
+<<*>>=
+)clear all
+--S 146
init()$(PF 3)
+--R
+--R
+--R (1) 0
+--R Type: PrimeField
3
+--E 146
--- passing ADEFs to functions which require specific mapping types
-
-draw((x,y) +-> x**2 - y**2, -1..1, -1..1)
+@
+Passing ADEFs to functions which require specific mapping types.
+<<*>>=
+)clear all
--- DP bug. Don't know where this came from, but its fixed
--- DP makes problems:
+--draw((x,y) +-> x**2 - y**2, -1..1, -1..1)
+@
+DP bug. Don't know where this came from, but its fixed. DP makes problems:
+<<*>>=
+)clear all
+--S 147
dmp := DMP([u1,u2,u3],Fraction INT)
+--R
+--R
+--R (1) DistributedMultivariatePolynomial([u1,u2,u3],Fraction Integer)
+--R Type:
Domain
+--E 147
+
+--S 148
p : dmp := 2*u1**4*u2*u3
+--R
+--R
+--R 4
+--R (2) 2u1 u2 u3
+--R Type: DistributedMultivariatePolynomial([u1,u2,u3],Fraction
Integer)
+--E 148
+
+--S 149
e1 := degree p
--- the following doesn't work
+--R
+--R
+--R (3) [4,1,1]
+--R Type:
DirectProduct(3,NonNegativeInteger)
+--E 149
+
+--S 150
e2 : DirectProduct(3,NonNegativeInteger) := e1
+--R
+--R
+--R (4) [4,1,1]
+--R Type:
DirectProduct(3,NonNegativeInteger)
+--E 150
+
+--S 151
sup(e1,e1)
--- if you give to many infos to the Interpreter it has problems
+--R
+--R
+--R (5) [4,1,1]
+--R Type:
DirectProduct(3,NonNegativeInteger)
+--E 151
+
+@
+If you give to many infos to the Interpreter it has problems.
+<<*>>=
+
+--S 152
sup(e1,e1)$DirectProduct(3,NonNegativeInteger)
+--R
+--R
+--R (6) [4,1,1]
+--R Type:
DirectProduct(3,NonNegativeInteger)
+--E 152
--- Some other bug.
)clear all
+--S 153
sum:=0
+--R
+--R
+--R (1) 0
+--R Type:
NonNegativeInteger
+--E 153
+
+--S 154
m:=matrix [[1,2],[3,4]]
+--R
+--R
+--R +1 2+
+--R (2) | |
+--R +3 4+
+--R Type: Matrix
Integer
+--E 154
+
+--S 155
lastcol:=ncols(m)
+--R
+--R
+--R (3) 2
+--R Type:
PositiveInteger
+--E 155
+
+--S 156
for r in 1..nrows(m) repeat
-- interpreter having a value for "row" would cause it to hide
-- the system function
Row:=row(m,r)
for c in 1..lastcol repeat
sum:=sum+Row.c
-sum
-
+--R
+--R Type:
Void
+--E 156
--- interpOnly mode left things in an incosistent state if it failed twice
--- fixed by SCM
+--S 157
+sum
+--R
+--R
+--R (5) 10
+--R Type:
PositiveInteger
+--E 157
-)cl all
+@
+interpOnly mode left things in an incosistent state if it failed twice.
+fixed by SCM
+<<*>>=
+)clear all
+--S 158
splitPoly(f,var) ==
map(g +-> multivariate(g,var),monomials univariate(f,var))
+--R
+--R Type:
Void
+--E 158
+--S 159
g:=sin(x)+cos(x)
+--R
+--R
+--R (2) sin(x) + cos(x)
+--R Type: Expression
Integer
+--E 159
+
+--S 160
k:=kernels(g).1
+--R
+--R
+--R (3) sin(x)
+--R Type: Kernel Expression
Integer
+--E 160
)set mes test off
+
+--S 161
splitPoly([g],k) -- this is an incorrect call
+--R
+--R There are 4 exposed and 1 unexposed library operations named
+--R univariate having 2 argument(s) but none was determined to be
+--R applicable. Use HyperDoc Browse, or issue
+--R )display op univariate
+--R to learn more about the available operations. Perhaps
+--R package-calling the operation or using coercions on the arguments
+--R will allow you to apply the operation.
+--R Cannot find a definition or applicable library operation named
+--R univariate with argument type(s)
+--R List Expression Integer
+--R Kernel Expression Integer
+--R
+--R Perhaps you should use "@" to indicate the required return type,
+--R or "$" to specify which version of the function you need.
+--R AXIOM will attempt to step through and interpret the code.
+--R There are 4 exposed and 1 unexposed library operations named
+--R univariate having 2 argument(s) but none was determined to be
+--R applicable. Use HyperDoc Browse, or issue
+--R )display op univariate
+--R to learn more about the available operations. Perhaps
+--R package-calling the operation or using coercions on the arguments
+--R will allow you to apply the operation.
+--R
+--R Cannot find a definition or applicable library operation named
+--R univariate with argument type(s)
+--R List Expression Integer
+--R Kernel Expression Integer
+--R
+--R Perhaps you should use "@" to indicate the required return type,
+--R or "$" to specify which version of the function you need.
+--E 161
+
)set mes test on
+
+--S 162
splitPoly(numer g,k) -- this is a correct call
+--R
+--R Compiling function splitPoly with type (SparseMultivariatePolynomial
+--R (Integer,Kernel Expression Integer),Kernel Expression Integer)
+--R -> List SparseMultivariatePolynomial(Integer,Kernel Expression
+--R Integer)
+--R
+--R (4) [sin(x),cos(x)]
+--R Type: List SparseMultivariatePolynomial(Integer,Kernel Expression
Integer)
+--E 162
--- scoping of lambda variables
--- fixed by SCM in March, 1992
+@
+Scoping of lambda variables. fixed by SCM in March, 1992
+<<*>>=
+)clear all
-)cl all
+--S 163
f x ==
g := (y:DoubleFloat):DoubleFloat +-> y+x
output(y+1)
g(x)
+--R
+--R Type:
Void
+--E 163
+--S 164
f 3
+--R
+--R Compiling function f with type PositiveInteger -> DoubleFloat
+--R y + 1
+--R
+--R (2) 6.
+--R Type:
DoubleFloat
+--E 164
--- coercing undeclared interpreter function to mapping type with
--- target which need to be coerced.
--- fixed by SCM in March, 1992
-
-)cl all
+@
+Coercing undeclared interpreter function to mapping type with
+target which need to be coerced.
+fixed by SCM in March, 1992
+<<*>>=
+)clear all
+--S 165
f x == 1/factorial(x)
+--R
+--R Type:
Void
+--E 165
+--S 166
series(f, x=0)
+--R
+--R Compiling function f with type Integer -> Expression Integer
+--R
+--R (2)
+--R 1 2 1 3 1 4 1 5 1 6 1 7 1 8
+--R 1 + x + - x + - x + -- x + --- x + --- x + ---- x + ----- x
+--R 2 6 24 120 720 5040 40320
+--R +
+--R 1 9 1 10 11
+--R ------ x + ------- x + O(x )
+--R 362880 3628800
+--R Type: UnivariatePuiseuxSeries(Expression
Integer,x,0)
+--E 166
--- rule dependencies with dependencies on the operator postion
+@
+Rule dependencies with dependencies on the operator position.
+<<*>>=
+)clear all
-)cl all
+--S 167
node_a == i1+i2+i3-i5+i6=0
+--R
+--R Type:
Void
+--E 167
+
+--S 168
node_b == -i2-i3+i4-i6=0
+--R
+--R Type:
Void
+--E 168
+
+--S 169
i1 == va/r1
+--R
+--R Type:
Void
+--E 169
+
+--S 170
i2 == (va-vb)/r2
+--R
+--R Type:
Void
+--E 170
+
+--S 171
i3 == (va-vb)/r3
+--R
+--R Type:
Void
+--E 171
+
+--S 172
i4 == vb/r4
+--R
+--R Type:
Void
+--E 172
+
+--S 173
node_a
+--R
+--R Compiling body of rule i1 to compute value of type Fraction
+--R Polynomial Integer
+--R Compiling body of rule i2 to compute value of type Fraction
+--R Polynomial Integer
+--R Compiling body of rule i3 to compute value of type Fraction
+--R Polynomial Integer
+--R Compiling body of rule nodea to compute value of type Equation
+--R Fraction Polynomial Integer
+--R
+--R (- r1 r3 - r1 r2)vb + ((r2 + r1)r3 + r1 r2)va + (i6 - i5)r1 r2 r3
+--R (7) -----------------------------------------------------------------= 0
+--R r1 r2 r3
+--R Type: Equation Fraction Polynomial
Integer
+--E 173
+
+--S 174
node_b
+--R
+--R Compiling body of rule i4 to compute value of type Fraction
+--R Polynomial Integer
+--R Compiling body of rule nodeb to compute value of type Equation
+--R Fraction Polynomial Integer
+--R
+--R ((r3 + r2)r4 + r2 r3)vb + (- r3 - r2)r4 va - i6 r2 r3 r4
+--R (8) --------------------------------------------------------= 0
+--R r2 r3 r4
+--R Type: Equation Fraction Polynomial
Integer
+--E 174
+
+--S 175
ans == solve([node_a,node_b],[va,vb]) -- (*)
+--R
+--R Type:
Void
+--E 175
+
+--S 176
x1 == rhs(ans.1.1)
+--R
+--R Type:
Void
+--E 176
+
+--S 177
x2 == rhs(ans.1.2)
+--R
+--R Type:
Void
+--E 177
+
+--S 178
x1 -- (**)
+--R
+--R Compiling body of rule ans to compute value of type List List
+--R Equation Fraction Polynomial Integer
+--R Compiling body of rule x1 to compute value of type Fraction
+--R Polynomial Integer
+--R
+--R (i5 r1 r3 + i5 r1 r2)r4 + (- i6 + i5)r1 r2 r3
+--R (12) ---------------------------------------------
+--R (r3 + r2)r4 + (r2 + r1)r3 + r1 r2
+--R Type: Fraction Polynomial
Integer
+--E 178
+
+--S 179
r1 == 2 -- (***)
+--R
+--R Compiled code for i1 has been cleared.
+--R Compiled code for nodea has been cleared.
+--R Compiled code for ans has been cleared.
+--R Compiled code for x1 has been cleared.
+--R Type:
Void
+--E 179
+
+--S 180
x1 -- (****)
+--R
+--R Compiling body of rule r1 to compute value of type PositiveInteger
+--R Compiling body of rule i1 to compute value of type Polynomial
+--R Fraction Integer
+--R Compiling body of rule nodea to compute value of type Equation
+--R Fraction Polynomial Integer
+--R Compiling body of rule ans to compute value of type List List
+--R Equation Fraction Polynomial Integer
+--R Compiling body of rule x1 to compute value of type Fraction
+--R Polynomial Integer
+--R
+--R (2i5 r3 + 2i5 r2)r4 + (- 2i6 + 2i5)r2 r3
+--R (14) ----------------------------------------
+--R (r3 + r2)r4 + (r2 + 2)r3 + 2r2
+--R Type: Fraction Polynomial
Integer
+--E 180
--- look for immediate data in operator position
--- fixed in March 1992 by SCM and RSS
+@
+Look for immediate data in operator position.
+fixed in March 1992 by SCM and RSS
+<<*>>=
+)clear all
+--S 181
"asd" "sdfsdf" "dfgdfg"
+--R
+--R
+--R (1) "asdsdfsdfdfgdfg"
+--R Type:
String
+--E 181
--- global variables that change type in a loop.
--- fixed by SCM
+@
+Global variables that change type in a loop.
+fixed by SCM
+<<*>>=
)clear all
+
+--S 182
s := 3.4
+--R
+--R
+--R (1) 3.4
+--R Type:
Float
+--E 182
+
+--S 183
while s > 1.0 repeat (s := 1/2; print s)
+--R
+--R 1
+--R -
+--R 2
+--R Type:
Void
+--E 183
+
+--S 184
s
+--R
+--R
+--R 1
+--R (3) -
+--R 2
+--R Type: Fraction
Integer
+--E 184
-)cl all
+)clear all
+--S 185
f x ==
free s
s := x
while s > 1.0 repeat (s := 1/2; print s)
s
+--R
+--R Type:
Void
+--E 185
+--S 186
f(3.4)
+--R
+--R Compiling function f with type Float -> Float
+--R Compiled code for f has been cleared.
+--R 0.5
+--R
+--R (2) 0.5
+--R Type:
Float
+--E 186
--- returns in sequences
--- fixed by SCM
+@
+Returns in sequences. fixed by SCM
+<<*>>=
+)clear all
+--S 187
t x ==
if x = 1 then (1; return [x])
return [2]
+--R
+--R Type:
Void
+--E 187
+--S 188
t 1
+--R
+--R Compiling function t with type PositiveInteger -> List
+--R PositiveInteger
+--R
+--R (2) [1]
+--R Type: List
PositiveInteger
+--E 188
+)spool
+)lisp (bye)
+
@
\eject
\begin{thebibliography}{99}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Axiom-developer] 20080816.02.tpd.patch add additional regression tests,
daly <=