aboutsummaryrefslogtreecommitdiff
path: root/src/algebra
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-06-21 03:16:39 +0000
committerdos-reis <gdr@axiomatics.org>2010-06-21 03:16:39 +0000
commitafaaaac2b55741bfe43099f819fd4a9592b1c022 (patch)
tree7a5bbd28009759b1c787d3df4c4ba5960cd11280 /src/algebra
parent640d839b4de4d0daf0dde00ba08eab6d264160ad (diff)
downloadopen-axiom-afaaaac2b55741bfe43099f819fd4a9592b1c022.tar.gz
Revert previous erroneous commit
Diffstat (limited to 'src/algebra')
-rw-r--r--src/algebra/d01routine.spad.pamphlet6
-rw-r--r--src/algebra/d01transform.spad.pamphlet2
-rw-r--r--src/algebra/forttyp.spad.pamphlet1
-rw-r--r--src/algebra/intfact.spad.pamphlet18
-rw-r--r--src/algebra/mts.spad.pamphlet79
-rw-r--r--src/algebra/multsqfr.spad.pamphlet3
-rw-r--r--src/algebra/naalgc.spad.pamphlet4
-rw-r--r--src/algebra/newpoly.spad.pamphlet18
-rw-r--r--src/algebra/permgrps.spad.pamphlet12
-rw-r--r--src/algebra/pfo.spad.pamphlet7
-rw-r--r--src/algebra/pgcd.spad.pamphlet5
-rw-r--r--src/algebra/sgcf.spad.pamphlet15
-rw-r--r--src/algebra/strap/BOOLEAN.lsp1
-rw-r--r--src/algebra/strap/CHAR.lsp1
-rw-r--r--src/algebra/strap/DFLOAT.lsp1
-rw-r--r--src/algebra/strap/ILIST.lsp1
-rw-r--r--src/algebra/strap/INT.lsp1
-rw-r--r--src/algebra/strap/ISTRING.lsp1
-rw-r--r--src/algebra/strap/LIST.lsp1
-rw-r--r--src/algebra/strap/NNI.lsp1
-rw-r--r--src/algebra/strap/OUTFORM.lsp1
-rw-r--r--src/algebra/strap/PI.lsp1
-rw-r--r--src/algebra/strap/SINT.lsp1
-rw-r--r--src/algebra/strap/SYMBOL.lsp1
-rw-r--r--src/algebra/strap/VECTOR.lsp1
-rw-r--r--src/algebra/syssolp.spad.pamphlet5
26 files changed, 85 insertions, 103 deletions
diff --git a/src/algebra/d01routine.spad.pamphlet b/src/algebra/d01routine.spad.pamphlet
index 66dbccf8..ee7b45fa 100644
--- a/src/algebra/d01routine.spad.pamphlet
+++ b/src/algebra/d01routine.spad.pamphlet
@@ -456,6 +456,8 @@ d01anfAnnaType(): NumericalIntegrationCategory == Result add
ext:Result := empty()$Result
weight:Union(Record(op:BOP,w:DF),"failed") :=
exprHasWeightCosWXorSinWX(args)
+ weight case "failed" =>
+ [0.0,"d01anf: A suitable weight has not been found", ext]
weight case Record(op:BOP,w:DF) =>
wany := coerce(weight)$AnyFunctions1(Record(op:BOP,w:DF))
ex:Record(key:S,entry:Any) := [d01anfextra@S,wany]
@@ -464,7 +466,6 @@ d01anfAnnaType(): NumericalIntegrationCategory == Result add
string(args.var)$S ")"
[getMeasure(R,d01anf@S)$RT,
"d01anf: The expression has a suitable weight:- " ws, ext]
- [0.0,"d01anf: A suitable weight has not been found", ext]
numericalIntegration(args:NIA,hints:Result) ==
a:INT
@@ -528,6 +529,8 @@ d01asfAnnaType(): NumericalIntegrationCategory == Result add
[0.0,"d01asf is not a suitable routine for infinite integrals",ext]
weight: Union(Record(op:BOP,w:DF),"failed") :=
exprHasWeightCosWXorSinWX(args)
+ weight case "failed" =>
+ [0.0,"d01asf: A suitable weight has not been found", ext]
weight case Record(op:BOP,w:DF) =>
wany := coerce(weight)$AnyFunctions1(Record(op:BOP,w:DF))
ex:Record(key:S,entry:Any) := [d01asfextra@S,wany]
@@ -536,7 +539,6 @@ d01asfAnnaType(): NumericalIntegrationCategory == Result add
string(args.var)$S ")"
[getMeasure(R,d01asf@S)$RT,
"d01asf: A suitable weight has been found:- " ws, ext]
- [0.0,"d01asf: A suitable weight has not been found", ext]
numericalIntegration(args:NIA,hints:Result) ==
i:INT
diff --git a/src/algebra/d01transform.spad.pamphlet b/src/algebra/d01transform.spad.pamphlet
index 29cd588f..f1949db4 100644
--- a/src/algebra/d01transform.spad.pamphlet
+++ b/src/algebra/d01transform.spad.pamphlet
@@ -127,6 +127,7 @@ d01TransformFunctionType():NumericalIntegrationCategory == Result add
measure(R:RoutinesTable,args:NIA) ==
Range:=rangeIsFinite(args)
+ Range case bothInfinite => split(1,args)
Range case upperInfinite =>
positive?(lo(args.range))$OCDF =>
transform(true,args)
@@ -135,7 +136,6 @@ d01TransformFunctionType():NumericalIntegrationCategory == Result add
negative?(hi(args.range))$OCDF =>
transform(false,args)
split(3,args)
- split(1,args)
numericalIntegration(args:NIA,hints:Result) ==
mainResult:DF := mainAbserr:DF := 0$DF
diff --git a/src/algebra/forttyp.spad.pamphlet b/src/algebra/forttyp.spad.pamphlet
index ca059628..c1800ccd 100644
--- a/src/algebra/forttyp.spad.pamphlet
+++ b/src/algebra/forttyp.spad.pamphlet
@@ -130,7 +130,6 @@ FortranScalarType() : exports == implementation where
s = upperDoubleSymbol => ["double precision"]$Rep
s = doubleComplexSymbol => ["double complex"]$Rep
s = upperDoubleCOmplexSymbol => ["double complex"]$Rep
- error "invalid as a Fortran Type"
coerce(s:String):$ ==
s = "real" => ["real"]$Rep
diff --git a/src/algebra/intfact.spad.pamphlet b/src/algebra/intfact.spad.pamphlet
index dc7629d1..8615cf7f 100644
--- a/src/algebra/intfact.spad.pamphlet
+++ b/src/algebra/intfact.spad.pamphlet
@@ -151,10 +151,8 @@ IntegerPrimesPackage(I:IntegerNumberSystem): with
nm1 := n-1
q := (nm1) quo two
- k: NonNegativeInteger := 1
- while not odd? q repeat
- q := q quo two
- k := k + 1
+ k : NonNegativeInteger
+ for k in 1.. while not odd? q repeat q := q quo two
-- q = (n-1) quo 2**k for largest possible k
n < JaeschkeLimit =>
@@ -459,10 +457,8 @@ IntegerFactorizationPackage(I): Exports == Implementation where
if n<d*d then
if n>1 then ls := concat!(ls, ["prime",n,1]$FFE)
return makeFR(1, ls)
- m: Integer := 0
- while zero?(n rem d) repeat
- n := n quo d
- m := m + 1
+ m : Integer
+ for m in 0.. while zero?(n rem d) repeat n := n quo d
if m>0 then ls := concat!(ls, ["prime",d,convert m]$FFE)
d := d+s
@@ -500,10 +496,8 @@ IntegerFactorizationPackage(I): Exports == Implementation where
insert!(x+y,a,c)
insert!(x-y,a,c)
(d := PollardSmallFactor20 n) case I =>
- m': NonNegativeInteger := 0
- while zero?(n rem d) repeat
- n := n quo d
- m' := m' + 1
+ m' : NonNegativeInteger
+ for m' in 0.. while zero?(n rem d) repeat n := n quo d
insert!(d, a, m' * c)
if n > 1 then insert!(n, a, c)
-- an elliptic curve factorization attempt should be made here
diff --git a/src/algebra/mts.spad.pamphlet b/src/algebra/mts.spad.pamphlet
index e83ae506..1f232c31 100644
--- a/src/algebra/mts.spad.pamphlet
+++ b/src/algebra/mts.spad.pamphlet
@@ -77,10 +77,6 @@ SparseMultivariateTaylorSeries(Coef,Var,SMP):_
Implementation ==> PS add
Rep := StS -- Below we use the fact that Rep of PS is Stream SMP.
- -- FIXME: These come for 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
@@ -191,40 +187,43 @@ SparseMultivariateTaylorSeries(Coef,Var,SMP):_
map(differentiate(#1,v),rst s)
if Coef has Algebra Fraction Integer then
- (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
+
+ 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
intsmp(v:Var,p: SMP): SMP ==
up := univariate(p,v)
@@ -273,7 +272,9 @@ SparseMultivariateTaylorSeries(Coef,Var,SMP):_
empty? l => (0$SMP) :: OUT
reduce("+",reverse! l)
if Coef has Field then
- p:% / r:Coef == per map(#1/$SMP r,rep p)$StreamFunctions2(SMP,SMP)
+ stream(x:%):Rep == x pretend Rep
+ SF2==> StreamFunctions2
+ p:% / r:Coef ==(map(#1/$SMP r,stream p)$SF2(SMP,SMP))pretend %
@
\section{domain TS TaylorSeries}
diff --git a/src/algebra/multsqfr.spad.pamphlet b/src/algebra/multsqfr.spad.pamphlet
index 91637d86..be6949f3 100644
--- a/src/algebra/multsqfr.spad.pamphlet
+++ b/src/algebra/multsqfr.spad.pamphlet
@@ -267,8 +267,7 @@ MultivariateSquareFree (E,OV,R,P) : C == T where
ctf1:=ctf
lval1:=lval
d1:=d0
- error "intChoose$MultivariateSquareFree: fell off loop without answer"
-
+
---- Choose the leading coefficient for the lifting ----
coefChoose(exp:Z,sqlead:Factored(P)) : P ==
diff --git a/src/algebra/naalgc.spad.pamphlet b/src/algebra/naalgc.spad.pamphlet
index b68e779c..b0d5b2d3 100644
--- a/src/algebra/naalgc.spad.pamphlet
+++ b/src/algebra/naalgc.spad.pamphlet
@@ -1022,7 +1022,7 @@ FramedNonAssociativeAlgebra(R:CommutativeRing): Category == _
listOfNumbers : List String := [STRINGIMAGE(q)$Lisp for q in 1..n]
symbolsForCoef : Vector Symbol :=
[concat("%", concat("x", i))::Symbol for i in listOfNumbers]
- xx : M P R := new(1,n,0)
+ xx : M P R
mo : P R
x : M P R := new(1,n,0)
for i in 1..n repeat
@@ -1055,7 +1055,7 @@ FramedNonAssociativeAlgebra(R:CommutativeRing): Category == _
listOfNumbers : List String := [STRINGIMAGE(q)$Lisp for q in 1..n]
symbolsForCoef : Vector Symbol :=
[concat("%", concat("x", i))::Symbol for i in listOfNumbers]
- xx : M P R := new(1,n,0)
+ xx : M P R
mo : P R
x : M P R := new(1,n,0)
for i in 1..n repeat
diff --git a/src/algebra/newpoly.spad.pamphlet b/src/algebra/newpoly.spad.pamphlet
index 88fb5070..23cd07b7 100644
--- a/src/algebra/newpoly.spad.pamphlet
+++ b/src/algebra/newpoly.spad.pamphlet
@@ -1029,9 +1029,13 @@ RecursivePolynomialCategory(R:Ring, E:OrderedAbelianMonoidSup, V:OrderedSet): Ca
if R has IntegralDomain
then
- exactQuo(r:R,s:R):R ==
- R has EuclideanDomain => r quo$R s
- (r exquo$R s)::R
+ if R has EuclideanDomain
+ then
+ exactQuo(r:R,s:R):R ==
+ r quo$R s
+ else
+ exactQuo(r:R,s:R):R ==
+ (r exquo$R s)::R
exactQuotient (p:$,r:R) ==
(p exquo$$ r)::$
@@ -1211,7 +1215,9 @@ RecursivePolynomialCategory(R:Ring, E:OrderedAbelianMonoidSup, V:OrderedSet): Ca
mpc2Z := MPolyCatFunctions2(Symbol,IES,IES,Z,R,PZ,PR)
mpc2Q := MPolyCatFunctions2(Symbol,IES,IES,Q,R,PQ,PR)
+ ZToR (z:Z):R == coerce(z)@R
QToR (q:Q):R == coerce(q)@R
+ PZToPR (pz:PZ):PR == map(ZToR,pz)$mpc2Z
PQToPR (pq:PQ):PR == map(QToR,pq)$mpc2Q
retract(pz:PZ) ==
@@ -1248,7 +1254,7 @@ RecursivePolynomialCategory(R:Ring, E:OrderedAbelianMonoidSup, V:OrderedSet): Ca
retractIfCan(pr)@Union($,"failed")
retractIfCan(pz:PZ) ==
- pr : PR := map(#1::R,pz)$mpc2Z
+ pr : PR := PZToPR(pz)
retractIfCan(pr)@Union($,"failed")
retract(pr:PR) ==
@@ -1292,6 +1298,8 @@ RecursivePolynomialCategory(R:Ring, E:OrderedAbelianMonoidSup, V:OrderedSet): Ca
then
mpc2Z := MPolyCatFunctions2(Symbol,IES,IES,Z,R,PZ,PR)
+ ZToR (z:Z):R == coerce(z)@R
+ PZToPR (pz:PZ):PR == map(ZToR,pz)$mpc2Z
retract(pz:PZ) ==
rif : Union($,"failed") := retractIfCan(pz)@Union($,"failed")
@@ -1315,7 +1323,7 @@ RecursivePolynomialCategory(R:Ring, E:OrderedAbelianMonoidSup, V:OrderedSet): Ca
localRetractIfCanPZ(pz)@Union($,"failed")
else
retractIfCan(pz:PZ) ==
- pr : PR := map(#1::R,pz)$mpc2Z
+ pr : PR := PZToPR(pz)
retractIfCan(pr)@Union($,"failed")
retract(pr:PR) ==
diff --git a/src/algebra/permgrps.spad.pamphlet b/src/algebra/permgrps.spad.pamphlet
index e5ae0b61..98e2ab75 100644
--- a/src/algebra/permgrps.spad.pamphlet
+++ b/src/algebra/permgrps.spad.pamphlet
@@ -338,27 +338,23 @@ PermutationGroup(S:SetCategory): public == private where
xelt := times ( x , xelt )
if wordProblem then word := append ( wordlist.p , word )
ppt := x.ppt
- [xelt,word]
bsgs1 (group:L V NNI,number1:NNI,words:L L NNI,maxLoops:I,gp:%,diff:I)_
: NNI ==
-- try to get a good approximation for the strong generators and base
ort: REC
k1: NNI
- i: NNI := number1
- while i <= degree repeat
+ i : NNI
+ for i in number1..degree repeat
ort := orbitWithSvc ( group , i )
k := ort.orb
k1 := # k
if k1 ~= 1 then leave
- i := i + 1
gpsgs := nil()$(L V NNI)
words2 := nil()$(L L NNI)
gplength : NNI := #group
- jj: NNI := 1
- while jj <= gplength repeat
- if (group.jj).i ~= i then leave
- jj := jj + 1
+ jj: NNI
+ for jj in 1..gplength repeat if (group.jj).i ~= i then leave
for k in 1..gplength repeat
el2 := group.k
if el2.i ~= i then
diff --git a/src/algebra/pfo.spad.pamphlet b/src/algebra/pfo.spad.pamphlet
index 970c8c98..45b6ac45 100644
--- a/src/algebra/pfo.spad.pamphlet
+++ b/src/algebra/pfo.spad.pamphlet
@@ -385,9 +385,10 @@ PointsOfFiniteOrder(R0, F, UP, UPUP, R): Exports == Implementation where
map(UP22UP(#1,k)::QF,
p)$UnivariatePolynomialCategoryFunctions2(UP2, UP3, QF, UPUP)
- cmult(l:List SMP):SMP ==
- R0 has GcdDomain => lcm l
- */l
+ if R0 has GcdDomain then
+ cmult(l:List SMP):SMP == lcm l
+ else
+ cmult(l:List SMP):SMP == */l
doubleDisc(f:UP3):Z ==
d := discriminant f
diff --git a/src/algebra/pgcd.spad.pamphlet b/src/algebra/pgcd.spad.pamphlet
index f06e27af..edbbccb0 100644
--- a/src/algebra/pgcd.spad.pamphlet
+++ b/src/algebra/pgcd.spad.pamphlet
@@ -304,9 +304,8 @@ PolynomialGcdPackage(E,OV,R,P):C == T where
listpol:=listpol.rest
nolift:Boolean:=true
uf: SUP
- for fs in tails listpol while nolift repeat
- uf := first fs
- --note uf and d not necessarily primitive
+ for uf in listpol repeat
+ --note uf and d not necessarily primitive
degree gcd(uf,d) =0 => nolift:=false
nolift => ["notCoprime"]
f:SUPP:=([p1,p2]$List(SUPP)).(position(uf,listpol))
diff --git a/src/algebra/sgcf.spad.pamphlet b/src/algebra/sgcf.spad.pamphlet
index 20fdb544..72669658 100644
--- a/src/algebra/sgcf.spad.pamphlet
+++ b/src/algebra/sgcf.spad.pamphlet
@@ -212,12 +212,11 @@ SymmetricGroupCombinatoricFunctions(): public == private where
for t in 0..(m-2) repeat
s : I := 0
sOld: I
- y : I := 0
- while y <= n repeat
+ y : I
+ for y in 0..n repeat
sOld := s
s := s + numberOfImproperPartitions(n-y,m-t-1)
if s > k then leave
- y := y + 1
l := append(l,list(y)$(L I))$(L I)
k := k - sOld
n := n - y
@@ -242,13 +241,12 @@ SymmetricGroupCombinatoricFunctions(): public == private where
s : I := 0
cm := cm - 1
sOld : I
- y : I := n
- while y >= 1 repeat --determination of the next son
+ y : I
+ for y in n..1 by -1 repeat --determination of the next son
sOld := s -- remember old s
-- this functions counts the number of elements in a subtree
s := s + numberOfImproperPartitionsInternal(n-y,m,cm)
if s > k then leave
- y := y - 1
-- y is the next son, so put it into the pathlist "nonZero"
nonZeros := append(nonZeros,list(y)$(L I))$(L I)
k := k - sOld --updating
@@ -272,10 +270,9 @@ SymmetricGroupCombinatoricFunctions(): public == private where
mm : I := k
s : I := m
for t in 0..(m-1) repeat
- y : Integer := s-1
- while y <= (n+1) repeat
+ y : Integer
+ for y in (s-1)..(n+1) repeat
if binomial$ICF (y,s) > mm then leave
- y := y + 1
l := append (l,list(y-1)$(L I))
mm := mm - binomial$ICF (y-1,s)
s := s-1
diff --git a/src/algebra/strap/BOOLEAN.lsp b/src/algebra/strap/BOOLEAN.lsp
index 0bc201fd..f1f08c88 100644
--- a/src/algebra/strap/BOOLEAN.lsp
+++ b/src/algebra/strap/BOOLEAN.lsp
@@ -165,7 +165,6 @@
(COND ((NOT #0#) (HREM |$ConstructorCache| '|Boolean|)))))))))
(DEFUN |Boolean;| ()
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET ((|dv$| (LIST '|Boolean|)) ($ (|newShell| 39))
(|pv$| (|buildPredVector| 0 0 NIL)))
(DECLARE (SPECIAL |$ConstructorCache|))
diff --git a/src/algebra/strap/CHAR.lsp b/src/algebra/strap/CHAR.lsp
index 5e2860e4..54208bca 100644
--- a/src/algebra/strap/CHAR.lsp
+++ b/src/algebra/strap/CHAR.lsp
@@ -200,7 +200,6 @@
(COND ((NOT #0#) (HREM |$ConstructorCache| '|Character|)))))))))
(DEFUN |Character;| ()
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET ((|dv$| (LIST '|Character|)) ($ (|newShell| 58))
(|pv$| (|buildPredVector| 0 0 NIL)))
(DECLARE (SPECIAL |$ConstructorCache|))
diff --git a/src/algebra/strap/DFLOAT.lsp b/src/algebra/strap/DFLOAT.lsp
index 7c1748b2..6b061736 100644
--- a/src/algebra/strap/DFLOAT.lsp
+++ b/src/algebra/strap/DFLOAT.lsp
@@ -885,7 +885,6 @@
((NOT #0#) (HREM |$ConstructorCache| '|DoubleFloat|)))))))))
(DEFUN |DoubleFloat;| ()
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET ((|dv$| (LIST '|DoubleFloat|)) ($ (|newShell| 164))
(|pv$| (|buildPredVector| 0 0 NIL)))
(DECLARE (SPECIAL |$ConstructorCache|))
diff --git a/src/algebra/strap/ILIST.lsp b/src/algebra/strap/ILIST.lsp
index 73d2a356..820134e2 100644
--- a/src/algebra/strap/ILIST.lsp
+++ b/src/algebra/strap/ILIST.lsp
@@ -440,7 +440,6 @@
((NOT #2#) (HREM |$ConstructorCache| '|IndexedList|)))))))))
(DEFUN |IndexedList;| (|#1| |#2|)
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET* ((|dv$1| (|devaluate| |#1|)) (|dv$2| (|devaluate| |#2|))
(|dv$| (LIST '|IndexedList| |dv$1| |dv$2|))
($ (|newShell| 86))
diff --git a/src/algebra/strap/INT.lsp b/src/algebra/strap/INT.lsp
index c9b9f9ec..919f0c16 100644
--- a/src/algebra/strap/INT.lsp
+++ b/src/algebra/strap/INT.lsp
@@ -527,7 +527,6 @@
(COND ((NOT #0#) (HREM |$ConstructorCache| '|Integer|)))))))))
(DEFUN |Integer;| ()
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET ((|dv$| (LIST '|Integer|)) ($ (|newShell| 141))
(|pv$| (|buildPredVector| 0 0 NIL)))
(DECLARE (SPECIAL |$ConstructorCache|))
diff --git a/src/algebra/strap/ISTRING.lsp b/src/algebra/strap/ISTRING.lsp
index 74393704..8f2a39fc 100644
--- a/src/algebra/strap/ISTRING.lsp
+++ b/src/algebra/strap/ISTRING.lsp
@@ -705,7 +705,6 @@
((NOT #1#) (HREM |$ConstructorCache| '|IndexedString|)))))))))
(DEFUN |IndexedString;| (|#1|)
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET* ((|dv$1| (|devaluate| |#1|))
(|dv$| (LIST '|IndexedString| |dv$1|)) ($ (|newShell| 100))
(|pv$| (|buildPredVector| 0 0
diff --git a/src/algebra/strap/LIST.lsp b/src/algebra/strap/LIST.lsp
index 87fdc8f1..3eec6e6d 100644
--- a/src/algebra/strap/LIST.lsp
+++ b/src/algebra/strap/LIST.lsp
@@ -196,7 +196,6 @@
(COND ((NOT #1#) (HREM |$ConstructorCache| '|List|)))))))))
(DEFUN |List;| (|#1|)
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET* ((|dv$1| (|devaluate| |#1|)) (|dv$| (LIST '|List| |dv$1|))
($ (|newShell| 70))
(|pv$| (|buildPredVector| 0 0
diff --git a/src/algebra/strap/NNI.lsp b/src/algebra/strap/NNI.lsp
index 3f8551f1..5419507e 100644
--- a/src/algebra/strap/NNI.lsp
+++ b/src/algebra/strap/NNI.lsp
@@ -60,7 +60,6 @@
(HREM |$ConstructorCache| '|NonNegativeInteger|)))))))))
(DEFUN |NonNegativeInteger;| ()
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET ((|dv$| (LIST '|NonNegativeInteger|)) ($ (|newShell| 22))
(|pv$| (|buildPredVector| 0 0 NIL)))
(DECLARE (SPECIAL |$ConstructorCache|))
diff --git a/src/algebra/strap/OUTFORM.lsp b/src/algebra/strap/OUTFORM.lsp
index 8a5eca36..70ac70a6 100644
--- a/src/algebra/strap/OUTFORM.lsp
+++ b/src/algebra/strap/OUTFORM.lsp
@@ -1016,7 +1016,6 @@
(COND ((NOT #0#) (HREM |$ConstructorCache| '|OutputForm|)))))))))
(DEFUN |OutputForm;| ()
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET ((|dv$| (LIST '|OutputForm|)) ($ (|newShell| 150))
(|pv$| (|buildPredVector| 0 0 NIL)))
(DECLARE (SPECIAL |$ConstructorCache|))
diff --git a/src/algebra/strap/PI.lsp b/src/algebra/strap/PI.lsp
index fcf15cb5..000a27c9 100644
--- a/src/algebra/strap/PI.lsp
+++ b/src/algebra/strap/PI.lsp
@@ -21,7 +21,6 @@
((NOT #0#) (HREM |$ConstructorCache| '|PositiveInteger|)))))))))
(DEFUN |PositiveInteger;| ()
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET ((|dv$| (LIST '|PositiveInteger|)) ($ (|newShell| 16))
(|pv$| (|buildPredVector| 0 0 NIL)))
(DECLARE (SPECIAL |$ConstructorCache|))
diff --git a/src/algebra/strap/SINT.lsp b/src/algebra/strap/SINT.lsp
index 87d5720b..c0ec6dbb 100644
--- a/src/algebra/strap/SINT.lsp
+++ b/src/algebra/strap/SINT.lsp
@@ -542,7 +542,6 @@
((NOT #0#) (HREM |$ConstructorCache| '|SingleInteger|)))))))))
(DEFUN |SingleInteger;| ()
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET ((|dv$| (LIST '|SingleInteger|)) ($ (|newShell| 116))
(|pv$| (|buildPredVector| 0 0 NIL)))
(DECLARE (SPECIAL |$ConstructorCache|))
diff --git a/src/algebra/strap/SYMBOL.lsp b/src/algebra/strap/SYMBOL.lsp
index c315c0c6..a34479e4 100644
--- a/src/algebra/strap/SYMBOL.lsp
+++ b/src/algebra/strap/SYMBOL.lsp
@@ -653,7 +653,6 @@
(COND ((NOT #0#) (HREM |$ConstructorCache| '|Symbol|)))))))))
(DEFUN |Symbol;| ()
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET ((|dv$| (LIST '|Symbol|)) ($ (|newShell| 165))
(|pv$| (|buildPredVector| 0 0 NIL)))
(DECLARE (SPECIAL |$ConstructorCache|))
diff --git a/src/algebra/strap/VECTOR.lsp b/src/algebra/strap/VECTOR.lsp
index 560068d4..98d29103 100644
--- a/src/algebra/strap/VECTOR.lsp
+++ b/src/algebra/strap/VECTOR.lsp
@@ -42,7 +42,6 @@
(COND ((NOT #1#) (HREM |$ConstructorCache| '|Vector|)))))))))
(DEFUN |Vector;| (|#1|)
- (DECLARE (SPECIAL |$ConstructorCache|))
(LET* ((|dv$1| (|devaluate| |#1|)) (|dv$| (LIST '|Vector| |dv$1|))
($ (|newShell| 36))
(|pv$| (|buildPredVector| 0 0
diff --git a/src/algebra/syssolp.spad.pamphlet b/src/algebra/syssolp.spad.pamphlet
index 2d035d32..1561a89a 100644
--- a/src/algebra/syssolp.spad.pamphlet
+++ b/src/algebra/syssolp.spad.pamphlet
@@ -118,9 +118,8 @@ SystemSolvePackage(R): Cat == Cap where
z:=last lv
np:=numer makeP2F p
lx:=variables np
- x : SE
- for x' in lv repeat
- if member?(x',lx) then leave (x := x')
+ x : SE
+ for x in lv repeat if member?(x,lx) then leave x
up:=univariate(np,x)
(degree up)=1 =>
equation(x::P(R)::F,-coefficient(up,0)/leadingCoefficient up)