diff --git a/books/bookvol10.2.pamphlet b/books/bookvol10.2.pamphlet
index f06cbb2..6175142 100644
--- a/books/bookvol10.2.pamphlet
+++ b/books/bookvol10.2.pamphlet
@@ -107,6 +107,18 @@ digraph pic {
\pagehead{AdditiveValuationAttribute}{ATADDVA}
\pagepic{ps/v102additivevaluationattribute.eps}{ATADDVA}{1.00}
\begin{chunk}{AdditiveValuationAttribute.input}
+)set break resume
+)sys rm -f AdditiveValuationAttribute.output
+)spool AdditiveValuationAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
\end{chunk}
\begin{chunk}{AdditiveValuationAttribute.help}
====================================================================
@@ -159,6 +171,19 @@ digraph pic {
\pagehead{ApproximateAttribute}{ATAPPRO}
\pagepic{ps/v102approximateattribute.eps}{ATAPPRO}{1.00}
\begin{chunk}{ApproximateAttribute.input}
+)set break resume
+)sys rm -f ApproximateAttribute.output
+)spool ApproximateAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{ApproximateAttribute.help}
====================================================================
@@ -209,6 +234,19 @@ digraph pic {
\pagehead{ArbitraryExponentAttribute}{ATARBEX}
\pagepic{ps/v102arbitraryexponentattribute.eps}{ATARBEX}{1.00}
\begin{chunk}{ArbitraryExponentAttribute.input}
+)set break resume
+)sys rm -f ArbitraryExponentAttribute.output
+)spool ArbitraryExponentAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{ArbitraryExponentAttribute.help}
====================================================================
@@ -259,6 +297,19 @@ digraph pic {
\pagehead{ArbitraryPrecisionAttribute}{ATARBPR}
\pagepic{ps/v102arbitraryprecisionattribute.eps}{ATARBPR}{1.00}
\begin{chunk}{ArbitraryPrecisionAttribute.input}
+)set break resume
+)sys rm -f ArbitraryPrecisionAttribute.output
+)spool ArbitraryPrecisionAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{ArbitraryPrecisionAttribute.help}
====================================================================
@@ -835,6 +886,19 @@ digraph pic {
\pagehead{CanonicalAttribute}{ATCANON}
\pagepic{ps/v102canonicalattribute.eps}{ATCANON}{1.00}
\begin{chunk}{CanonicalAttribute.input}
+)set break resume
+)sys rm -f CanonicalAttribute.output
+)spool CanonicalAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{CanonicalAttribute.help}
====================================================================
@@ -887,6 +951,18 @@ digraph pic {
\pagehead{CanonicalClosedAttribute}{ATCANCL}
\pagepic{ps/v102canonicalclosedattribute.eps}{ATCANCL}{1.00}
\begin{chunk}{CanonicalClosedAttribute.input}
+)set break resume
+)sys rm -f CanonicalClosedAttribute.output
+)spool CanonicalClosedAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
\end{chunk}
\begin{chunk}{CanonicalClosedAttribute.help}
====================================================================
@@ -939,6 +1015,19 @@ digraph pic {
\pagehead{CanonicalUnitNormalAttribute}{ATCUNOR}
\pagepic{ps/v102canonicalunitnormalattribute.eps}{ATCUNOR}{1.00}
\begin{chunk}{CanonicalUnitNormalAttribute.input}
+)set break resume
+)sys rm -f CanonicalUnitNormalAttribute.output
+)spool CanonicalUnitNormalAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{CanonicalUnitNormalAttribute.help}
====================================================================
@@ -995,6 +1084,19 @@ digraph pic {
\pagehead{CentralAttribute}{ATCENRL}
\pagepic{ps/v102centralattribute.eps}{ATCENRL}{1.00}
\begin{chunk}{CentralAttribute.input}
+)set break resume
+)sys rm -f CentralAttribute.output
+)spool CentralAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{CentralAttribute.help}
====================================================================
@@ -1268,6 +1370,19 @@ digraph pic {
\pagehead{CommutativeStarAttribute}{ATCS}
\pagepic{ps/v102commutativestarattribute.eps}{ATCS}{1.00}
\begin{chunk}{CommutativeStarAttribute.input}
+)set break resume
+)sys rm -f CommutativeStarAttribute.output
+)spool CommutativeStarAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{CommutativeStarAttribute.help}
====================================================================
@@ -1702,6 +1817,19 @@ digraph pic {
\pagehead{FiniteAggregateAttribute}{ATFINAG}
\pagepic{ps/v102finiteaggregateattribute.eps}{ATFINAG}{1.00}
\begin{chunk}{FiniteAggregateAttribute.input}
+)set break resume
+)sys rm -f FiniteAggregateAttribute.output
+)spool FiniteAggregateAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{FiniteAggregateAttribute.help}
====================================================================
@@ -2016,6 +2144,19 @@ digraph pic {
\pagehead{JacobiIdentityAttribute}{ATJACID}
\pagepic{ps/v102jacobiidentityattribute.eps}{ATJACID}{1.00}
\begin{chunk}{JacobiIdentityAttribute.input}
+)set break resume
+)sys rm -f JacobiIdentityAttribute.output
+)spool JacobiIdentityAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{JacobiIdentityAttribute.help}
====================================================================
@@ -2068,6 +2209,19 @@ digraph pic {
\pagehead{LazyRepresentationAttribute}{ATLR}
\pagepic{ps/v102lazyrepresentationattribute.eps}{ATLR}{1.00}
\begin{chunk}{LazyRepresentationAttribute.input}
+)set break resume
+)sys rm -f LazyRepresentationAttribute.output
+)spool LazyRepresentationAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{LazyRepresentationAttribute.help}
====================================================================
@@ -2118,6 +2272,19 @@ digraph pic {
\pagehead{LeftUnitaryAttribute}{ATLUNIT}
\pagepic{ps/v102leftunitaryattribute.eps}{ATLUNIT}{1.00}
\begin{chunk}{LeftUnitaryAttribute.input}
+)set break resume
+)sys rm -f LeftUnitaryAttribute.output
+)spool LeftUnitaryAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{LeftUnitaryAttribute.help}
====================================================================
@@ -2316,6 +2483,19 @@ digraph pic {
\pagehead{MultiplicativeValuationAttribute}{ATMULVA}
\pagepic{ps/v102multiplicativevaluationattribute.eps}{ATMULVA}{1.00}
\begin{chunk}{MultiplicativeValuationAttribute.input}
+)set break resume
+)sys rm -f MultiplicativeValuationAttribute.output
+)spool MultiplicativeValuationAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{MultiplicativeValuationAttribute.help}
====================================================================
@@ -2368,6 +2548,19 @@ digraph pic {
\pagehead{NotherianAttribute}{ATNOTHR}
\pagepic{ps/v102notherianattribute.eps}{ATNOTHR}{1.00}
\begin{chunk}{NotherianAttribute.input}
+)set break resume
+)sys rm -f NotherianAttribute.output
+)spool NotherianAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{NotherianAttribute.help}
====================================================================
@@ -2418,6 +2611,19 @@ digraph pic {
\pagehead{NoZeroDivisorsAttribute}{ATNZDIV}
\pagepic{ps/v102nozerodivisorsattribute.eps}{ATNZDIV}{1.00}
\begin{chunk}{NoZeroDivisorsAttribute.input}
+)set break resume
+)sys rm -f NoZeroDivisorsAttribute.output
+)spool NoZeroDivisorsAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{NoZeroDivisorsAttribute.help}
====================================================================
@@ -2470,6 +2676,19 @@ digraph pic {
\pagehead{NullSquareAttribute}{ATNULSQ}
\pagepic{ps/v102nullsquareattribute.eps}{ATNULSQ}{1.00}
\begin{chunk}{NullSquareAttribute.input}
+)set break resume
+)sys rm -f NullSquareAttribute.output
+)spool NullSquareAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{NullSquareAttribute.help}
====================================================================
@@ -2629,6 +2848,19 @@ digraph pic {
\pagehead{PartiallyOrderedSetAttribute}{ATPOSET}
\pagepic{ps/v102partiallyorderedsetattribute.eps}{ATPOSET}{1.00}
\begin{chunk}{PartiallyOrderedSetAttribute.input}
+)set break resume
+)sys rm -f PartiallyOrderedSetAttribute.output
+)spool PartiallyOrderedSetAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{PartiallyOrderedSetAttribute.help}
====================================================================
@@ -3435,6 +3667,19 @@ digraph pic {
\pagehead{RightUnitaryAttribute}{ATRUNIT}
\pagepic{ps/v102rightunitaryattribute.eps}{ATRUNIT}{1.00}
\begin{chunk}{RightUnitaryAttribute.input}
+)set break resume
+)sys rm -f RightUnitaryAttribute.output
+)spool RightUnitaryAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{RightUnitaryAttribute.help}
====================================================================
@@ -3485,6 +3730,19 @@ digraph pic {
\pagehead{ShallowlyMutableAttribute}{ATSHMUT}
\pagepic{ps/v102shallowlymutableattribute.eps}{ATSHMUT}{1.00}
\begin{chunk}{ShallowlyMutableAttribute.input}
+)set break resume
+)sys rm -f ShallowlyMutableAttribute.output
+)spool ShallowlyMutableAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{ShallowlyMutableAttribute.help}
====================================================================
@@ -3881,6 +4139,19 @@ digraph pic {
\pagehead{UnitsKnownAttribute}{ATUNIKN}
\pagepic{ps/v102unitsknownattribute.eps}{ATUNIKN}{1.00}
\begin{chunk}{UnitsKnownAttribute.input}
+)set break resume
+)sys rm -f UnitsKnownAttribute.output
+)spool UnitsKnownAttribute.output
+)set message test on
+)set message auto off
+)clear all
+
+--S 1 of 1
+1
+--E 1
+)spool
+)lisp (bye)
+
\end{chunk}
\begin{chunk}{UnitsKnownAttribute.help}
====================================================================
@@ -4263,7 +4534,7 @@ digraph pic {
)show Comparable
--R Comparable is a category constructor
--R Abbreviation for Comparable is COMPAR
---R This constructor is not exposed in this frame.
+--R This constructor is exposed in this frame.
--R Issue )edit bookvol10.2.pamphlet to see algebra source code for COMPAR
--R
--R------------------------------- Operations --------------------------------
@@ -7918,10 +8189,10 @@ digraph pic {
--R
--R------------------------------- Operations --------------------------------
--R ?=? : (%,%) -> Boolean coerce : % -> OutputForm
---R hash : % -> SingleInteger index : PositiveInteger -> %
---R latex : % -> String lookup : % -> PositiveInteger
---R random : () -> % size : () -> NonNegativeInteger
---R ?~=? : (%,%) -> Boolean
+--R enumerate : () -> List(%) hash : % -> SingleInteger
+--R index : PositiveInteger -> % latex : % -> String
+--R lookup : % -> PositiveInteger random : () -> %
+--R size : () -> NonNegativeInteger ?~=? : (%,%) -> Boolean
--R
--E 1
@@ -15096,11 +15367,11 @@ digraph pic {
--R ? : (%,%) -> Boolean ?<=? : (%,%) -> Boolean
--R ?=? : (%,%) -> Boolean ?>? : (%,%) -> Boolean
--R ?>=? : (%,%) -> Boolean coerce : % -> OutputForm
---R hash : % -> SingleInteger index : PositiveInteger -> %
---R latex : % -> String lookup : % -> PositiveInteger
---R max : (%,%) -> % min : (%,%) -> %
---R random : () -> % size : () -> NonNegativeInteger
---R ?~=? : (%,%) -> Boolean
+--R enumerate : () -> List(%) hash : % -> SingleInteger
+--R index : PositiveInteger -> % latex : % -> String
+--R lookup : % -> PositiveInteger max : (%,%) -> %
+--R min : (%,%) -> % random : () -> %
+--R size : () -> NonNegativeInteger ?~=? : (%,%) -> Boolean
--R
--E 1
@@ -27804,7 +28075,6 @@ digraph pic {
--S 1 of 1
)show FiniteSetAggregate
---R
--R FiniteSetAggregate(S: SetCategory) is a category constructor
--R Abbreviation for FiniteSetAggregate is FSAGG
--R This constructor is exposed in this frame.
@@ -27834,6 +28104,7 @@ digraph pic {
--R convert : % -> InputForm if S has KONVERT(INFORM)
--R count : (S,%) -> NonNegativeInteger if S has SETCAT and $ has finiteAggregate
--R count : ((S -> Boolean),%) -> NonNegativeInteger if $ has finiteAggregate
+--R enumerate : () -> List(%) if S has FINITE
--R eval : (%,List(S),List(S)) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,S,S) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,Equation(S)) -> % if S has EVALAB(S) and S has SETCAT
@@ -45055,6 +45326,7 @@ digraph pic {
--R dimension : () -> CardinalNumber if R has FIELD
--R dot : (%,%) -> R if R has RING
--R entry? : (R,%) -> Boolean if $ has finiteAggregate and R has SETCAT
+--R enumerate : () -> List(%) if R has FINITE
--R eval : (%,List(R),List(R)) -> % if R has EVALAB(R) and R has SETCAT
--R eval : (%,R,R) -> % if R has EVALAB(R) and R has SETCAT
--R eval : (%,Equation(R)) -> % if R has EVALAB(R) and R has SETCAT
@@ -47732,7 +48004,6 @@ digraph pic {
--S 1 of 1
)show OctonionCategory
---R
--R OctonionCategory(R: CommutativeRing) is a category constructor
--R Abbreviation for OctonionCategory is OC
--R This constructor is exposed in this frame.
@@ -47770,6 +48041,7 @@ digraph pic {
--R coerce : Fraction(Integer) -> % if R has RETRACT(FRAC(INT))
--R convert : % -> InputForm if R has KONVERT(INFORM)
--R ?.? : (%,R) -> % if R has ELTAB(R,R)
+--R enumerate : () -> List(%) if R has FINITE
--R eval : (%,Symbol,R) -> % if R has IEVALAB(SYMBOL,R)
--R eval : (%,List(Symbol),List(R)) -> % if R has IEVALAB(SYMBOL,R)
--R eval : (%,List(Equation(R))) -> % if R has EVALAB(R)
@@ -70478,7 +70750,6 @@ digraph pic {
--S 1 of 1
)show FiniteFieldCategory
---R
--R FiniteFieldCategory is a category constructor
--R Abbreviation for FiniteFieldCategory is FFIELDC
--R This constructor is exposed in this frame.
@@ -70498,21 +70769,22 @@ digraph pic {
--R coerce : Fraction(Integer) -> % coerce : % -> %
--R coerce : Integer -> % coerce : % -> OutputForm
--R createPrimitiveElement : () -> % differentiate : % -> %
---R factor : % -> Factored(%) gcd : List(%) -> %
---R gcd : (%,%) -> % hash : % -> SingleInteger
---R index : PositiveInteger -> % init : () -> %
---R inv : % -> % latex : % -> String
---R lcm : List(%) -> % lcm : (%,%) -> %
---R lookup : % -> PositiveInteger one? : % -> Boolean
---R order : % -> PositiveInteger prime? : % -> Boolean
---R primeFrobenius : % -> % primitive? : % -> Boolean
---R primitiveElement : () -> % ?quo? : (%,%) -> %
---R random : () -> % recip : % -> Union(%,"failed")
---R ?rem? : (%,%) -> % sample : () -> %
---R size : () -> NonNegativeInteger sizeLess? : (%,%) -> Boolean
---R squareFree : % -> Factored(%) squareFreePart : % -> %
---R unit? : % -> Boolean unitCanonical : % -> %
---R zero? : % -> Boolean ?~=? : (%,%) -> Boolean
+--R enumerate : () -> List(%) factor : % -> Factored(%)
+--R gcd : List(%) -> % gcd : (%,%) -> %
+--R hash : % -> SingleInteger index : PositiveInteger -> %
+--R init : () -> % inv : % -> %
+--R latex : % -> String lcm : List(%) -> %
+--R lcm : (%,%) -> % lookup : % -> PositiveInteger
+--R one? : % -> Boolean order : % -> PositiveInteger
+--R prime? : % -> Boolean primeFrobenius : % -> %
+--R primitive? : % -> Boolean primitiveElement : () -> %
+--R ?quo? : (%,%) -> % random : () -> %
+--R recip : % -> Union(%,"failed") ?rem? : (%,%) -> %
+--R sample : () -> % size : () -> NonNegativeInteger
+--R sizeLess? : (%,%) -> Boolean squareFree : % -> Factored(%)
+--R squareFreePart : % -> % unit? : % -> Boolean
+--R unitCanonical : % -> % zero? : % -> Boolean
+--R ?~=? : (%,%) -> Boolean
--R ?*? : (NonNegativeInteger,%) -> %
--R ?**? : (%,NonNegativeInteger) -> %
--R ?^? : (%,NonNegativeInteger) -> %
@@ -71877,7 +72149,6 @@ digraph pic {
--S 1 of 1
)show PseudoAlgebraicClosureOfFiniteFieldCategory
---R
--R PseudoAlgebraicClosureOfFiniteFieldCategory is a category constructor
--R Abbreviation for PseudoAlgebraicClosureOfFiniteFieldCategory is PACFFC
--R This constructor is exposed in this frame.
@@ -71897,25 +72168,26 @@ digraph pic {
--R coerce : Fraction(Integer) -> % coerce : % -> %
--R coerce : Integer -> % coerce : % -> OutputForm
--R conjugate : % -> % createPrimitiveElement : () -> %
---R differentiate : % -> % extDegree : % -> PositiveInteger
---R factor : % -> Factored(%) fullOutput : % -> OutputForm
---R gcd : List(%) -> % gcd : (%,%) -> %
---R ground? : % -> Boolean hash : % -> SingleInteger
---R index : PositiveInteger -> % init : () -> %
---R inv : % -> % latex : % -> String
---R lcm : List(%) -> % lcm : (%,%) -> %
---R lookup : % -> PositiveInteger maxTower : List(%) -> %
---R one? : % -> Boolean order : % -> PositiveInteger
---R previousTower : % -> % prime? : % -> Boolean
---R primeFrobenius : % -> % primitive? : % -> Boolean
---R primitiveElement : () -> % ?quo? : (%,%) -> %
---R random : () -> % recip : % -> Union(%,"failed")
---R ?rem? : (%,%) -> % sample : () -> %
---R setTower! : % -> Void size : () -> NonNegativeInteger
---R sizeLess? : (%,%) -> Boolean squareFree : % -> Factored(%)
---R squareFreePart : % -> % unit? : % -> Boolean
---R unitCanonical : % -> % vectorise : (%,%) -> Vector(%)
---R zero? : % -> Boolean ?~=? : (%,%) -> Boolean
+--R differentiate : % -> % enumerate : () -> List(%)
+--R extDegree : % -> PositiveInteger factor : % -> Factored(%)
+--R fullOutput : % -> OutputForm gcd : List(%) -> %
+--R gcd : (%,%) -> % ground? : % -> Boolean
+--R hash : % -> SingleInteger index : PositiveInteger -> %
+--R init : () -> % inv : % -> %
+--R latex : % -> String lcm : List(%) -> %
+--R lcm : (%,%) -> % lookup : % -> PositiveInteger
+--R maxTower : List(%) -> % one? : % -> Boolean
+--R order : % -> PositiveInteger previousTower : % -> %
+--R prime? : % -> Boolean primeFrobenius : % -> %
+--R primitive? : % -> Boolean primitiveElement : () -> %
+--R ?quo? : (%,%) -> % random : () -> %
+--R recip : % -> Union(%,"failed") ?rem? : (%,%) -> %
+--R sample : () -> % setTower! : % -> Void
+--R size : () -> NonNegativeInteger sizeLess? : (%,%) -> Boolean
+--R squareFree : % -> Factored(%) squareFreePart : % -> %
+--R unit? : % -> Boolean unitCanonical : % -> %
+--R vectorise : (%,%) -> Vector(%) zero? : % -> Boolean
+--R ?~=? : (%,%) -> Boolean
--R ?*? : (NonNegativeInteger,%) -> %
--R ?**? : (%,NonNegativeInteger) -> %
--R ?^? : (%,NonNegativeInteger) -> %
@@ -73756,7 +74028,6 @@ digraph pic {
--S 1 of 1
)show FiniteAlgebraicExtensionField
---R
--R FiniteAlgebraicExtensionField(F: Field) is a category constructor
--R Abbreviation for FiniteAlgebraicExtensionField is FAXF
--R This constructor is exposed in this frame.
@@ -73813,6 +74084,7 @@ digraph pic {
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if F has CHARNZ or F has FINITE
--R discreteLog : % -> NonNegativeInteger if F has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if F has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -74570,7 +74842,6 @@ digraph pic {
--S 1 of 1
)show MonogenicAlgebra
---R
--R MonogenicAlgebra(R: CommutativeRing,UP: UnivariatePolynomialCategory(t#1)) is a category constructor
--R Abbreviation for MonogenicAlgebra is MONOGEN
--R This constructor is exposed in this frame.
@@ -74638,6 +74909,7 @@ digraph pic {
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if R has FFIELDC
--R discreteLog : % -> NonNegativeInteger if R has FFIELDC
--R divide : (%,%) -> Record(quotient: %,remainder: %) if R has FIELD
+--R enumerate : () -> List(%) if R has FINITE
--R euclideanSize : % -> NonNegativeInteger if R has FIELD
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed") if R has FIELD
--R exquo : (%,%) -> Union(%,"failed") if R has FIELD
@@ -75607,7 +75879,6 @@ digraph pic {
--S 1 of 1
)show ComplexCategory
---R
--R ComplexCategory(R: CommutativeRing) is a category constructor
--R Abbreviation for ComplexCategory is COMPCAT
--R This constructor is exposed in this frame.
@@ -75710,6 +75981,7 @@ digraph pic {
--R discreteLog : % -> NonNegativeInteger if R has FFIELDC
--R divide : (%,%) -> Record(quotient: %,remainder: %) if R has EUCDOM
--R ?.? : (%,R) -> % if R has ELTAB(R,R)
+--R enumerate : () -> List(%) if R has FINITE
--R euclideanSize : % -> NonNegativeInteger if R has EUCDOM
--R eval : (%,Symbol,R) -> % if R has IEVALAB(SYMBOL,R)
--R eval : (%,List(Symbol),List(R)) -> % if R has IEVALAB(SYMBOL,R)
@@ -76750,7 +77022,6 @@ digraph pic {
--S 1 of 1
)show FunctionFieldCategory
---R
--R FunctionFieldCategory(F: UniqueFactorizationDomain,UP: UnivariatePolynomialCategory(t#1),UPUP: UnivariatePolynomialCategory(Fraction(t#2))) is a category constructor
--R Abbreviation for FunctionFieldCategory is FFCAT
--R This constructor is exposed in this frame.
@@ -76832,6 +77103,7 @@ digraph pic {
--R discriminant : Vector(%) -> Fraction(UP)
--R divide : (%,%) -> Record(quotient: %,remainder: %) if Fraction(UP) has FIELD
--R elliptic : () -> Union(UP,"failed")
+--R enumerate : () -> List(%) if Fraction(UP) has FINITE
--R euclideanSize : % -> NonNegativeInteger if Fraction(UP) has FIELD
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed") if Fraction(UP) has FIELD
--R exquo : (%,%) -> Union(%,"failed") if Fraction(UP) has FIELD
diff --git a/books/bookvol10.3.pamphlet b/books/bookvol10.3.pamphlet
index cd0bff6..9a3888f 100644
--- a/books/bookvol10.3.pamphlet
+++ b/books/bookvol10.3.pamphlet
@@ -1059,6 +1059,7 @@ AlgebraGivenByStructuralConstants(R:Field, n : PositiveInteger,_
--R discriminant : Vector(%) -> Fraction(UP)
--R divide : (%,%) -> Record(quotient: %,remainder: %) if Fraction(UP) has FIELD
--R elliptic : () -> Union(UP,"failed")
+--R enumerate : () -> List(%) if Fraction(UP) has FINITE
--R euclideanSize : % -> NonNegativeInteger if Fraction(UP) has FIELD
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed") if Fraction(UP) has FIELD
--R exquo : (%,%) -> Union(%,"failed") if Fraction(UP) has FIELD
@@ -15075,16 +15076,17 @@ BlowUpWithQuadTrans: Exports == Implementation where
--R ?>? : (%,%) -> Boolean ?>=? : (%,%) -> Boolean
--R ?\/? : (%,%) -> % ^? : % -> %
--R ?and? : (%,%) -> % coerce : % -> OutputForm
---R convert : % -> InputForm false : () -> %
---R hash : % -> SingleInteger implies : (%,%) -> %
---R index : PositiveInteger -> % latex : % -> String
---R lookup : % -> PositiveInteger max : (%,%) -> %
---R min : (%,%) -> % nand : (%,%) -> %
---R nor : (%,%) -> % not? : % -> %
---R ?or? : (%,%) -> % random : () -> %
---R size : () -> NonNegativeInteger test : % -> Boolean
---R true : () -> % xor : (%,%) -> %
---R ~? : % -> % ?~=? : (%,%) -> Boolean
+--R convert : % -> InputForm enumerate : () -> List(%)
+--R false : () -> % hash : % -> SingleInteger
+--R implies : (%,%) -> % index : PositiveInteger -> %
+--R latex : % -> String lookup : % -> PositiveInteger
+--R max : (%,%) -> % min : (%,%) -> %
+--R nand : (%,%) -> % nor : (%,%) -> %
+--R not? : % -> % ?or? : (%,%) -> %
+--R random : () -> % size : () -> NonNegativeInteger
+--R test : % -> Boolean true : () -> %
+--R xor : (%,%) -> % ~? : % -> %
+--R ?~=? : (%,%) -> Boolean
--R
--E 1
@@ -26578,7 +26580,6 @@ DifferentialSparseMultivariatePolynomial(R, S, V):
--S 1 of 1
)show DirectProduct
---R
--R DirectProduct(dim: NonNegativeInteger,R: Type) is a domain constructor
--R Abbreviation for DirectProduct is DIRPROD
--R This constructor is not exposed in this frame.
@@ -26641,6 +26642,7 @@ DifferentialSparseMultivariatePolynomial(R, S, V):
--R dimension : () -> CardinalNumber if R has FIELD
--R dot : (%,%) -> R if R has RING
--R entry? : (R,%) -> Boolean if $ has finiteAggregate and R has SETCAT
+--R enumerate : () -> List(%) if R has FINITE
--R eval : (%,List(R),List(R)) -> % if R has EVALAB(R) and R has SETCAT
--R eval : (%,R,R) -> % if R has EVALAB(R) and R has SETCAT
--R eval : (%,Equation(R)) -> % if R has EVALAB(R) and R has SETCAT
@@ -26908,7 +26910,6 @@ DirectProduct(dim:NonNegativeInteger, R:Type):
--S 1 of 1
)show DirectProductMatrixModule
---R
--R DirectProductMatrixModule(n: PositiveInteger,R: Ring,M: SquareMatrixCategory(n,R,DirectProduct(n,R),DirectProduct(n,R)),S: LeftModule(R)) is a domain constructor
--R Abbreviation for DirectProductMatrixModule is DPMM
--R This constructor is not exposed in this frame.
@@ -26971,6 +26972,7 @@ DirectProduct(dim:NonNegativeInteger, R:Type):
--R dimension : () -> CardinalNumber if S has FIELD
--R dot : (%,%) -> S if S has RING
--R entry? : (S,%) -> Boolean if $ has finiteAggregate and S has SETCAT
+--R enumerate : () -> List(%) if S has FINITE
--R eval : (%,List(S),List(S)) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,S,S) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,Equation(S)) -> % if S has EVALAB(S) and S has SETCAT
@@ -27163,7 +27165,6 @@ DirectProductMatrixModule(n, R, M, S): DPcategory == DPcapsule where
--S 1 of 1
)show DirectProductModule
---R
--R DirectProductModule(n: NonNegativeInteger,R: Ring,S: LeftModule(R)) is a domain constructor
--R Abbreviation for DirectProductModule is DPMO
--R This constructor is not exposed in this frame.
@@ -27226,6 +27227,7 @@ DirectProductMatrixModule(n, R, M, S): DPcategory == DPcapsule where
--R dimension : () -> CardinalNumber if S has FIELD
--R dot : (%,%) -> S if S has RING
--R entry? : (S,%) -> Boolean if $ has finiteAggregate and S has SETCAT
+--R enumerate : () -> List(%) if S has FINITE
--R eval : (%,List(S),List(S)) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,S,S) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,Equation(S)) -> % if S has EVALAB(S) and S has SETCAT
@@ -39822,7 +39824,6 @@ FiniteDivisor(F, UP, UPUP, R): Exports == Implementation where
--S 1 of 1
)show FiniteField
---R
--R FiniteField(p: PositiveInteger,n: PositiveInteger) is a domain constructor
--R Abbreviation for FiniteField is FF
--R This constructor is exposed in this frame.
@@ -39880,6 +39881,7 @@ FiniteDivisor(F, UP, UPUP, R): Exports == Implementation where
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if PrimeField(p) has CHARNZ or PrimeField(p) has FINITE
--R discreteLog : % -> NonNegativeInteger if PrimeField(p) has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if PrimeField(p) has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -40081,7 +40083,6 @@ FiniteField(p:PositiveInteger, n:PositiveInteger): _
--S 1 of 1
)show FiniteFieldCyclicGroup
---R
--R FiniteFieldCyclicGroup(p: PositiveInteger,extdeg: PositiveInteger) is a domain constructor
--R Abbreviation for FiniteFieldCyclicGroup is FFCG
--R This constructor is exposed in this frame.
@@ -40139,6 +40140,7 @@ FiniteField(p:PositiveInteger, n:PositiveInteger): _
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if PrimeField(p) has CHARNZ or PrimeField(p) has FINITE
--R discreteLog : % -> NonNegativeInteger if PrimeField(p) has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if PrimeField(p) has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -40354,7 +40356,6 @@ FiniteFieldCyclicGroup(p,extdeg):_
--S 1 of 1
)show FiniteFieldCyclicGroupExtension
---R
--R FiniteFieldCyclicGroupExtension(GF: FiniteFieldCategory,extdeg: PositiveInteger) is a domain constructor
--R Abbreviation for FiniteFieldCyclicGroupExtension is FFCGX
--R This constructor is not exposed in this frame.
@@ -40411,6 +40412,7 @@ FiniteFieldCyclicGroup(p,extdeg):_
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if GF has CHARNZ or GF has FINITE
--R discreteLog : % -> NonNegativeInteger if GF has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if GF has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -40627,7 +40629,6 @@ FiniteFieldCyclicGroupExtension(GF,extdeg):_
--S 1 of 1
)show FiniteFieldCyclicGroupExtensionByPolynomial
---R
--R FiniteFieldCyclicGroupExtensionByPolynomial(GF: FiniteFieldCategory,defpol: SparseUnivariatePolynomial(GF)) is a domain constructor
--R Abbreviation for FiniteFieldCyclicGroupExtensionByPolynomial is FFCGP
--R This constructor is not exposed in this frame.
@@ -40684,6 +40685,7 @@ FiniteFieldCyclicGroupExtension(GF,extdeg):_
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if GF has CHARNZ or GF has FINITE
--R discreteLog : % -> NonNegativeInteger if GF has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if GF has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -41167,7 +41169,6 @@ FiniteFieldCyclicGroupExtensionByPolynomial(GF,defpol):_
--S 1 of 1
)show FiniteFieldExtension
---R
--R FiniteFieldExtension(GF: FiniteFieldCategory,n: PositiveInteger) is a domain constructor
--R Abbreviation for FiniteFieldExtension is FFX
--R This constructor is not exposed in this frame.
@@ -41224,6 +41225,7 @@ FiniteFieldCyclicGroupExtensionByPolynomial(GF,defpol):_
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if GF has CHARNZ or GF has FINITE
--R discreteLog : % -> NonNegativeInteger if GF has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if GF has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -41427,7 +41429,6 @@ FiniteFieldExtension(GF, n): Exports == Implementation where
--S 1 of 1
)show FiniteFieldExtensionByPolynomial
---R
--R FiniteFieldExtensionByPolynomial(GF: FiniteFieldCategory,defpol: SparseUnivariatePolynomial(GF)) is a domain constructor
--R Abbreviation for FiniteFieldExtensionByPolynomial is FFP
--R This constructor is not exposed in this frame.
@@ -41484,6 +41485,7 @@ FiniteFieldExtension(GF, n): Exports == Implementation where
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if GF has CHARNZ or GF has FINITE
--R discreteLog : % -> NonNegativeInteger if GF has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if GF has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -41887,7 +41889,6 @@ FiniteFieldExtensionByPolynomial(GF:FiniteFieldCategory,_
--S 1 of 1
)show FiniteFieldNormalBasis
---R
--R FiniteFieldNormalBasis(p: PositiveInteger,extdeg: PositiveInteger) is a domain constructor
--R Abbreviation for FiniteFieldNormalBasis is FFNB
--R This constructor is exposed in this frame.
@@ -41945,6 +41946,7 @@ FiniteFieldExtensionByPolynomial(GF:FiniteFieldCategory,_
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if PrimeField(p) has CHARNZ or PrimeField(p) has FINITE
--R discreteLog : % -> NonNegativeInteger if PrimeField(p) has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if PrimeField(p) has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -42172,7 +42174,6 @@ FiniteFieldNormalBasis(p,extdeg):_
--S 1 of 1
)show FiniteFieldNormalBasisExtension
---R
--R FiniteFieldNormalBasisExtension(GF: FiniteFieldCategory,extdeg: PositiveInteger) is a domain constructor
--R Abbreviation for FiniteFieldNormalBasisExtension is FFNBX
--R This constructor is not exposed in this frame.
@@ -42229,6 +42230,7 @@ FiniteFieldNormalBasis(p,extdeg):_
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if GF has CHARNZ or GF has FINITE
--R discreteLog : % -> NonNegativeInteger if GF has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if GF has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -42456,7 +42458,6 @@ FiniteFieldNormalBasisExtension(GF,extdeg):_
--S 1 of 1
)show FiniteFieldNormalBasisExtensionByPolynomial
---R
--R FiniteFieldNormalBasisExtensionByPolynomial(GF: FiniteFieldCategory,uni: Union(SparseUnivariatePolynomial(GF),Vector(List(Record(value: GF,index: SingleInteger))))) is a domain constructor
--R Abbreviation for FiniteFieldNormalBasisExtensionByPolynomial is FFNBP
--R This constructor is not exposed in this frame.
@@ -42513,6 +42514,7 @@ FiniteFieldNormalBasisExtension(GF,extdeg):_
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if GF has CHARNZ or GF has FINITE
--R discreteLog : % -> NonNegativeInteger if GF has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if GF has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -57239,7 +57241,6 @@ HTMLFormat(): public == private where
--S 1 of 1
)show HomogeneousDirectProduct
---R
--R HomogeneousDirectProduct(dim: NonNegativeInteger,S: OrderedAbelianMonoidSup) is a domain constructor
--R Abbreviation for HomogeneousDirectProduct is HDP
--R This constructor is not exposed in this frame.
@@ -57302,6 +57303,7 @@ HTMLFormat(): public == private where
--R dimension : () -> CardinalNumber if S has FIELD
--R dot : (%,%) -> S if S has RING
--R entry? : (S,%) -> Boolean if $ has finiteAggregate and S has SETCAT
+--R enumerate : () -> List(%) if S has FINITE
--R eval : (%,List(S),List(S)) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,S,S) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,Equation(S)) -> % if S has EVALAB(S) and S has SETCAT
@@ -62685,7 +62687,6 @@ InnerAlgebraicNumber(): Exports == Implementation where
--S 1 of 1
)show InnerFiniteField
---R
--R InnerFiniteField(p: PositiveInteger,n: PositiveInteger) is a domain constructor
--R Abbreviation for InnerFiniteField is IFF
--R This constructor is not exposed in this frame.
@@ -62744,6 +62745,7 @@ InnerAlgebraicNumber(): Exports == Implementation where
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if InnerPrimeField(p) has CHARNZ or InnerPrimeField(p) has FINITE
--R discreteLog : % -> NonNegativeInteger if InnerPrimeField(p) has FINITE
--R divide : (%,%) -> Record(quotient: %,remainder: %)
+--R enumerate : () -> List(%) if InnerPrimeField(p) has FINITE
--R euclideanSize : % -> NonNegativeInteger
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed")
--R exquo : (%,%) -> Union(%,"failed")
@@ -63674,7 +63676,6 @@ InnerPAdicInteger(p,unBalanced?): Exports == Implementation where
--S 1 of 1
)show InnerPrimeField
---R
--R InnerPrimeField(p: PositiveInteger) is a domain constructor
--R Abbreviation for InnerPrimeField is IPF
--R This constructor is not exposed in this frame.
@@ -63697,24 +63698,25 @@ InnerPAdicInteger(p,unBalanced?): Exports == Implementation where
--R convert : % -> Integer coordinates : % -> Vector(%)
--R createPrimitiveElement : () -> % degree : % -> PositiveInteger
--R differentiate : % -> % dimension : () -> CardinalNumber
---R factor : % -> Factored(%) gcd : List(%) -> %
---R gcd : (%,%) -> % hash : % -> SingleInteger
---R inGroundField? : % -> Boolean index : PositiveInteger -> %
---R init : () -> % inv : % -> %
---R latex : % -> String lcm : List(%) -> %
---R lcm : (%,%) -> % lookup : % -> PositiveInteger
---R norm : % -> % one? : % -> Boolean
---R order : % -> PositiveInteger prime? : % -> Boolean
---R primeFrobenius : % -> % primitive? : % -> Boolean
---R primitiveElement : () -> % ?quo? : (%,%) -> %
---R random : () -> % recip : % -> Union(%,"failed")
---R ?rem? : (%,%) -> % represents : Vector(%) -> %
---R retract : % -> % sample : () -> %
---R size : () -> NonNegativeInteger sizeLess? : (%,%) -> Boolean
---R squareFree : % -> Factored(%) squareFreePart : % -> %
---R trace : % -> % transcendent? : % -> Boolean
---R unit? : % -> Boolean unitCanonical : % -> %
---R zero? : % -> Boolean ?~=? : (%,%) -> Boolean
+--R enumerate : () -> List(%) factor : % -> Factored(%)
+--R gcd : List(%) -> % gcd : (%,%) -> %
+--R hash : % -> SingleInteger inGroundField? : % -> Boolean
+--R index : PositiveInteger -> % init : () -> %
+--R inv : % -> % latex : % -> String
+--R lcm : List(%) -> % lcm : (%,%) -> %
+--R lookup : % -> PositiveInteger norm : % -> %
+--R one? : % -> Boolean order : % -> PositiveInteger
+--R prime? : % -> Boolean primeFrobenius : % -> %
+--R primitive? : % -> Boolean primitiveElement : () -> %
+--R ?quo? : (%,%) -> % random : () -> %
+--R recip : % -> Union(%,"failed") ?rem? : (%,%) -> %
+--R represents : Vector(%) -> % retract : % -> %
+--R sample : () -> % size : () -> NonNegativeInteger
+--R sizeLess? : (%,%) -> Boolean squareFree : % -> Factored(%)
+--R squareFreePart : % -> % trace : % -> %
+--R transcendent? : % -> Boolean unit? : % -> Boolean
+--R unitCanonical : % -> % zero? : % -> Boolean
+--R ?~=? : (%,%) -> Boolean
--R ?*? : (NonNegativeInteger,%) -> %
--R ?**? : (%,NonNegativeInteger) -> %
--R Frobenius : % -> % if $ has FINITE
@@ -67066,7 +67068,6 @@ Integer: Join(IntegerNumberSystem, ConvertibleTo String, OpenMath) with
--S 1 of 1
)show IntegerMod
---R
--R IntegerMod(p: PositiveInteger) is a domain constructor
--R Abbreviation for IntegerMod is ZMOD
--R This constructor is not exposed in this frame.
@@ -67080,12 +67081,13 @@ Integer: Join(IntegerNumberSystem, ConvertibleTo String, OpenMath) with
--R 1 : () -> % 0 : () -> %
--R ?^? : (%,PositiveInteger) -> % coerce : Integer -> %
--R coerce : % -> OutputForm convert : % -> Integer
---R hash : % -> SingleInteger index : PositiveInteger -> %
---R init : () -> % latex : % -> String
---R lookup : % -> PositiveInteger one? : % -> Boolean
---R random : () -> % recip : % -> Union(%,"failed")
---R sample : () -> % size : () -> NonNegativeInteger
---R zero? : % -> Boolean ?~=? : (%,%) -> Boolean
+--R enumerate : () -> List(%) hash : % -> SingleInteger
+--R index : PositiveInteger -> % init : () -> %
+--R latex : % -> String lookup : % -> PositiveInteger
+--R one? : % -> Boolean random : () -> %
+--R recip : % -> Union(%,"failed") sample : () -> %
+--R size : () -> NonNegativeInteger zero? : % -> Boolean
+--R ?~=? : (%,%) -> Boolean
--R ?*? : (NonNegativeInteger,%) -> %
--R ?**? : (%,NonNegativeInteger) -> %
--R ?^? : (%,NonNegativeInteger) -> %
@@ -75285,7 +75287,6 @@ LyndonWord(VarSet:OrderedSet):Public == Private where
--S 1 of 1
)show MachineComplex
---R
--R MachineComplex is a domain constructor
--R Abbreviation for MachineComplex is MCMPLX
--R This constructor is exposed in this frame.
@@ -75393,6 +75394,7 @@ LyndonWord(VarSet:OrderedSet):Public == Private where
--R discriminant : Vector(%) -> MachineFloat
--R divide : (%,%) -> Record(quotient: %,remainder: %) if MachineFloat has EUCDOM
--R ?.? : (%,MachineFloat) -> % if MachineFloat has ELTAB(MFLOAT,MFLOAT)
+--R enumerate : () -> List(%) if MachineFloat has FINITE
--R euclideanSize : % -> NonNegativeInteger if MachineFloat has EUCDOM
--R eval : (%,List(MachineFloat),List(MachineFloat)) -> % if MachineFloat has EVALAB(MFLOAT)
--R eval : (%,MachineFloat,MachineFloat) -> % if MachineFloat has EVALAB(MFLOAT)
@@ -79876,7 +79878,6 @@ Matrix(R): Exports == Implementation where
--S 1 of 1
)show ModMonic
---R
--R ModMonic(R: Ring,Rep: UnivariatePolynomialCategory(R)) is a domain constructor
--R Abbreviation for ModMonic is MODMON
--R This constructor is not exposed in this frame.
@@ -79969,6 +79970,7 @@ Matrix(R): Exports == Implementation where
--R ?.? : (%,Fraction(%)) -> Fraction(%) if R has INTDOM
--R elt : (Fraction(%),R) -> R if R has FIELD
--R elt : (Fraction(%),Fraction(%)) -> Fraction(%) if R has INTDOM
+--R enumerate : () -> List(%) if R has FINITE
--R euclideanSize : % -> NonNegativeInteger if R has FIELD
--R eval : (%,List(SingletonAsOrderedSet),List(%)) -> %
--R eval : (%,SingletonAsOrderedSet,%) -> %
@@ -81394,7 +81396,6 @@ MoebiusTransform(F): Exports == Implementation where
--S 1 of 1
)show MonoidRing
---R
--R MonoidRing(R: Ring,M: Monoid) is a domain constructor
--R Abbreviation for MonoidRing is MRING
--R This constructor is not exposed in this frame.
@@ -81424,6 +81425,7 @@ MoebiusTransform(F): Exports == Implementation where
--R characteristic : () -> NonNegativeInteger
--R charthRoot : % -> Union(%,"failed") if R has CHARNZ
--R coerce : List(Record(coef: R,monom: M)) -> %
+--R enumerate : () -> List(%) if M has FINITE and R has FINITE
--R index : PositiveInteger -> % if M has FINITE and R has FINITE
--R leadingCoefficient : % -> R if M has ORDSET
--R leadingMonomial : % -> M if M has ORDSET
@@ -89081,7 +89083,6 @@ OrderedCompletion(R:SetCategory): Exports == Implementation where
--S 1 of 1
)show OrderedDirectProduct
---R
--R OrderedDirectProduct(dim: NonNegativeInteger,S: OrderedAbelianMonoidSup,f: ((Vector(S),Vector(S)) -> Boolean)) is a domain constructor
--R Abbreviation for OrderedDirectProduct is ODP
--R This constructor is not exposed in this frame.
@@ -89144,6 +89145,7 @@ OrderedCompletion(R:SetCategory): Exports == Implementation where
--R dimension : () -> CardinalNumber if S has FIELD
--R dot : (%,%) -> S if S has RING
--R entry? : (S,%) -> Boolean if $ has finiteAggregate and S has SETCAT
+--R enumerate : () -> List(%) if S has FINITE
--R eval : (%,List(S),List(S)) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,S,S) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,Equation(S)) -> % if S has EVALAB(S) and S has SETCAT
@@ -103217,7 +103219,6 @@ PositiveInteger: Join(AbelianSemiGroup,OrderedSet,Monoid) with
--S 1 of 1
)show PrimeField
---R
--R PrimeField(p: PositiveInteger) is a domain constructor
--R Abbreviation for PrimeField is PF
--R This constructor is exposed in this frame.
@@ -103240,24 +103241,25 @@ PositiveInteger: Join(AbelianSemiGroup,OrderedSet,Monoid) with
--R convert : % -> Integer coordinates : % -> Vector(%)
--R createPrimitiveElement : () -> % degree : % -> PositiveInteger
--R differentiate : % -> % dimension : () -> CardinalNumber
---R factor : % -> Factored(%) gcd : List(%) -> %
---R gcd : (%,%) -> % hash : % -> SingleInteger
---R inGroundField? : % -> Boolean index : PositiveInteger -> %
---R init : () -> % inv : % -> %
---R latex : % -> String lcm : List(%) -> %
---R lcm : (%,%) -> % lookup : % -> PositiveInteger
---R norm : % -> % one? : % -> Boolean
---R order : % -> PositiveInteger prime? : % -> Boolean
---R primeFrobenius : % -> % primitive? : % -> Boolean
---R primitiveElement : () -> % ?quo? : (%,%) -> %
---R random : () -> % recip : % -> Union(%,"failed")
---R ?rem? : (%,%) -> % represents : Vector(%) -> %
---R retract : % -> % sample : () -> %
---R size : () -> NonNegativeInteger sizeLess? : (%,%) -> Boolean
---R squareFree : % -> Factored(%) squareFreePart : % -> %
---R trace : % -> % transcendent? : % -> Boolean
---R unit? : % -> Boolean unitCanonical : % -> %
---R zero? : % -> Boolean ?~=? : (%,%) -> Boolean
+--R enumerate : () -> List(%) factor : % -> Factored(%)
+--R gcd : List(%) -> % gcd : (%,%) -> %
+--R hash : % -> SingleInteger inGroundField? : % -> Boolean
+--R index : PositiveInteger -> % init : () -> %
+--R inv : % -> % latex : % -> String
+--R lcm : List(%) -> % lcm : (%,%) -> %
+--R lookup : % -> PositiveInteger norm : % -> %
+--R one? : % -> Boolean order : % -> PositiveInteger
+--R prime? : % -> Boolean primeFrobenius : % -> %
+--R primitive? : % -> Boolean primitiveElement : () -> %
+--R ?quo? : (%,%) -> % random : () -> %
+--R recip : % -> Union(%,"failed") ?rem? : (%,%) -> %
+--R represents : Vector(%) -> % retract : % -> %
+--R sample : () -> % size : () -> NonNegativeInteger
+--R sizeLess? : (%,%) -> Boolean squareFree : % -> Factored(%)
+--R squareFreePart : % -> % trace : % -> %
+--R transcendent? : % -> Boolean unit? : % -> Boolean
+--R unitCanonical : % -> % zero? : % -> Boolean
+--R ?~=? : (%,%) -> Boolean
--R ?*? : (NonNegativeInteger,%) -> %
--R ?**? : (%,NonNegativeInteger) -> %
--R Frobenius : % -> % if $ has FINITE
@@ -104713,7 +104715,6 @@ PseudoAlgebraicClosureOfAlgExtOfRationalNumber(downLevel:K):Exp == Impl where
--S 1 of 1
)show PseudoAlgebraicClosureOfFiniteField
---R
--R PseudoAlgebraicClosureOfFiniteField(K: FiniteFieldCategory) is a domain constructor
--R Abbreviation for PseudoAlgebraicClosureOfFiniteField is PACOFF
--R This constructor is exposed in this frame.
@@ -104736,27 +104737,27 @@ PseudoAlgebraicClosureOfAlgExtOfRationalNumber(downLevel:K):Exp == Impl where
--R coerce : % -> % coerce : Integer -> %
--R coerce : % -> OutputForm conjugate : % -> %
--R createPrimitiveElement : () -> % differentiate : % -> %
---R dimension : () -> CardinalNumber extDegree : % -> PositiveInteger
---R factor : % -> Factored(%) fullOutput : % -> OutputForm
---R gcd : List(%) -> % gcd : (%,%) -> %
---R ground? : % -> Boolean hash : % -> SingleInteger
---R inGroundField? : % -> Boolean index : PositiveInteger -> %
---R init : () -> % inv : % -> %
---R latex : % -> String lcm : List(%) -> %
---R lcm : (%,%) -> % lookup : % -> PositiveInteger
---R maxTower : List(%) -> % one? : % -> Boolean
---R order : % -> PositiveInteger previousTower : % -> %
---R prime? : % -> Boolean primeFrobenius : % -> %
---R primitive? : % -> Boolean primitiveElement : () -> %
---R ?quo? : (%,%) -> % random : () -> %
---R recip : % -> Union(%,"failed") ?rem? : (%,%) -> %
---R retract : % -> K sample : () -> %
---R setTower! : % -> Void size : () -> NonNegativeInteger
---R sizeLess? : (%,%) -> Boolean squareFree : % -> Factored(%)
---R squareFreePart : % -> % transcendent? : % -> Boolean
---R unit? : % -> Boolean unitCanonical : % -> %
---R vectorise : (%,%) -> Vector(%) zero? : % -> Boolean
---R ?~=? : (%,%) -> Boolean
+--R dimension : () -> CardinalNumber enumerate : () -> List(%)
+--R extDegree : % -> PositiveInteger factor : % -> Factored(%)
+--R fullOutput : % -> OutputForm gcd : List(%) -> %
+--R gcd : (%,%) -> % ground? : % -> Boolean
+--R hash : % -> SingleInteger inGroundField? : % -> Boolean
+--R index : PositiveInteger -> % init : () -> %
+--R inv : % -> % latex : % -> String
+--R lcm : List(%) -> % lcm : (%,%) -> %
+--R lookup : % -> PositiveInteger maxTower : List(%) -> %
+--R one? : % -> Boolean order : % -> PositiveInteger
+--R previousTower : % -> % prime? : % -> Boolean
+--R primeFrobenius : % -> % primitive? : % -> Boolean
+--R primitiveElement : () -> % ?quo? : (%,%) -> %
+--R random : () -> % recip : % -> Union(%,"failed")
+--R ?rem? : (%,%) -> % retract : % -> K
+--R sample : () -> % setTower! : % -> Void
+--R size : () -> NonNegativeInteger sizeLess? : (%,%) -> Boolean
+--R squareFree : % -> Factored(%) squareFreePart : % -> %
+--R transcendent? : % -> Boolean unit? : % -> Boolean
+--R unitCanonical : % -> % vectorise : (%,%) -> Vector(%)
+--R zero? : % -> Boolean ?~=? : (%,%) -> Boolean
--R ?*? : (NonNegativeInteger,%) -> %
--R ?**? : (%,NonNegativeInteger) -> %
--R Frobenius : % -> % if K has FINITE
@@ -107478,7 +107479,6 @@ Queue(S:SetCategory): QueueAggregate S with
--S 1 of 1
)show RadicalFunctionField
---R
--R RadicalFunctionField(F: UniqueFactorizationDomain,UP: UnivariatePolynomialCategory(F),UPUP: UnivariatePolynomialCategory(Fraction(UP)),radicnd: Fraction(UP),n: NonNegativeInteger) is a domain constructor
--R Abbreviation for RadicalFunctionField is RADFF
--R This constructor is not exposed in this frame.
@@ -107560,6 +107560,7 @@ Queue(S:SetCategory): QueueAggregate S with
--R discriminant : Vector(%) -> Fraction(UP)
--R divide : (%,%) -> Record(quotient: %,remainder: %) if Fraction(UP) has FIELD
--R elliptic : () -> Union(UP,"failed")
+--R enumerate : () -> List(%) if Fraction(UP) has FINITE
--R euclideanSize : % -> NonNegativeInteger if Fraction(UP) has FIELD
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed") if Fraction(UP) has FIELD
--R exquo : (%,%) -> Union(%,"failed") if Fraction(UP) has FIELD
@@ -116670,7 +116671,6 @@ Set(S:SetCategory): FiniteSetAggregate S == add
--S 1 of 1
)show SetOfMIntegersInOneToN
---R
--R SetOfMIntegersInOneToN(m: PositiveInteger,n: PositiveInteger) is a domain constructor
--R Abbreviation for SetOfMIntegersInOneToN is SETMN
--R This constructor is not exposed in this frame.
@@ -116678,10 +116678,11 @@ Set(S:SetCategory): FiniteSetAggregate S == add
--R
--R------------------------------- Operations --------------------------------
--R ?=? : (%,%) -> Boolean coerce : % -> OutputForm
---R enumerate : () -> Vector(%) hash : % -> SingleInteger
---R index : PositiveInteger -> % latex : % -> String
---R lookup : % -> PositiveInteger random : () -> %
---R size : () -> NonNegativeInteger ?~=? : (%,%) -> Boolean
+--R enumerate : () -> Vector(%) enumerate : () -> List(%)
+--R hash : % -> SingleInteger index : PositiveInteger -> %
+--R latex : % -> String lookup : % -> PositiveInteger
+--R random : () -> % size : () -> NonNegativeInteger
+--R ?~=? : (%,%) -> Boolean
--R delta : (%,PositiveInteger,PositiveInteger) -> NonNegativeInteger
--R elements : % -> List(PositiveInteger)
--R incrementKthElement : (%,PositiveInteger) -> Union(%,"failed")
@@ -117629,7 +117630,6 @@ SExpressionOf(Str, Sym, Int, Flt, Expr): Decl == Body where
--S 1 of 1
)show SimpleAlgebraicExtension
---R
--R SimpleAlgebraicExtension(R: CommutativeRing,UP: UnivariatePolynomialCategory(R),M: UP) is a domain constructor
--R Abbreviation for SimpleAlgebraicExtension is SAE
--R This constructor is not exposed in this frame.
@@ -117697,6 +117697,7 @@ SExpressionOf(Str, Sym, Int, Flt, Expr): Decl == Body where
--R discreteLog : (%,%) -> Union(NonNegativeInteger,"failed") if R has FFIELDC
--R discreteLog : % -> NonNegativeInteger if R has FFIELDC
--R divide : (%,%) -> Record(quotient: %,remainder: %) if R has FIELD
+--R enumerate : () -> List(%) if R has FINITE
--R euclideanSize : % -> NonNegativeInteger if R has FIELD
--R expressIdealMember : (List(%),%) -> Union(List(%),"failed") if R has FIELD
--R exquo : (%,%) -> Union(%,"failed") if R has FIELD
@@ -123299,7 +123300,6 @@ SparseUnivariateTaylorSeries(Coef,var,cen): Exports == Implementation where
--S 1 of 1
)show SplitHomogeneousDirectProduct
---R
--R SplitHomogeneousDirectProduct(dimtot: NonNegativeInteger,dim1: NonNegativeInteger,S: OrderedAbelianMonoidSup) is a domain constructor
--R Abbreviation for SplitHomogeneousDirectProduct is SHDP
--R This constructor is not exposed in this frame.
@@ -123362,6 +123362,7 @@ SparseUnivariateTaylorSeries(Coef,var,cen): Exports == Implementation where
--R dimension : () -> CardinalNumber if S has FIELD
--R dot : (%,%) -> S if S has RING
--R entry? : (S,%) -> Boolean if $ has finiteAggregate and S has SETCAT
+--R enumerate : () -> List(%) if S has FINITE
--R eval : (%,List(S),List(S)) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,S,S) -> % if S has EVALAB(S) and S has SETCAT
--R eval : (%,Equation(S)) -> % if S has EVALAB(S) and S has SETCAT
diff --git a/books/bookvol10.4.pamphlet b/books/bookvol10.4.pamphlet
index 38232e5..8bba32f 100644
--- a/books/bookvol10.4.pamphlet
+++ b/books/bookvol10.4.pamphlet
@@ -146326,6 +146326,8 @@ radicalRoots([b,c],[x,y])
--R Type: List(List(Expression(Integer)))
--E 14
+)clear all
+
--S 15 of 21
t1:=radicalSolve(x^3 + x^2 - 7 = 0,x)
--R
diff --git a/changelog b/changelog
index f282c0b..d5f2fd5 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,8 @@
+20130526 tpd src/axiom-website/patches.html 20130526.01.tpd.patch
+20130526 tpd src/algebra/Makefile fix failing test cases
+20130526 tpd books/bookvol10.4 fix failing test cases
+20130526 tpd books/bookvol10.3 fix failing test cases
+20130526 tpd books/bookvol10.2 fix failing test cases
20130522 tpd src/axiom-website/patches.html 20130522.02.tpd.patch
20130522 tpd buglist remove error message for deleted files
20130522 tpd src/axiom-website/patches.html 20130522.01.tpd.patch
diff --git a/src/algebra/Makefile.pamphlet b/src/algebra/Makefile.pamphlet
index 90afa2f..4ec44db 100644
--- a/src/algebra/Makefile.pamphlet
+++ b/src/algebra/Makefile.pamphlet
@@ -17844,7 +17844,6 @@ single stanza:
else \
echo ')read $*.input' | ${TESTSYS} >${TMP}/trace ; \
fi ; \
- rm $*.input ; \
if [ -z "${NOISE}" ] ; then \
echo ')lisp (regress "$*.output")' | ${TESTSYS} \
| egrep -v '(Timestamp|Version)' | tee $*.regress ; \
@@ -18414,7 +18413,7 @@ REGRESS= \
Kovacic.regress \
LaplaceTransform.regress \
LaurentPolynomial.regress \
- LazyRepresentativeAttribute.regress \
+ LazyRepresentationAttribute.regress \
LazyStreamAggregate.regress \
LazardSetSolvingPackage.regress \
LeadingCoefDetermination.regress \
@@ -18541,7 +18540,7 @@ REGRESS= \
NormRetractPackage.regress \
NotherianAttribute.regress \
NottinghamGroup.regress \
- NoZeroDivisors.regress \
+ NoZeroDivisorsAttribute.regress \
NPCoef.regress \
NullSquareAttribute.regress \
NumberFieldIntegralBasis.regress \
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index 78e00c1..16d2577 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -4179,6 +4179,8 @@ books/bookvol5 merge ht-util.lisp
src/Makefile fix {OUT} bug
20130522.02.tpd.patch
buglist remove error message for deleted files
+20130526.01.tpd.patch
+books/bookvol10.* fix failing test cases