diff --git a/changelog b/changelog index 187f1c4..2a699f6 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,20 @@ +20080830 tpd src/algebra/trigcat.spad graphviz dotfile decoration +20080830 tpd src/algebra/si.spad graphviz dotfile decoration +20080830 tpd src/algebra/sf.spad graphviz dotfile decoration +20080830 tpd src/algebra/pscat.spad graphviz dotfile decoration +20080830 tpd src/algebra/pattern.spad graphviz dotfile decoration +20080830 tpd src/algebra/patmatch1.spad graphviz dotfile decoration +20080830 tpd src/algebra/omcat.spad graphviz dotfile decoration +20080830 tpd src/algebra/misc.spad graphviz dotfile decoration +20080830 tpd src/algebra/integer.spad graphviz dotfile decoration +20080830 tpd src/algebra/equation1.spad graphviz dotfile decoration +20080830 tpd src/algebra/coerce.spad graphviz dotfile decoration +20080830 tpd src/algebra/catdef.spad graphviz dotfile decoration +20080830 tpd src/algebra/boolean.spad graphviz dotfile decoration +20080830 tpd src/algebra/bags.spad graphviz dotfile decoration +20080830 tpd src/algebra/algcat.spad graphviz dotfile decoration +20080830 tpd src/algebra/aggcat2.spad graphviz dotfile decoration +20080830 tpd src/algebra/acplot.spad graphviz dotfile decoration 20080829 tpd src/algebra/aggcat.spad graphviz dotfile decoration 20080828 mxr src/interp/i-funsel.boot add cost to bottomUp output 20080827 wsp src/algebra/tex.spad change \over to \frac diff --git a/src/algebra/acplot.spad.pamphlet b/src/algebra/acplot.spad.pamphlet index a39e3b6..b76e71b 100644 --- a/src/algebra/acplot.spad.pamphlet +++ b/src/algebra/acplot.spad.pamphlet @@ -164,6 +164,10 @@ o $AXIOM/doc/src/algebra/acplot.spad.dvi @ \subsection{realsolv code} +<>= +"REALSOLV" -> "PACKAGE" +"RealSolvePackage()" -> "Package" +@ <>= )abbrev package REALSOLV RealSolvePackage @@ -247,6 +251,10 @@ o )show PlaneAlgebraicCurvePlot o $AXIOM/doc/src/algebra/acplot.spad.dvi @ +<>= +"ACPLOT" -> "PPCURVE" +"PlaneAlgebraicCurvePlot()" -> "PlottablePlaneCurveCategory()" +@ <>= --% PlaneAlgebraicCurvePlot ++ Plot a NON-SINGULAR plane algebraic curve p(x,y) = 0. diff --git a/src/algebra/aggcat2.spad.pamphlet b/src/algebra/aggcat2.spad.pamphlet index 6a4c57b..be3a656 100644 --- a/src/algebra/aggcat2.spad.pamphlet +++ b/src/algebra/aggcat2.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{package FLAGG2 FiniteLinearAggregateFunctions2} +<>= +"FLAGG2" -> "PACKAGE" +"FiniteLinearAggregateFunctions2()" -> "Package" +@ <>= )abbrev package FLAGG2 FiniteLinearAggregateFunctions2 --% FiniteLinearAggregateFunctions2 @@ -126,6 +130,10 @@ FiniteLinearAggregateFunctions2(S, A, R, B): @ \section{package FSAGG2 FiniteSetAggregateFunctions2} +<>= +"FSAGG2" -> "PACKAGE" +"FiniteSetAggregateFunctions2()" -> "Package" +@ <>= )abbrev package FSAGG2 FiniteSetAggregateFunctions2 diff --git a/src/algebra/algcat.spad.pamphlet b/src/algebra/algcat.spad.pamphlet index 5c02831..0462ae2 100644 --- a/src/algebra/algcat.spad.pamphlet +++ b/src/algebra/algcat.spad.pamphlet @@ -10,6 +10,11 @@ \tableofcontents \eject \section{category FINRALG FiniteRankAlgebra} +<>= +"FINRALG" -> "ALGEBRA" +"FiniteRankAlgebra(a:CommutativeRing,b:UnivariatePolynomialCategory(a))" -> + "Algebra(a:CommutativeRing)" +@ <>= )abbrev category FINRALG FiniteRankAlgebra ++ Author: Barry Trager @@ -88,6 +93,11 @@ FiniteRankAlgebra(R:CommutativeRing, UP:UnivariatePolynomialCategory R): @ \section{category FRAMALG FramedAlgebra} +<>= +"FRAMALG" -> "FINRALG" +"FramedAlgebra(a:CommutativeRing,b:UnivariatePolynomialCategory(a))" -> + "FiniteRankAlgebra(a:CommutativeRing,b:UnivariatePolynomialCategory(a))" +@ <>= )abbrev category FRAMALG FramedAlgebra ++ Author: Barry Trager @@ -179,6 +189,23 @@ FramedAlgebra(R:CommutativeRing, UP:UnivariatePolynomialCategory R): @ \section{category MONOGEN MonogenicAlgebra} +<>= +"MONOGEN" -> "FRAMALG" +"MonogenicAlgebra(a:CommutativeRing,b:UnivariatePolynomialCategory(a))" -> + "FramedAlgebra(a:CommutativeRing,b:UnivariatePolynomialCategory(a))" +"MONOGEN" -> "COMRING" +"MonogenicAlgebra(a:CommutativeRing,b:UnivariatePolynomialCategory(a))" -> + "CommutativeRing()" +"MONOGEN" -> "KONVERT" +"MonogenicAlgebra(a:CommutativeRing,b:UnivariatePolynomialCategory(a))" -> + "ConvertibleTo(UnivariatePolynomialCategory(CommutativeRing))" +"MONOGEN" -> "FRETRCT" +"MonogenicAlgebra(a:CommutativeRing,b:UnivariatePolynomialCategory(a))" -> + "FullyRetractableTo(a:CommutativeRing)" +"MONOGEN" -> "FLINEXP" +"MonogenicAlgebra(a:CommutativeRing,b:UnivariatePolynomialCategory(a))" -> + "FullyLinearlyExplicitRingOver(a:CommutativeRing)" +@ <>= )abbrev category MONOGEN MonogenicAlgebra ++ Author: Barry Trager @@ -257,6 +284,11 @@ MonogenicAlgebra(R:CommutativeRing, UP:UnivariatePolynomialCategory R): @ \section{package CPIMA CharacteristicPolynomialInMonogenicalAlgebra} +<>= +"CPIMA" -> "PACKAGE" +"CharacteristicPolynomialInMonogenicalAlgebra(a:COMRING,b:UPOLYC(a),c:MONOGEN(a,b))" + -> "Package" +@ <>= )abbrev package CPIMA CharacteristicPolynomialInMonogenicalAlgebra ++ Author: Claude Quitte @@ -294,6 +326,11 @@ CharacteristicPolynomialInMonogenicalAlgebra(R : CommutativeRing, @ \section{package NORMMA NormInMonogenicAlgebra} +<>= +"NORMMA" -> "PACKAGE" +"NormInMonogenicAlgebra(a:GcdDomain,b:UPOLYC(a),c:MONOGEN(a,b),d:UPOLYC(c))" + -> "Package" +@ <>= )abbrev package NORMMA NormInMonogenicAlgebra ++ Author: Manuel Bronstein diff --git a/src/algebra/bags.spad.pamphlet b/src/algebra/bags.spad.pamphlet index a2fe3f3..f5cc60d 100644 --- a/src/algebra/bags.spad.pamphlet +++ b/src/algebra/bags.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{domain STACK Stack} +<>= +"STACK" -> "SKAGG" +"Stack(a:SetCategory)" -> "StackAggregate(a:SetCategory)" +@ <>= )abbrev domain STACK Stack ++ Author: Michael Monagan and Stephen Watt @@ -32,7 +36,7 @@ Stack(S:SetCategory): StackAggregate S with ++ stack([x,y,...,z]) creates a stack with first (top) ++ element x, second element y,...,and last element z. ++ - ++X a:Stack INT:= stack [1,2,3,4,5] + ++E a:Stack INT:= stack [1,2,3,4,5] == add Rep := Reference List S @@ -59,6 +63,10 @@ Stack(S:SetCategory): StackAggregate S with @ \section{domain ASTACK ArrayStack} +<>= +"ASTACK" -> "STACK" +"ArrayStack(a:SetCategory)" -> "Stack(a:SetCategory)" +@ <>= )abbrev domain ASTACK ArrayStack ++ Author: Michael Monagan and Stephen Watt @@ -81,7 +89,7 @@ ArrayStack(S:SetCategory): StackAggregate(S) with ++ arrayStack([x,y,...,z]) creates an array stack with first (top) ++ element x, second element y,...,and last element z. ++ - ++X c:ArrayStack INT:= arrayStack [1,2,3,4,5] + ++E c:ArrayStack INT:= arrayStack [1,2,3,4,5] == add Rep := IndexedFlexibleArray(S,0) @@ -112,6 +120,10 @@ ArrayStack(S:SetCategory): StackAggregate(S) with @ \section{domain QUEUE Queue} +<>= +"QUEUE" -> "QUAGG" +"Queue(a:SetCategory)" -> "QueueAggregate(a:SetCategory)" +@ <>= )abbrev domain QUEUE Queue ++ Author: Michael Monagan and Stephen Watt @@ -134,7 +146,7 @@ Queue(S:SetCategory): QueueAggregate S with ++ queue([x,y,...,z]) creates a queue with first (top) ++ element x, second element y,...,and last (bottom) element z. ++ - ++X e:Queue INT:= queue [1,2,3,4,5] + ++E e:Queue INT:= queue [1,2,3,4,5] == Stack S add Rep := Reference List S @@ -159,6 +171,10 @@ Queue(S:SetCategory): QueueAggregate S with @ \section{domain DEQUEUE Dequeue} +<>= +"DEQUEUE" -> "DQAGG" +"Dequeue(a:SetCategory)" -> "DequeueAggregate(a:SetCategory)" +@ <>= )abbrev domain DEQUEUE Dequeue ++ Author: Michael Monagan and Stephen Watt @@ -181,7 +197,7 @@ Dequeue(S:SetCategory): DequeueAggregate S with ++ dequeue([x,y,...,z]) creates a dequeue with first (top or front) ++ element x, second element y,...,and last (bottom or back) element z. ++ - ++X g:Dequeue INT:= dequeue [1,2,3,4,5] + ++E g:Dequeue INT:= dequeue [1,2,3,4,5] == Queue S add Rep := Reference List S @@ -352,6 +368,10 @@ o )show Heap o $AXIOM/doc/src/algebra/bags.spad.dvi @ +<>= +"HEAP" -> "PRQAGG" +"Heap(a:OrderedSet)" -> "PriorityQueueAggregate(a:OrderedSet)" +@ <>= )abbrev domain HEAP Heap ++ Author: Michael Monagan and Stephen Watt @@ -376,7 +396,7 @@ Heap(S:OrderedSet): Exports == Implementation where ++ heap(ls) creates a heap of elements consisting of the ++ elements of ls. ++ - ++X i:Heap INT := heap [1,6,3,7,5,2,4] + ++E i:Heap INT := heap [1,6,3,7,5,2,4] Implementation == IndexedFlexibleArray(S,0) add Rep := IndexedFlexibleArray( S,0) diff --git a/src/algebra/boolean.spad.pamphlet b/src/algebra/boolean.spad.pamphlet index 84632fa..41e9347 100644 --- a/src/algebra/boolean.spad.pamphlet +++ b/src/algebra/boolean.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{domain REF Reference} +<>= +"REF" -> "TYPE" +"Reference(a:Type)" -> "Type()" +@ <>= )abbrev domain REF Reference ++ Author: Stephen M. Watt @@ -95,6 +99,10 @@ Note that this code is not included in the generated catdef.spad file. (MAKEPROP (QUOTE |Reference|) (QUOTE |infovec|) (LIST (QUOTE #(NIL NIL NIL NIL NIL NIL (|local| |#1|) (QUOTE |Rep|) (|Boolean|) |REF;=;2$B;1| |REF;ref;S$;2| |REF;elt;$S;3| |REF;setelt;$2S;4| |REF;deref;$S;5| |REF;setref;$2S;6| (|String|) (|OutputForm|) (0 . |message|) (5 . |coerce|) (|List| |$|) (10 . |prefix|) (16 . |coerce|) (|SingleInteger|))) (QUOTE #(|~=| 21 |setref| 27 |setelt| 33 |ref| 39 |latex| 44 |hash| 49 |elt| 54 |deref| 59 |coerce| 64 |=| 69)) (QUOTE NIL) (CONS (|makeByteWordVec2| 1 (QUOTE (1 0 1 1))) (CONS (QUOTE #(|SetCategory&| NIL |BasicType&| NIL)) (CONS (QUOTE #((|SetCategory|) (|Type|) (|BasicType|) (|CoercibleTo| 16))) (|makeByteWordVec2| 22 (QUOTE (1 16 0 15 17 1 6 16 0 18 2 16 0 0 19 20 1 0 16 0 21 2 1 8 0 0 1 2 0 6 0 6 14 2 0 6 0 6 12 1 0 0 6 10 1 1 15 0 1 1 1 22 0 1 1 0 6 0 11 1 0 6 0 13 1 1 16 0 21 2 0 8 0 0 9)))))) (QUOTE |lookupComplete|))) @ \section{category LOGIC Logic} +<>= +"LOGIC" -> "BASTYPE" +"Logic()" -> "BasicType()" +@ <>= )abbrev category LOGIC Logic ++ Author: @@ -106,8 +114,6 @@ Note that this code is not included in the generated catdef.spad file. ++ Description: ++ `Logic' provides the basic operations for lattices, ++ e.g., boolean algebra. - - Logic: Category == BasicType with _~: % -> % ++ ~(x) returns the logical complement of x. @@ -120,6 +126,16 @@ Logic: Category == BasicType with @ \section{domain BOOLEAN Boolean} +<>= +"BOOLEAN" -> "ORDSET" +"Boolean()" -> "OrderedSet()" +"BOOLEAN" -> "FINITE" +"Boolean()" -> "Finite()" +"BOOLEAN" -> "LOGIC" +"Boolean()" -> "Logic()" +"BOOLEAN" -> "KONVERT" +"Boolean()" -> "ConvertibleTo(InputForm)" +@ <>= )abbrev domain BOOLEAN Boolean ++ Author: Stephen M. Watt @@ -458,6 +474,10 @@ This is eventually forcibly replaced by a recompiled version. @ \section{domain IBITS IndexedBits} +<>= +"IBITS" -> "BTAGG" +"IndexedBits(a:Integer)" -> "BitAggregate()" +@ <>= )abbrev domain IBITS IndexedBits ++ Author: Stephen Watt and Michael Monagan @@ -520,6 +540,10 @@ IndexedBits(mn:Integer): BitAggregate() with @ \section{domain BITS Bits} +<>= +"BITS" -> "BTAGG" +"Bits()" -> "BitAggregate()" +@ <>= )abbrev domain BITS Bits ++ Author: Stephen M. Watt diff --git a/src/algebra/catdef.spad.pamphlet b/src/algebra/catdef.spad.pamphlet index 38c9a1c..b16f4b2 100644 --- a/src/algebra/catdef.spad.pamphlet +++ b/src/algebra/catdef.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{category ABELGRP AbelianGroup} +<>= +"ABELGRP" -> "CABMON" +"AbelianGroup()" -> "CancellationAbelianMonoid()" +@ <>= )abbrev category ABELGRP AbelianGroup ++ Author: @@ -178,6 +182,10 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category ABELMON AbelianMonoid} +<>= +"ABELMON" -> "ABELSG" +"AbelianMonoid()" -> "AbelianSemiGroup()" +@ <>= )abbrev category ABELMON AbelianMonoid ++ Author: @@ -367,6 +375,10 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category ABELSG AbelianSemiGroup} +<>= +"ABELSG" -> "SETCAT" +"AbelianSemiGroup()" -> "SetCategory()" +@ <>= )abbrev category ABELSG AbelianSemiGroup ++ Author: @@ -521,6 +533,13 @@ Note that this code is not included in the generated catdef.spad file. (QUOTE |lookupComplete|))) @ \section{category ALGEBRA Algebra} +<>= +"ALGEBRA" -> "RING" +"Algebra(a:CommutativeRing)" -> "Ring()" +"ALGEBRA" -> "MODULE" +"Algebra(a:CommutativeRing)" -> "Module(a:CommutativeRing)" +"Algebra(Fraction(Integer))" -> "Algebra(a:CommutativeRing)" +@ <>= )abbrev category ALGEBRA Algebra ++ Author: @@ -551,6 +570,10 @@ Algebra(R:CommutativeRing): Category == @ \section{category BASTYPE BasicType} +<>= +"BASTYPE" -> "CATEGORY" +"BasicType()" -> "Category" +@ <>= )abbrev category BASTYPE BasicType --% BasicType @@ -574,6 +597,14 @@ BasicType(): Category == with @ \section{category BMODULE BiModule} +<>= +"BMODULE" -> "LMODULE" +"BiModule(a:Ring,b:Ring)" -> "LeftModule(a:Ring)" +"BiModule(a:CommutativeRing,b:CommutativeRing)" -> "BiModule(a:Ring,b:Ring)" +"BiModule(a:Ring,b:OrderedAbelianMonoid)" -> "BiModule(a:Ring,b:Ring)" +"BMODULE" -> "RMODULE" +"BiModule(a:Ring,b:Ring)" -> "RightModule(a:Ring)" +@ <>= )abbrev category BMODULE BiModule ++ Author: @@ -598,6 +629,10 @@ BiModule(R:Ring,S:Ring):Category == @ \section{category CABMON CancellationAbelianMonoid} +<>= +"CABMON" -> "ABELMON" +"CancellationAbelianMonoid()" -> "AbelianMonoid()" +@ <>= )abbrev category CABMON CancellationAbelianMonoid ++ Author: @@ -681,6 +716,10 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category CHARNZ CharacteristicNonZero} +<>= +"CHARNZ" -> "RING" +"CharacteristicNonZero()" -> "Ring()" +@ <>= )abbrev category CHARNZ CharacteristicNonZero ++ Author: @@ -701,6 +740,10 @@ CharacteristicNonZero():Category == Ring with @ \section{category CHARZ CharacteristicZero} +<>= +"CHARZ" -> "RING" +"CharacteristicZero()" -> "Ring()" +@ <>= )abbrev category CHARZ CharacteristicZero ++ Author: @@ -718,6 +761,12 @@ CharacteristicZero():Category == Ring @ \section{category COMRING CommutativeRing} +<>= +"COMRING" -> "RING" +"CommutativeRing()" -> "Ring()" +"COMRING" -> "BMODULE" +"CommutativeRing()" -> "BiModule(a:Ring,b:Ring)" +@ <>= )abbrev category COMRING CommutativeRing ++ Author: @@ -780,6 +829,10 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category DIFRING DifferentialRing} +<>= +"DIFRING" -> "RING" +"DifferentialRing()" -> "Ring()" +@ <>= )abbrev category DIFRING DifferentialRing ++ Author: @@ -945,6 +998,10 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category DIFEXT DifferentialExtension} +<>= +"DIFEXT" -> "RING" +"DifferentialExtension(a:Ring)" -> "Ring()" +@ <>= )abbrev category DIFEXT DifferentialExtension ++ Author: @@ -994,6 +1051,12 @@ DifferentialExtension(R:Ring): Category == Ring with @ \section{category DIVRING DivisionRing} +<>= +"DIVRING" -> "ENTIRER" +"DivisionRing()" -> "EntireRing()" +"DIVRING" -> "ALGEBRA" +"DivisionRing()" -> "Algebra(Fraction(Integer))" +@ <>= )abbrev category DIVRING DivisionRing ++ Author: @@ -1183,6 +1246,12 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category ENTIRER EntireRing} +<>= +"ENTIRER" -> "RING" +"EntireRing()" -> "Ring()" +"ENTIRER" -> "BMODULE" +"EntireRing()" -> "BiModule(a:Ring,b:Ring)" +@ <>= )abbrev category ENTIRER EntireRing ++ Author: @@ -1249,6 +1318,10 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category EUCDOM EuclideanDomain} +<>= +"EUCDOM" -> "PID" +"EuclideanDomain()" -> "PrincipalIdealDomain()" +@ <>= )abbrev category EUCDOM EuclideanDomain ++ Author: @@ -2066,6 +2139,14 @@ recompiling. <> @ \section{category FIELD Field} +<>= +"FIELD" -> "EUCDOM" +"Field()" -> "EuclideanDomain()" +"FIELD" -> "UFD" +"Field()" -> "UniqueFactorizationDomain()" +"FIELD" -> "DIVRING" +"Field()" -> "DivisionRing()" +@ <>= )abbrev category FIELD Field ++ Author: @@ -2116,6 +2197,10 @@ Field(): Category == Join(EuclideanDomain,UniqueFactorizationDomain, @ \section{category FINITE Finite} +<>= +"FINITE" -> "SETCAT" +"Finite()" -> "SetCategory()" +@ <>= )abbrev category FINITE Finite ++ Author: @@ -2153,6 +2238,12 @@ Finite(): Category == SetCategory with @ \section{category FLINEXP FullyLinearlyExplicitRingOver} +<>= +"FLINEXP" -> "LINEXP" +"FullyLinearlyExplicitRingOver(a:Ring)" -> "LinearlyExplicitRingOver(a:Ring)" +"FullyLinearlyExplicitRingOver(a:CommutativeRing)" -> + "FullyLinearlyExplicitRingOver(a:Ring)" +@ <>= )abbrev category FLINEXP FullyLinearlyExplicitRingOver ++ Author: @@ -2185,6 +2276,10 @@ FullyLinearlyExplicitRingOver(R:Ring):Category == @ \section{category GCDDOM GcdDomain} +<>= +"GCDDOM" -> "INTDOM" +"GcdDomain()" -> "IntegralDomain()" +@ <>= )abbrev category GCDDOM GcdDomain ++ Author: @@ -2575,6 +2670,10 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category GROUP Group} +<>= +"GROUP" -> "MONOID" +"Group()" -> "Monoid()" +@ <>= )abbrev category GROUP Group ++ Author: @@ -2620,6 +2719,14 @@ Group(): Category == Monoid with @ \section{category INTDOM IntegralDomain} +<>= +"INTDOM" -> "COMRING" +"IntegralDomain()" -> "CommutativeRing()" +"INTDOM" -> "ALGEBRA" +"IntegralDomain()" -> "Algebra(a:CommutativeRing)" +"INTDOM" -> "ENTIRER" +"IntegralDomain()" -> "EntireRing()" +@ <>= )abbrev category INTDOM IntegralDomain ++ Author: @@ -2844,6 +2951,11 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category LMODULE LeftModule} +<>= +"LMODULE" -> "ABELGRP" +"LeftModule(a:Rng)" -> "AbelianGroup()" +"LeftModule(a:Ring)" -> "LeftModule(a:Rng)" +@ <>= )abbrev category LMODULE LeftModule ++ Author: @@ -2871,6 +2983,11 @@ LeftModule(R:Rng):Category == AbelianGroup with @ \section{category LINEXP LinearlyExplicitRingOver} +<>= +"LINEXP" -> "RING" +"LinearlyExplicitRingOver(a:Ring)" -> "Ring()" +"LinearlyExplicitRingOver(Integer)" -> "LinearlyExplicitRingOver(a:Ring)" +@ <>= )abbrev category LINEXP LinearlyExplicitRingOver ++ Author: @@ -2894,6 +3011,11 @@ LinearlyExplicitRingOver(R:Ring): Category == Ring with @ \section{category MODULE Module} +<>= +"MODULE" -> "BMODULE" +"Module(a:CommutativeRing)" -> "BiModule(a:CommutativeRing,b:CommutativeRing)" +"Module(Field)" -> "Module(a:CommutativeRing)" +@ <>= )abbrev category MODULE Module ++ Author: @@ -2919,6 +3041,10 @@ Module(R:CommutativeRing): Category == BiModule(R,R) @ \section{category MONOID Monoid} +<>= +"MONOID" -> "SGROUP" +"Monoid()" -> "SemiGroup()" +@ <>= )abbrev category MONOID Monoid ++ Author: @@ -3095,6 +3221,12 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category OAGROUP OrderedAbelianGroup} +<>= +"OAGROUP" -> "OCAMON" +"OrderedAbelianGroup()" -> "OrderedCancellationAbelianMonoid()" +"OAGROUP" -> "ABELGRP" +"OrderedAbelianGroup()" -> "AbelianGroup()" +@ <>= )abbrev category OAGROUP OrderedAbelianGroup ++ Author: @@ -3115,6 +3247,12 @@ OrderedAbelianGroup(): Category == @ \section{category OAMON OrderedAbelianMonoid} +<>= +"OAMON" -> "OASGP" +"OrderedAbelianMonoid()" -> "OrderedAbelianSemiGroup()" +"OAMON" -> "ABELMON" +"OrderedAbelianMonoid()" -> "AbelianMonoid()" +@ <>= )abbrev category OAMON OrderedAbelianMonoid ++ Author: @@ -3135,6 +3273,10 @@ OrderedAbelianMonoid(): Category == @ \section{category OAMONS OrderedAbelianMonoidSup} +<>= +"OAMONS" -> "OCAMON" +"OrderedAbelianMonoidSup()" -> "OrderedCancellationAbelianMonoid()" +@ <>= )abbrev category OAMONS OrderedAbelianMonoidSup ++ Author: @@ -3165,6 +3307,12 @@ OrderedAbelianMonoidSup(): Category == OrderedCancellationAbelianMonoid with @ \section{category OASGP OrderedAbelianSemiGroup} +<>= +"OASGP" -> "ORDSET" +"OrderedAbelianSemiGroup()" -> "OrderedSet()" +"OASGP" -> "ABELMON" +"OrderedAbelianSemiGroup()" -> "AbelianMonoid()" +@ <>= )abbrev category OASGP OrderedAbelianSemiGroup ++ Author: @@ -3185,6 +3333,12 @@ OrderedAbelianSemiGroup(): Category == Join(OrderedSet, AbelianMonoid) @ \section{category OCAMON OrderedCancellationAbelianMonoid} +<>= +"OCAMON" -> "OAMON" +"OrderedCancellationAbelianMonoid()" -> "OrderedAbelianMonoid()" +"OCAMON" -> "CABMON" +"OrderedCancellationAbelianMonoid()" -> "CancellationAbelianMonoid()" +@ <>= )abbrev category OCAMON OrderedCancellationAbelianMonoid ++ Author: @@ -3205,6 +3359,12 @@ OrderedCancellationAbelianMonoid(): Category == @ \section{category ORDFIN OrderedFinite} +<>= +"ORDFIN" -> "ORDSET" +"OrderedFinite()" -> "OrderedSet()" +"ORDFIN" -> "FINITE" +"OrderedFinite()" -> "Finite()" +@ <>= )abbrev category ORDFIN OrderedFinite ++ Author: @@ -3223,6 +3383,12 @@ OrderedFinite(): Category == Join(OrderedSet, Finite) @ \section{category OINTDOM OrderedIntegralDomain} +<>= +"OINTDOM" -> "INTDOM" +"OrderedIntegralDomain()" -> "IntegralDomain()" +"OINTDOM" -> "ORDRING" +"OrderedIntegralDomain()" -> "OrderedRing()" +@ <>= )abbrev category OINTDOM OrderedIntegralDomain ++ Author: JH Davenport (after L Gonzalez-Vega) @@ -3275,6 +3441,12 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category ORDMON OrderedMonoid} +<>= +"ORDMON" -> "ORDSET" +"OrderedMonoid()" -> "OrderedSet()" +"ORDMON" -> "MONOID" +"OrderedMonoid()" -> "Monoid()" +@ <>= )abbrev category ORDMON OrderedMonoid ++ Author: @@ -3298,6 +3470,14 @@ OrderedMonoid(): Category == Join(OrderedSet, Monoid) @ \section{category ORDRING OrderedRing} +<>= +"ORDRING" -> "OAGROUP" +"OrderedRing()" -> "OrderedAbelianGroup()" +"ORDRING" -> "RING" +"OrderedRing()" -> "Ring()" +"ORDRING" -> "MONOID" +"OrderedRing()" -> "Monoid()" +@ <>= )abbrev category ORDRING OrderedRing ++ Author: @@ -3474,6 +3654,10 @@ Note that this code is not included in the generated catdef.spad file. (QUOTE |lookupComplete|))) @ \section{category ORDSET OrderedSet} +<>= +"ORDSET" -> "SETCAT" +"OrderedSet()" -> "SetCategory()" +@ <>= )abbrev category ORDSET OrderedSet ++ Author: @@ -3522,6 +3706,12 @@ OrderedSet(): Category == SetCategory with @ \section{category PDRING PartialDifferentialRing} +<>= +"PDRING" -> "RING" +"PartialDifferentialRing(a:SetCategory)" -> "Ring()" +"PartialDifferentialRing(a:OrderedSet)" -> + "PartialDifferentialRing(a:SetCategory)" +@ <>= )abbrev category PDRING PartialDifferentialRing ++ Author: @@ -3586,6 +3776,10 @@ PartialDifferentialRing(S:SetCategory): Category == Ring with @ \section{category PFECAT PolynomialFactorizationExplicit} +<>= +"PFECAT" -> "UFD" +"PolynomialFactorizationExplicit()" -> "UniqueFactorizationDomain()" +@ <>= )abbrev category PFECAT PolynomialFactorizationExplicit ++ Author: James Davenport @@ -3671,6 +3865,10 @@ PolynomialFactorizationExplicit(): Category == Definition where @ \section{category PID PrincipalIdealDomain} +<>= +"PID" -> "GCDDOM" +"PrincipalIdealDomain()" -> "GcdDomain()" +@ <>= )abbrev category PID PrincipalIdealDomain ++ Author: @@ -3704,6 +3902,11 @@ PrincipalIdealDomain(): Category == GcdDomain with @ \section{category RMODULE RightModule} +<>= +"RMODULE" -> "ABELGRP" +"RightModule(a:Rng)" -> "AbelianGroup()" +"RightModule(a:Ring)" -> "RightModule(a:Rng)" +@ <>= )abbrev category RMODULE RightModule ++ Author: @@ -3731,6 +3934,14 @@ RightModule(R:Rng):Category == AbelianGroup with @ \section{category RING Ring} +<>= +"RING" -> "RNG" +"Ring()" -> "Rng()" +"RING" -> "MONOID" +"Ring()" -> "Monoid()" +"RING" -> "LMODULE" +"Ring()" -> "LeftModule(a:Ring)" +@ <>= )abbrev category RING Ring ++ Author: @@ -3865,6 +4076,12 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category RNG Rng} +<>= +"RNG" -> "ABELGRP" +"Rng()" -> "AbelianGroup()" +"RNG" -> "SGROUP" +"Rng()" -> "SemiGroup()" +@ <>= )abbrev category RNG Rng ++ Author: @@ -3930,6 +4147,10 @@ operator ``*''. A Semigroup $G(S,*)$ is: \item a binary multiplicative operator ``*'' \item associative. $\forall a,b,c \in S, a*(b*c) = (a*b)*c$ \end{itemize} +<>= +"SGROUP" -> "SETCAT" +"SemiGroup()" -> "SetCategory()" +@ <>= )abbrev category SGROUP SemiGroup ++ Author: @@ -3964,6 +4185,12 @@ SemiGroup(): Category == SetCategory with @ \section{category SETCAT SetCategory} +<>= +"SETCAT" -> "BASTYPE" +"SetCategory()" -> "BasicType()" +"SETCAT" -> "KOERCE" +"SetCategory()" -> "CoercibleTo(OutputForm)" +@ <>= )abbrev category SETCAT SetCategory ++ Author: @@ -4119,6 +4346,10 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category STEP StepThrough} +<>= +"STEP" -> "SETCAT" +"StepThrough()" -> "SetCategory()" +@ <>= )abbrev category STEP StepThrough ++ Author: @@ -4151,6 +4382,10 @@ StepThrough(): Category == SetCategory with @ \section{category UFD UniqueFactorizationDomain} +<>= +"UFD" -> "GCDDOM" +"UniqueFactorizationDomain()" -> "GcdDomain()" +@ <>= )abbrev category UFD UniqueFactorizationDomain ++ Author: @@ -4366,6 +4601,10 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category VSPACE VectorSpace} +<>= +"VSPACE" -> "MODULE" +"VectorSpace(a:Field)" -> "Module(Field)" +@ <>= )abbrev category VSPACE VectorSpace ++ Author: diff --git a/src/algebra/coerce.spad.pamphlet b/src/algebra/coerce.spad.pamphlet index 3ad352b..9c0935c 100644 --- a/src/algebra/coerce.spad.pamphlet +++ b/src/algebra/coerce.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{category TYPE Type} +<>= +"TYPE" -> "CATEGORY" +"Type()" -> "Category" +@ <>= )abbrev category TYPE Type ++ The new fundamental Type (keeping Object for 1.5 as well) @@ -21,6 +25,12 @@ Type(): Category == with nil @ \section{category KOERCE CoercibleTo} +<>= +"KOERCE" -> "CATEGORY" +"CoercibleTo(a:Type)" -> "Category" +"CoercibleTo(OutputForm)" -> + "CoercibleTo(a:Type)" +@ <>= )abbrev category KOERCE CoercibleTo ++ Category for coerce @@ -36,6 +46,26 @@ CoercibleTo(S:Type): Category == with @ \section{category KONVERT ConvertibleTo} +<>= +"KONVERT" -> "CATEGORY" +"ConvertibleTo(a:Type)" -> "Category" +"ConvertibleTo(DoubleFloat)" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(Float)" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(InputForm)" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(Integer)" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(Pattern(Integer))" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(Pattern(Float))" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(Complex(Float))" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(Complex(DoubleFloat))" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(String)" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(Symbol)" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(SExpression)" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(Pattern(Base))" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(List(Integer))" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(List(Character))" -> "ConvertibleTo(a:Type)" +"ConvertibleTo(UnivariatePolynomialCategory(CommutativeRing))" -> + "ConvertibleTo(a:Type)" +@ <>= )abbrev category KONVERT ConvertibleTo ++ Category for convert @@ -52,6 +82,16 @@ ConvertibleTo(S:Type): Category == with @ \section{category RETRACT RetractableTo} +<>= +"RETRACT" -> "CATEGORY" +"RetractableTo(a:Type)" -> "Category" +"RetractableTo(SetCategory)" -> "RetractableTo(a:Type)" +"RetractableTo(Symbol)" -> "RetractableTo(a:Type)" +"RetractableTo(Integer)" -> "RetractableTo(a:Type)" +"RetractableTo(NonNegativeInteger)" -> "RetractableTo(a:Type)" +"RetractableTo(Fraction(Integer))" -> "RetractableTo(a:Type)" +"RetractableTo(Float)" -> "RetractableTo(a:Type)" +@ <>= )abbrev category RETRACT RetractableTo ++ Category for retract diff --git a/src/algebra/equation1.spad.pamphlet b/src/algebra/equation1.spad.pamphlet index a147e68..116e585 100644 --- a/src/algebra/equation1.spad.pamphlet +++ b/src/algebra/equation1.spad.pamphlet @@ -10,6 +10,14 @@ \tableofcontents \eject \section{category IEVALAB InnerEvalable} +<>= +"IEVALAB" -> "CATEGORY" +"InnerEvalable(a:SetCategory,b:Type)" -> "Category" +"InnerEvalable(a:SetCategory,b:SetCategory)" -> + "InnerEvalable(a:SetCategory,b:Type)" +"InnerEvalable(a:Ring,MultivariateTaylorSeriesCategory(a:Ring,b:OrderedSet))" + -> "InnerEvalable(a:SetCategory,b:Type)" +@ <>= )abbrev category IEVALAB InnerEvalable -- FOR THE BENEFIT OF LIBAX0 GENERATION @@ -40,6 +48,12 @@ InnerEvalable(A:SetCategory, B:Type): Category == with @ \section{category EVALAB Evalable} +<>= +"EVALAB" -> "IEVALAB" +"Evalable(a:SetCategory)" -> "InnerEvalable(a:SetCategory,b:SetCategory)" +"Evalable(MultivariateTaylorSeriesCategory(a:Ring,b:OrderedSet))" -> + "Evalable(a:SetCategory)" +@ <>= )abbrev category EVALAB Evalable ++ Author: diff --git a/src/algebra/integer.spad.pamphlet b/src/algebra/integer.spad.pamphlet index c415a4e..5f5a068 100644 --- a/src/algebra/integer.spad.pamphlet +++ b/src/algebra/integer.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{package INTSLPE IntegerSolveLinearPolynomialEquation} +<>= +"INTSLPE" -> "PACKAGE" +"IntegerSolveLinearPolynomialEquation()" -> "Package" +@ <>= )abbrev package INTSLPE IntegerSolveLinearPolynomialEquation ++ Author: Davenport @@ -722,6 +726,14 @@ o )show Integer o $AXIOM/doc/src/algebra/integer.spad.dvi @ +<>= +"INT" -> "INS" +"Integer()" -> "IntegerNumberSystem()" +"INT" -> "KONVERT" +"Integer()" -> "ConvertibleTo(String)" +"INT" -> "OM" +"Integer()" -> "OpenMath()" +@ <>= )abbrev domain INT Integer ++ Author: @@ -1111,6 +1123,12 @@ Note that this code is not included in the generated catdef.spad file. (MAKEPROP (QUOTE |Integer|) (QUOTE NILADIC) T) @ \section{domain NNI NonNegativeInteger} +<>= +"NNI" -> "OAMONS" +"NonNegativeInteger()" -> "OrderedAbelianMonoidSup()" +"NNI" -> "MONOID" +"NonNegativeInteger()" -> "Monoid()" +@ <>= )abbrev domain NNI NonNegativeInteger ++ Author: @@ -1313,6 +1331,12 @@ Note that this code is not included in the generated catdef.spad file. @ \section{domain PI PositiveInteger} +<>= +"PI" -> "OASGP" +"PositiveInteger()" -> "OrderedAbelianSemiGroup()" +"PI" -> "MONOID" +"PositiveInteger()" -> "Monoid()" +@ <>= )abbrev domain PI PositiveInteger ++ Author: @@ -1719,6 +1743,10 @@ o )show RomanNumeral o $AXIOM/doc/src/algebra/integer.spad.dvi @ +<>= +"ROMAN" -> "INS" +"RomanNumeral()" -> "IntegerNumberSystem()" +@ <>= )abbrev domain ROMAN RomanNumeral ++ Author: diff --git a/src/algebra/misc.spad.pamphlet b/src/algebra/misc.spad.pamphlet index 86caa39..837e326 100644 --- a/src/algebra/misc.spad.pamphlet +++ b/src/algebra/misc.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{domain SAOS SingletonAsOrderedSet} +<>= +"SAOS" -> "ORDSET" +"SingletonAsOrderedSet()" -> "OrderedSet()" +@ <>= )abbrev domain SAOS SingletonAsOrderedSet ++ This trivial domain lets us build Univariate Polynomials diff --git a/src/algebra/omcat.spad.pamphlet b/src/algebra/omcat.spad.pamphlet index 824bf1b..ca6b74f 100644 --- a/src/algebra/omcat.spad.pamphlet +++ b/src/algebra/omcat.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{category OM OpenMath} +<>= +"OM" -> "CATEGORY" +"OpenMath()" -> "Category" +@ <>= )abbrev category OM OpenMath ++ Author: Mike Dewar & Vilya Harvey diff --git a/src/algebra/patmatch1.spad.pamphlet b/src/algebra/patmatch1.spad.pamphlet index 381bbf3..1225137 100644 --- a/src/algebra/patmatch1.spad.pamphlet +++ b/src/algebra/patmatch1.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{domain PATRES PatternMatchResult} +<>= +"PATRES" -> "SETCAT" +"PatternMatchResult(a:SetCategory, b:SetCategory)" -> "SetCategory()" +@ <>= )abbrev domain PATRES PatternMatchResult ++ Result returned by the pattern matcher @@ -113,6 +117,11 @@ PatternMatchResult(R:SetCategory, S:SetCategory): SetCategory with @ \section{package PATRES2 PatternMatchResultFunctions2} +<>= +"PATRES2" -> "PACKAGE" +"PatternMatchResultFunctions2(a:SetCategory,b:SetCategory,c:SetCategory)" -> + "Package" +@ <>= )abbrev package PATRES2 PatternMatchResultFunctions2 ++ Lifts maps to pattern matching results @@ -138,6 +147,11 @@ PatternMatchResultFunctions2(R, A, B): Exports == Implementation where @ \section{domain PATLRES PatternMatchListResult} +<>= +"PATLRES" -> "SETCAT" +"PatternMatchListResult(a:SETCAT,b:SETCAT,c:LSAGG(SETCAT))" + -> "SetCategory()" +@ <>= )abbrev domain PATLRES PatternMatchListResult ++ Result returned by the pattern matcher when using lists @@ -186,6 +200,12 @@ PatternMatchListResult(R:SetCategory, S:SetCategory, L:ListAggregate S): @ \section{category PATMAB PatternMatchable} +<>= +"PATMAB" -> "SETCAT" +"PatternMatchable(a:SetCategory)" -> "SetCategory()" +"PatternMatchable(Integer)" -> "PatternMatchable(a:SetCategory)" +"PatternMatchable(Float)" -> "PatternMatchable(a:SetCategory)" +@ <>= )abbrev category PATMAB PatternMatchable ++ Category of sets that can be pattern-matched on @@ -207,6 +227,10 @@ PatternMatchable(S:SetCategory): Category == SetCategory with @ \section{category FPATMAB FullyPatternMatchable} +<>= +"FPATMAB" -> "TYPE" +"FullyPatternMatchable(a:Type)" -> "Type()" +@ <>= )abbrev category FPATMAB FullyPatternMatchable ++ Category of sets that can be pattern-matched on @@ -224,6 +248,10 @@ FullyPatternMatchable(R:Type): Category == Type with @ \section{package PMSYM PatternMatchSymbol} +<>= +"PMSYM" -> "PACKAGE" +"PatternMatchSymbol(a:SetCategory)" -> "Package" +@ <>= )abbrev package PMSYM PatternMatchSymbol ++ Pattern matching on symbols @@ -252,6 +280,10 @@ PatternMatchSymbol(S:SetCategory): with @ \section{package PMKERNEL PatternMatchKernel} +<>= +"PMKERNEL" -> "PACKAGE" +"PatternMatchKernel(a:SetCategory, b:Join(...))" -> "Package" +@ <>= )abbrev package PMKERNEL PatternMatchKernel ++ Pattern matching on kernels @@ -349,6 +381,11 @@ PatternMatchKernel(S, E): Exports == Implementation where @ \section{package PMDOWN PatternMatchPushDown} +<>= +"PMDOWN" -> "PACKAGE" +"PatternMatchPushDown(a:SETCAT, b:PATMAB(SETCAT), c:Join(...))" + -> "Package" +@ <>= )abbrev package PMDOWN PatternMatchPushDown ++ Pattern matching in towers @@ -449,6 +486,10 @@ PatternMatchPushDown(S, A, B): Exports == Implementation where @ \section{package PMTOOLS PatternMatchTools} +<>= +"PMTOOLS" -> "PACKAGE" +"PatternMatchTools(a:SetCategory,b:Join(...),c:Join(...))" -> "Package" +@ <>= )abbrev package PMTOOLS PatternMatchTools ++ Tools for the pattern matcher @@ -613,6 +654,11 @@ PatternMatchTools(S, R, P): Exports == Implementation where @ \section{package PMLSAGG PatternMatchListAggregate} +<>= +"PMLSAGG" -> "PACKAGE" +"PatternMatchListAggregate(a:SETCAT,b:PATMAB(SETCAT),c:LSAGG(PATMAB(SETCAT)))" + -> "Package" +@ <>= )abbrev package PMLSAGG PatternMatchListAggregate ++ Pattern matching for list aggregates diff --git a/src/algebra/pattern.spad.pamphlet b/src/algebra/pattern.spad.pamphlet index e22e920..4d3d0a2 100644 --- a/src/algebra/pattern.spad.pamphlet +++ b/src/algebra/pattern.spad.pamphlet @@ -10,6 +10,12 @@ \tableofcontents \eject \section{domain PATTERN Pattern} +<>= +"RETRACT" -> "CATEGORY" +"RetractableTo(a:Type)" -> "Category" +"RetractableTo(SetCategory)" -> "RetractableTo(a:Type)" +"RetractableTo(Symbol)" -> "RetractableTo(a:Type)" +@ <>= )abbrev domain PATTERN Pattern ++ Patterns for use by the pattern matcher @@ -386,6 +392,10 @@ Pattern(R:SetCategory): Exports == Implementation where @ \section{package PATTERN1 PatternFunctions1} +<>= +"PATTERN1" -> "PACKAGE" +"PatternFunctions1(a:SetCategory,b:Type)" -> "Package" +@ <>= )abbrev package PATTERN1 PatternFunctions1 ++ Utilities for handling patterns @@ -450,6 +460,10 @@ PatternFunctions1(R:SetCategory, D:Type): with @ \section{package PATTERN2 PatternFunctions2} +<>= +"PATTERN2" -> "PACKAGE" +"PatternFunctions2(a:SetCategory,b:SetCategory)" -> "Package" +@ <>= )abbrev package PATTERN2 PatternFunctions2 ++ Lifting of maps to patterns @@ -489,6 +503,10 @@ PatternFunctions2(R:SetCategory, S:SetCategory): with @ \section{category PATAB Patternable} +<>= +"PATAB" -> "CATEGORY" +"Patternable(a:Type)" -> "Category" +@ <>= )abbrev category PATAB Patternable ++ Category of sets that can be converted to useful patterns diff --git a/src/algebra/pscat.spad.pamphlet b/src/algebra/pscat.spad.pamphlet index 115c4ac..f91de29 100644 --- a/src/algebra/pscat.spad.pamphlet +++ b/src/algebra/pscat.spad.pamphlet @@ -10,6 +10,15 @@ \tableofcontents \eject \section{category PSCAT PowerSeriesCategory} +<>= +"PSCAT" -> "AMR" +"PowerSeriesCategory(a:Ring,b:OrderedAbelianMonoid,c:OrderedSet)" -> + "AbelianMonoidRing(a:Ring,b:OrderedAbelianMonoid)" +"PowerSeriesCategory(a:Ring,b:OrderedAbelianMonoid,c:SingletonAsOrderedSet)" + -> "PowerSeriesCategory(a:Ring,b:OrderedAbelianMonoid,c:OrderedSet)" +"PowerSeriesCategory(a:Ring,IndexedExponents(b:OrderedSet),c:OrderedSet))" + -> "PowerSeriesCategory(a:Ring,b:OrderedAbelianMonoid,c:OrderedSet)" +@ <>= )abbrev category PSCAT PowerSeriesCategory ++ Author: Clifton J. Williamson @@ -71,6 +80,17 @@ PowerSeriesCategory(Coef,Expon,Var): Category == Definition where @ \section{category UPSCAT UnivariatePowerSeriesCategory} +<>= +"UPSCAT" -> "PSCAT" +"UnivariatePowerSeriesCategory(a:Ring,b:OrderedAbelianMonoid)" -> + "PowerSeriesCategory(a:Ring,b:OrderedAbelianMonoid,c:SingletonAsOrderedSet)" +"UnivariatePowerSeriesCategory(a:Ring,NonNegativeInteger)" -> + "UnivariatePowerSeriesCategory(a:Ring,b:OrderedAbelianMonoid)" +"UnivariatePowerSeriesCategory(a:Ring,Integer)" -> + "UnivariatePowerSeriesCategory(a:Ring,b:OrderedAbelianMonoid)" +"UnivariatePowerSeriesCategory(a:Ring,Fraction(Integer))" -> + "UnivariatePowerSeriesCategory(a:Ring,b:OrderedAbelianMonoid)" +@ <>= )abbrev category UPSCAT UnivariatePowerSeriesCategory ++ Author: Clifton J. Williamson @@ -168,6 +188,11 @@ UnivariatePowerSeriesCategory(Coef,Expon): Category == Definition where @ \section{category UTSCAT UnivariateTaylorSeriesCategory} +<>= +"UTSCAT" -> "UPSCAT" +"UnivariateTaylorSeriesCategory(a:Ring)" -> + "UnivariatePowerSeriesCategory(a:Ring,NonNegativeInteger)" +@ <>= )abbrev category UTSCAT UnivariateTaylorSeriesCategory ++ Author: Clifton J. Williamson @@ -404,6 +429,11 @@ UnivariateTaylorSeriesCategory(Coef): Category == Definition where @ \section{category ULSCAT UnivariateLaurentSeriesCategory} +<>= +"ULSCAT" -> "UPSCAT" +"UnivariateLaurentSeriesCategory(a:Ring)" -> + "UnivariatePowerSeriesCategory(a:Ring,Integer)" +@ <>= )abbrev category ULSCAT UnivariateLaurentSeriesCategory ++ Author: Clifton J. Williamson @@ -496,6 +526,11 @@ Note that this code is not included in the generated catdef.spad file. (DEFUN |UnivariateLaurentSeriesCategory;| (|t#1|) (PROG (#1=#:G83277) (RETURN (PROG1 (LETT #1# (|sublisV| (PAIR (QUOTE (|t#1|)) (LIST (|devaluate| |t#1|))) (|sublisV| (PAIR (QUOTE (#2=#:G83276)) (LIST (QUOTE (|Integer|)))) (COND (|UnivariateLaurentSeriesCategory;CAT|) ((QUOTE T) (LETT |UnivariateLaurentSeriesCategory;CAT| (|Join| (|UnivariatePowerSeriesCategory| (QUOTE |t#1|) (QUOTE #2#)) (|mkCategory| (QUOTE |domain|) (QUOTE (((|series| (|$| (|Stream| (|Record| (|:| |k| (|Integer|)) (|:| |c| |t#1|))))) T) ((|multiplyCoefficients| (|$| (|Mapping| |t#1| (|Integer|)) |$|)) T) ((|rationalFunction| ((|Fraction| (|Polynomial| |t#1|)) |$| (|Integer|))) (|has| |t#1| (|IntegralDomain|))) ((|rationalFunction| ((|Fraction| (|Polynomial| |t#1|)) |$| (|Integer|) (|Integer|))) (|has| |t#1| (|IntegralDomain|))) ((|integrate| (|$| |$|)) (|has| |t#1| (|Algebra| (|Fraction| (|Integer|))))) ((|integrate| (|$| |$| (|Symbol|))) (AND (|has| |t#1| (SIGNATURE |variables| ((|List| (|Symbol|)) |t#1|))) (|has| |t#1| (SIGNATURE |integrate| (|t#1| |t#1| (|Symbol|)))) (|has| |t#1| (|Algebra| (|Fraction| (|Integer|)))))) ((|integrate| (|$| |$| (|Symbol|))) (AND (|has| |t#1| (|AlgebraicallyClosedFunctionSpace| (|Integer|))) (|has| |t#1| (|PrimitiveFunctionCategory|)) (|has| |t#1| (|TranscendentalFunctionCategory|)) (|has| |t#1| (|Algebra| (|Fraction| (|Integer|)))))))) (QUOTE (((|RadicalCategory|) (|has| |t#1| (|Algebra| (|Fraction| (|Integer|))))) ((|TranscendentalFunctionCategory|) (|has| |t#1| (|Algebra| (|Fraction| (|Integer|))))) ((|Field|) (|has| |t#1| (|Field|))))) (QUOTE ((|Symbol|) (|Fraction| (|Polynomial| |t#1|)) (|Integer|) (|Stream| (|Record| (|:| |k| (|Integer|)) (|:| |c| |t#1|))))) NIL)) . #3=(|UnivariateLaurentSeriesCategory|)))))) . #3#) (SETELT #1# 0 (LIST (QUOTE |UnivariateLaurentSeriesCategory|) (|devaluate| |t#1|))))))) @ \section{category UPXSCAT UnivariatePuiseuxSeriesCategory} +<>= +"UPXSCAT" -> "UPSCAT" +"UnivariatePuiseuxSeriesCategory(a:Ring)" -> + "UnivariatePowerSeriesCategory(a:Ring,Fraction(Integer))" +@ <>= )abbrev category UPXSCAT UnivariatePuiseuxSeriesCategory ++ Author: Clifton J. Williamson @@ -558,6 +593,20 @@ UnivariatePuiseuxSeriesCategory(Coef): Category == Definition where @ \section{category MTSCAT MultivariateTaylorSeriesCategory} +<>= +"MTSCAT" -> "PDRING" +"MultivariateTaylorSeriesCategory(a:Ring,b:OrderedSet)" -> + "PartialDifferentialRing(a:OrderedSet)" +"MTSCAT" -> "PSCAT" +"MultivariateTaylorSeriesCategory(a:Ring,b:OrderedSet)" -> + "PowerSeriesCategory(a:Ring,IndexedExponents(b:OrderedSet),c:OrderedSet))" +"MTSCAT" -> "IEVALAB" +"MultivariateTaylorSeriesCategory(a:Ring,b:OrderedSet)" -> + "InnerEvalable(a:Ring,MultivariateTaylorSeriesCategory(a:Ring,b:OrderedSet))" +"MTSCAT" -> "EVALAB" +"MultivariateTaylorSeriesCategory(a:Ring,b:OrderedSet)" -> + "Evalable(MultivariateTaylorSeriesCategory(a:Ring,b:OrderedSet))" +@ <>= )abbrev category MTSCAT MultivariateTaylorSeriesCategory ++ Author: Clifton J. Williamson diff --git a/src/algebra/sf.spad.pamphlet b/src/algebra/sf.spad.pamphlet index 1517c92..c35c3b4 100644 --- a/src/algebra/sf.spad.pamphlet +++ b/src/algebra/sf.spad.pamphlet @@ -10,6 +10,11 @@ \tableofcontents \eject \section{category REAL RealConstant} +<>= +"REAL" -> "KONVERT" +"RealConstant()" -> "ConvertibleTo(DoubleFloat)" +"RealConstant()" -> "ConvertibleTo(Float)" +@ <>= )abbrev category REAL RealConstant ++ Author: @@ -28,6 +33,10 @@ RealConstant(): Category == @ \section{category RADCAT RadicalCategory} +<>= +"RADCAT" -> "CATEGORY" +"RadicalCategory()" -> "Category" +@ <>= )abbrev category RADCAT RadicalCategory ++ Author: @@ -50,6 +59,25 @@ RadicalCategory(): Category == with @ \section{category RNS RealNumberSystem} +<>= +"RNS" -> "FIELD" +"RealNumberSystem()" -> "Field()" +"RNS" -> "ORDRING" +"RealNumberSystem()" -> "OrderedRing()" +"RNS" -> "REAL" +"RealNumberSystem()" -> "RealConstant()" +"RNS" -> "RETRACT" +"RealNumberSystem()" -> "RetractableTo(Integer)" +"RealNumberSystem()" -> "RetractableTo(Fraction(Integer))" +"RNS" -> "RADCAT" +"RealNumberSystem()" -> "RadicalCategory()" +"RNS" -> "KONVERT" +"RealNumberSystem()" -> "ConvertibleTo(Pattern(Float))" +"RNS" -> "PATMAB" +"RealNumberSystem()" -> "PatternMatchable(Float)" +"RNS" -> "CHARZ" +"RealNumberSystem()" -> "CharacteristicZero()" +@ <>= )abbrev category RNS RealNumberSystem ++ Author: Michael Monagan and Stephen M. Watt @@ -395,6 +423,10 @@ Note that this code is not included in the generated catdef.spad file. @ \section{category FPS FloatingPointSystem} +<>= +"FPS" -> "RNS" +"FloatingPointSystem()" -> "RealNumberSystem()" +@ <>= )abbrev category FPS FloatingPointSystem ++ Author: @@ -411,9 +443,11 @@ Note that this code is not included in the generated catdef.spad file. ++ exactly representable by floating point numbers. ++ A floating point system is characterized by the following: ++ -++ 1: \spadfunFrom{base}{FloatingPointSystem} of the \spadfunFrom{exponent}{FloatingPointSystem}. -++ (actual implemenations are usually binary or decimal) -++ 2: \spadfunFrom{precision}{FloatingPointSystem} of the \spadfunFrom{mantissa}{FloatingPointSystem} (arbitrary or fixed) +++ 1: \spadfunFrom{base}{FloatingPointSystem} of the +++ \spadfunFrom{exponent}{FloatingPointSystem}. +++ (actual implemenations are usually binary or decimal) +++ 2: \spadfunFrom{precision}{FloatingPointSystem} of the +++ \spadfunFrom{mantissa}{FloatingPointSystem} (arbitrary or fixed) ++ 3: rounding error for operations --++ 4: when, and what happens if exponent overflow/underflow occurs ++ @@ -433,9 +467,13 @@ FloatingPointSystem(): Category == RealNumberSystem() with ++ order x is the order of magnitude of x. ++ Note: \spad{base ** order x <= |x| < base ** (1 + order x)}. base: () -> PositiveInteger - ++ base() returns the base of the \spadfunFrom{exponent}{FloatingPointSystem}. + ++ base() returns the base of the + ++\spadfunFrom{exponent}{FloatingPointSystem}. + exponent: % -> Integer - ++ exponent(x) returns the \spadfunFrom{exponent}{FloatingPointSystem} part of x. + ++ exponent(x) returns the + ++ \spadfunFrom{exponent}{FloatingPointSystem} part of x. + mantissa: % -> Integer ++ mantissa(x) returns the mantissa part of x. -- round?: () -> B @@ -450,17 +488,25 @@ FloatingPointSystem(): Category == RealNumberSystem() with if % has arbitraryPrecision then bits: PositiveInteger -> PositiveInteger - ++ bits(n) set the \spadfunFrom{precision}{FloatingPointSystem} to n bits. + ++ bits(n) set the \spadfunFrom{precision}{FloatingPointSystem} + ++ to n bits. + digits: PositiveInteger -> PositiveInteger - ++ digits(d) set the \spadfunFrom{precision}{FloatingPointSystem} to d digits. + ++ digits(d) set the \spadfunFrom{precision}{FloatingPointSystem} + ++ to d digits. + precision: PositiveInteger -> PositiveInteger ++ precision(n) set the precision in the base to n decimal digits. + increasePrecision: Integer -> PositiveInteger ++ increasePrecision(n) increases the current ++ \spadfunFrom{precision}{FloatingPointSystem} by n decimal digits. + decreasePrecision: Integer -> PositiveInteger ++ decreasePrecision(n) decreases the current - ++ \spadfunFrom{precision}{FloatingPointSystem} precision by n decimal digits. + ++ \spadfunFrom{precision}{FloatingPointSystem} precision + ++ by n decimal digits. + if not (% has arbitraryExponent) then -- overflow: (()->Exit) -> Void -- ++ overflow() returns the Exponent overflow of float @@ -947,6 +993,20 @@ o )show DoubleFloat o $AXIOM/doc/src/algebra/sf.spad.dvi @ +<>= +"DFLOAT" -> "FPS" +"DoubleFloat()" -> "FloatingPointSystem()" +"DFLOAT" -> "DIFRING" +"DoubleFloat()" -> "DifferentialRing()" +"DFLOAT" -> "OM" +"DoubleFloat()" -> "OpenMath()" +"DFLOAT" -> "TRANFUN" +"DoubleFloat()" -> "TranscendentalFunctionCategory()" +"DFLOAT" -> "SPFCAT" +"DoubleFloat()" -> "SpecialFunctionCategory()" +"DFLOAT" -> "KONVERT" +"DoubleFloat()" -> "ConvertibleTo(InputForm)" +@ <>= )abbrev domain DFLOAT DoubleFloat ++ Author: Michael Monagan @@ -982,7 +1042,8 @@ o $AXIOM/doc/src/algebra/sf.spad.dvi ++ and \spadfunFrom{cos}{DoubleFloat} ++ will lose all precision for large arguments. ++ -++ The \spadtype{Float} domain provides an alternative to the \spad{DoubleFloat} domain. +++ The \spadtype{Float} domain provides an alternative to the +++ \spad{DoubleFloat} domain. ++ It provides an arbitrary precision model of floating point arithmetic. ++ This means that accuracy problems like those above are eliminated ++ by increasing the working precision where necessary. \spadtype{Float} diff --git a/src/algebra/si.spad.pamphlet b/src/algebra/si.spad.pamphlet index 04d6d1f..3610e05 100644 --- a/src/algebra/si.spad.pamphlet +++ b/src/algebra/si.spad.pamphlet @@ -10,6 +10,34 @@ \tableofcontents \eject \section{category INS IntegerNumberSystem} +<>= +"INS" -> "UFD" +"IntegerNumberSystem()" -> "UniqueFactorizationDomain()" +"INS" -> "EUCDOM" +"IntegerNumberSystem()" -> "EuclideanDomain()" +"INS" -> "OINTDOM" +"IntegerNumberSystem()" -> "OrderedIntegralDomain()" +"INS" -> "DIFRING" +"IntegerNumberSystem()" -> "DifferentialRing()" +"INS" -> "KONVERT" +"IntegerNumberSystem()" -> "ConvertibleTo(Integer)" +"IntegerNumberSystem()" -> "ConvertibleTo(InputForm)" +"IntegerNumberSystem()" -> "ConvertibleTo(Pattern(Integer))" +"INS" -> "RETRACT" +"IntegerNumberSystem()" -> "RetractableTo(Integer)" +"INS" -> "LINEXP" +"IntegerNumberSystem()" -> "LinearlyExplicitRingOver(Integer)" +"INS" -> "PATMAB" +"IntegerNumberSystem()" -> "PatternMatchable(Integer)" +"INS" -> "CFCAT" +"IntegerNumberSystem()" -> "CombinatorialFunctionCategory()" +"INS" -> "REAL" +"IntegerNumberSystem()" -> "RealConstant()" +"INS" -> "CHARZ" +"IntegerNumberSystem()" -> "CharacteristicZero()" +"INS" -> "STEP" +"IntegerNumberSystem()" -> "StepThrough()" +@ <>= )abbrev category INS IntegerNumberSystem ++ Author: Stephen M. Watt @@ -837,6 +865,14 @@ o )show SingleInteger o $AXIOM/doc/src/algebra/si.spad.dvi @ +<>= +"SINT" -> "INS" +"SingleInteger()" -> "IntegerNumberSystem()" +"SINT" -> "LOGIC" +"SingleInteger()" -> "Logic()" +"SINT" -> "OM" +"SingleInteger()" -> "OpenMath()" +@ <>= )abbrev domain SINT SingleInteger @@ -869,11 +905,14 @@ o $AXIOM/doc/src/algebra/si.spad.dvi SingleInteger(): Join(IntegerNumberSystem,Logic,OpenMath) with canonical - ++ \spad{canonical} means that mathematical equality is implied by data structure equality. + ++ \spad{canonical} means that mathematical equality is + ++ implied by data structure equality. canonicalsClosed - ++ \spad{canonicalClosed} means two positives multiply to give positive. + ++ \spad{canonicalClosed} means two positives multiply to + ++ give positive. noetherian - ++ \spad{noetherian} all ideals are finitely generated (in fact principal). + ++ \spad{noetherian} all ideals are finitely generated + ++ (in fact principal). max : () -> % ++ max() returns the largest single integer. diff --git a/src/algebra/trigcat.spad.pamphlet b/src/algebra/trigcat.spad.pamphlet index e3d7bb3..4e5529a 100644 --- a/src/algebra/trigcat.spad.pamphlet +++ b/src/algebra/trigcat.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{category ELEMFUN ElementaryFunctionCategory} +<>= +"ELEMFUN" -> "CATEGORY" +"ElementaryFunctionCategory()" -> "Category" +@ <>= )abbrev category ELEMFUN ElementaryFunctionCategory ++ Category for the elementary functions @@ -27,6 +31,10 @@ ElementaryFunctionCategory(): Category == with @ \section{category AHYP ArcHyperbolicFunctionCategory} +<>= +"AHYP" -> "CATEGORY" +"ArcHyperbolicFunctionCategory()" -> "Category" +@ <>= )abbrev category AHYP ArcHyperbolicFunctionCategory ++ Category for the inverse hyperbolic trigonometric functions @@ -47,6 +55,10 @@ ArcHyperbolicFunctionCategory(): Category == with \section{category ATRIG ArcTrigonometricFunctionCategory} The [[asec]] and [[acsc]] functions were modified to include an intermediate test to check that the argument has a reciprocal values. +<>= +"ATRIG" -> "CATEGORY" +"ArcTrigonometricFunctionCategory()" -> "Category" +@ <>= )abbrev category ATRIG ArcTrigonometricFunctionCategory ++ Category for the inverse trigonometric functions @@ -74,6 +86,10 @@ ArcTrigonometricFunctionCategory(): Category == with \section{category HYPCAT HyperbolicFunctionCategory} The [[csch]] and [[sech]] functions were modified to include an intermediate test to check that the argument has a reciprocal values. +<>= +"HYPCAT" -> "CATEGORY" +"HyperbolicFunctionCategory()" -> "Category" +@ <>= )abbrev category HYPCAT HyperbolicFunctionCategory ++ Category for the hyperbolic trigonometric functions @@ -111,6 +127,23 @@ HyperbolicFunctionCategory(): Category == with The [[acsch]], [[asech]], and [[acoth]] functions were modified to include an intermediate test to check that the argument has a reciprocal values. +<>= +"TRANFUN" -> "TRIGCAT" +"TranscendentalFunctionCategory()" -> + "TrigonometricFunctionCategory()" +"TRANFUN" -> "ATRIG" +"TranscendentalFunctionCategory()" -> + "ArcTrigonometricFunctionCategory()" +"TRANFUN" -> "HYPCAT" +"TranscendentalFunctionCategory()" -> + "HyperbolicFunctionCategory()" +"TRANFUN" -> "AHYP" +"TranscendentalFunctionCategory()" -> + "ArcHyperbolicFunctionCategory()" +"TRANFUN" -> "ELEMFUN" +"TranscendentalFunctionCategory()" -> + "ElementaryFunctionCategory()" +@ <>= )abbrev category TRANFUN TranscendentalFunctionCategory ++ Category for the transcendental elementary functions @@ -147,6 +180,10 @@ TranscendentalFunctionCategory(): Category == \section{category TRIGCAT TrigonometricFunctionCategory} The [[csc]] and [[sec]] functions were modified to include an intermediate test to check that the argument has a reciprocal values. +<>= +"TRIGCAT" -> "CATEGORY" +"TrigonometricFunctionCategory()" -> "Category" +@ <>= )abbrev category TRIGCAT TrigonometricFunctionCategory ++ Category for the trigonometric functions @@ -174,6 +211,10 @@ TrigonometricFunctionCategory(): Category == with @ \section{category PRIMCAT PrimitiveFunctionCategory} +<>= +"PRIMCAT" -> "CATEGORY" +"PrimitiveFunctionCategory()" -> "Category" +@ <>= )abbrev category PRIMCAT PrimitiveFunctionCategory ++ Category for the integral functions @@ -190,6 +231,12 @@ PrimitiveFunctionCategory(): Category == with @ \section{category LFCAT LiouvillianFunctionCategory} +<>= +"LFCAT" -> "PRIMCAT" +"LiouvillianFunctionCategory()" -> "PrimitiveFunctionCategory()" +"LFCAT" -> "TRANFUN" +"LiouvillianFunctionCategory()" -> "TranscendentalFunctionCategory()" +@ <>= )abbrev category LFCAT LiouvillianFunctionCategory ++ Category for the transcendental Liouvillian functions @@ -220,6 +267,10 @@ LiouvillianFunctionCategory(): Category == @ \section{category CFCAT CombinatorialFunctionCategory} +<>= +"CFCAT" -> "CATEGORY" +"CombinatorialFunctionCategory()" -> "Category" +@ <>= )abbrev category CFCAT CombinatorialFunctionCategory ++ Category for the usual combinatorial functions @@ -243,6 +294,10 @@ CombinatorialFunctionCategory(): Category == with @ \section{category SPFCAT SpecialFunctionCategory} +<>= +"SPFCAT" -> "CATEGORY" +"SpecialFunctionCategory()" -> "Category" +@ <>= )abbrev category SPFCAT SpecialFunctionCategory ++ Category for the other special functions