diff --git a/changelog b/changelog index d6cf2ec..ec35f67 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,16 @@ +20080904 tpd src/algebra/retract.spad graphviz dotfile decoration +20080904 tpd src/algebra/equation1.spad graphviz dotfile decoration +20080904 tpd src/algebra/carten.spad graphviz dotfile decoration +20080904 tpd src/algebra/coerce.spad graphviz dotfile decoration +20080904 tpd src/algebra/card.spad graphviz dotfile decoration +20080904 tpd src/algebra/brill.spad graphviz dotfile decoration +20080904 tpd src/algebra/bezout.spad graphviz dotfile decoration +20080904 tpd src/algebra/axserver.spad graphviz dotfile decoration +20080904 tpd src/algebra/attreg.spad graphviz dotfile decoration +20080904 tpd src/algebra/array2.spad graphviz dotfile decoration +20080904 tpd src/algebra/array1.spad graphviz dotfile decoration +20080904 tpd src/algebra/any.spad graphviz dotfile decoration +20080904 tpd src/algebra/alql.spad graphviz dotfile decoration 20080904 tst src/algebra/aggcat.spad add reduce example 20080901 tpd src/input/Makefile add start of multivar poly tests 20080901 tpd src/input/bini.input add start of multivar poly tests diff --git a/src/algebra/alql.spad.pamphlet b/src/algebra/alql.spad.pamphlet index 5865b39..86c5d2e 100644 --- a/src/algebra/alql.spad.pamphlet +++ b/src/algebra/alql.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{domain DLIST DataList} +<>= +"DLIST" -> "LSAGG" +"DataList(a:OrderedSet)" -> "ListAggregate(a:Type)" +@ <>= )abbrev domain DLIST DataList ++ This domain provides some nice functions on lists @@ -40,6 +44,10 @@ DataList(S:OrderedSet) : Exports == Implementation where @ \section{domain ICARD IndexCard} +<>= +"ICARD" -> "ORDSET" +"IndexCard()" -> "OrderedSet()" +@ <>= )abbrev domain ICARD IndexCard ++ This domain implements a container of information @@ -51,13 +59,12 @@ IndexCard() : Exports == Implementation where ++ are \axiom{name, nargs, exposed, type, abbreviation, kind, origin, ++ params, condition, doc}. display: % -> Void - ++ display(ic) prints a summary of the information contained in \axiom{ic}. + ++ display(ic) prints a summary of information contained in \axiom{ic}. fullDisplay: % -> Void ++ fullDisplay(ic) prints all of the information contained in \axiom{ic}. coerce: String -> % ++ coerce(s) converts \axiom{s} into an \axiom{IndexCard}. Warning: if - ++ \axiom{s} is not of the right format then an error will occur when using - ++ it. + ++ \axiom{s} is not of the right format then an error will occur Implementation == add x>= +"DBASE" -> "SETCAT" +"Database(a:OrderedSet)" -> "SetCategory()" +@ <>= )abbrev domain DBASE Database ++ This domain implements a simple view of a database whose fields are @@ -149,6 +161,10 @@ Database(S): Exports == Implementation where @ \section{domain QEQUAT QueryEquation} +<>= +"QEQUAT" -> "KOERCE" +"QueryEquation()" -> "CoercibleTo(OutputForm)" +@ <>= )abbrev domain QEQUAT QueryEquation ++ This domain implements simple database queries @@ -169,14 +185,18 @@ QueryEquation(): Exports == Implementation where @ \section{package MTHING MergeThing} +<>= +"MTHING" -> "PACKAGE" +"MergeThing(a:OrderedSet)" -> "Package" +@ <>= )abbrev package MTHING MergeThing ++ This package exports tools for merging lists MergeThing(S:OrderedSet): Exports == Implementation where Exports == with mergeDifference: (List(S),List(S)) -> List(S) - ++ mergeDifference(l1,l2) returns a list of elements in l1 not present in l2. - ++ Assumes lists are ordered and all x in l2 are also in l1. + ++ mergeDifference(l1,l2) returns a list of elements in l1 not present + ++ in l2. Assumes lists are ordered and all x in l2 are also in l1. Implementation == add mergeDifference1: (List S,S,List S) -> List S mergeDifference(x,y) == @@ -202,6 +222,10 @@ MergeThing(S:OrderedSet): Exports == Implementation where @ \section{package OPQUERY OperationsQuery} +<>= +"OPQUERY" -> "PACKAGE" +"OperationsQuery()" -> "Package" +@ <>= )abbrev package OPQUERY OperationsQuery ++ This package exports tools to create AXIOM Library information databases. diff --git a/src/algebra/any.spad.pamphlet b/src/algebra/any.spad.pamphlet index ef2f1b9..757c012 100644 --- a/src/algebra/any.spad.pamphlet +++ b/src/algebra/any.spad.pamphlet @@ -76,6 +76,10 @@ o )show None o $AXIOM/doc/src/algebra/any.spad.dvi @ +<>= +"NONE" -> "SETCAT" +"None()" -> "SetCategory()" +@ <>= )abbrev domain NONE None ++ Author: @@ -98,6 +102,10 @@ None():SetCategory == add @ \section{package NONE1 NoneFunctions1} +<>= +"NONE1" -> "PACKAGE" +"NoneFunctions1(a:Type)" -> "Package" +@ <>= )abbrev package NONE1 NoneFunctions1 ++ Author: @@ -124,6 +132,10 @@ NoneFunctions1(S:Type): Exports == Implementation where @ \section{domain ANY Any} +<>= +"ANY" -> "SETCAT" +"Any()" -> "SetCategory()" +@ <>= )abbrev domain ANY Any ++ Author: Robert S. Sutor @@ -146,8 +158,8 @@ NoneFunctions1(S:Type): Exports == Implementation where Any(): SetCategory with any : (SExpression, None) -> % ++ any(type,object) is a technical function for creating - ++ an object of \spadtype{Any}. Arugment \spad{type} is a \spadgloss{LISP} form - ++ for the type of \spad{object}. + ++ an object of \spadtype{Any}. Arugment \spad{type} is a + ++ \spadgloss{LISP} form for the type of \spad{object}. domainOf : % -> OutputForm ++ domainOf(a) returns a printable form of the type of the ++ original object that was converted to \spadtype{Any}. @@ -205,6 +217,10 @@ Any(): SetCategory with @ \section{package ANY1 AnyFunctions1} +<>= +"ANY1" -> "PACKAGE" +"AnyFunctions1(a:Type)" -> "Package" +@ <>= )abbrev package ANY1 AnyFunctions1 ++ Author: diff --git a/src/algebra/array1.spad.pamphlet b/src/algebra/array1.spad.pamphlet index 7f4be27..5d5b1c2 100644 --- a/src/algebra/array1.spad.pamphlet +++ b/src/algebra/array1.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{domain PRIMARR PrimitiveArray} +<>= +"PRIMARR" -> "A1AGG" +"PrimitiveArray(a:Type)" -> "OneDimensionalArrayAggregate(a:Type)" +@ <>= )abbrev domain PRIMARR PrimitiveArray ++ This provides a fast array type with no bound checking on elt's. @@ -213,6 +217,10 @@ Note that this code is not included in the generated catdef.spad file. (QUOTE |lookupComplete|))) @ \section{package PRIMARR2 PrimitiveArrayFunctions2} +<>= +"PRIMARR2" -> "PACKAGE" +"PrimitiveArrayFunctions2(a:Type,b:Type)" -> "Package" +@ <>= )abbrev package PRIMARR2 PrimitiveArrayFunctions2 ++ This package provides tools for operating on primitive arrays @@ -263,6 +271,10 @@ PrimitiveArrayFunctions2(A, B): Exports == Implementation where @ \section{domain TUPLE Tuple} +<>= +"TUPLE" -> "PRIMARR" +"Tuple(a:Type)" -> "PrimitiveArray(a:Type)" +@ <>= )abbrev domain TUPLE Tuple ++ This domain is used to interface with the interpreter's notion @@ -309,6 +321,16 @@ Tuple(S:Type): CoercibleTo(PrimitiveArray S) with @ \section{domain IFARRAY IndexedFlexibleArray} +<>= +"IFARRAY" -> "A1AGG" +"IndexedFlexibleArray(a:Type,b:Integer)" -> + "OneDimensionalArrayAggregate(a:Type)" +"IndexedFlexibleArray(a:Type,1)" -> + "IndexedFlexibleArray(a:Type,b:Integer)" +"IFARRAY" -> "ELAGG" +"IndexedFlexibleArray(a:Type,b:Integer)" -> + "ExtensibleLinearAggregate(a:Type)" +@ <>= )abbrev domain IFARRAY IndexedFlexibleArray ++ Author: Michael Monagan July/87, modified SMW June/91 @@ -520,7 +542,8 @@ IndexedFlexibleArray(S:Type, mn: Integer): Exports == Implementation where select_!(g:(S->Boolean), a:%) == k:I := 0 - for i in 0..maxIndex a - mn repeat if g(a.f.i) then (a.f.k := a.f.i;k := k+1) + for i in 0..maxIndex a - mn repeat_ + if g(a.f.i) then (a.f.k := a.f.i;k := k+1) shrink(a, #a - k) if S has SetCategory then @@ -809,6 +832,10 @@ o )show FlexibleArray o $AXIOM/doc/src/algebra/array1.spad.dvi @ +<>= +"FARRAY" -> "IFARRAY" +"FlexibleArray(a:Type)" -> "IndexedFlexibleArray(a:Type,1)" +@ <>= )abbrev domain FARRAY FlexibleArray ++ A FlexibleArray is the notion of an array intended to allow for growth @@ -833,6 +860,11 @@ FlexibleArray(S: Type) == Implementation where @ \section{domain IARRAY1 IndexedOneDimensionalArray} +<>= +"IARRAY1" -> "A1AGG" +"IndexedOneDimensionalArray(a:Type,b:Integer)" -> + "OneDimensionalArrayAggregate(a:Type)" +@ <>= )abbrev domain IARRAY1 IndexedOneDimensionalArray ++ Author Micheal Monagan Aug/87 @@ -1077,6 +1109,10 @@ o )show OneDimensionalArray o $AXIOM/doc/src/algebra/array1.spad.dvi @ +<>= +"ARRAY1" -> "A1AGG" +"OneDimensionalArray(a:Type)" -> "OneDimensionalArrayAggregate(a:Type)" +@ <>= )abbrev domain ARRAY1 OneDimensionalArray ++ This is the domain of 1-based one dimensional arrays @@ -1105,6 +1141,10 @@ OneDimensionalArray(S:Type): Exports == Implementation where @ \section{package ARRAY12 OneDimensionalArrayFunctions2} +<>= +"ARRAY12" -> "PACKAGE" +"OneDimensionalArrayFunctions2(a:Type,b:Type)" -> "Package" +@ <>= )abbrev package ARRAY12 OneDimensionalArrayFunctions2 ++ This package provides tools for operating on one-dimensional arrays diff --git a/src/algebra/array2.spad.pamphlet b/src/algebra/array2.spad.pamphlet index a6f9cd7..831a89e 100644 --- a/src/algebra/array2.spad.pamphlet +++ b/src/algebra/array2.spad.pamphlet @@ -19,6 +19,13 @@ function 'minRowIndex'. The index of the 'first' column may be obtained by calling the function 'minColIndex'. The index of the first element of a 'Row' is the same as the index of the first column in an array and vice versa. +<>= +"ARR2CAT" -> "HOAGG" +"TwoDimensionalArrayCategory(a:Type,b:FiniteLinearAggregate(a),c:FiniteLinearAggregate(a))" + -> "HomogeneousAggregate(a:Type)" +"TwoDimensionalArrayCategory(a:Type,d:IndexedOneDimensionalArray(a,b),e:IndexedOneDimensionalArray(a,c))" +-> "TwoDimensionalArrayCategory(a:Type,b:FiniteLinearAggregate(a),c:FiniteLinearAggregate(a))" +@ <>= )abbrev category ARR2CAT TwoDimensionalArrayCategory ++ Two dimensional array categories and domains @@ -372,6 +379,15 @@ TwoDimensionalArrayCategory(R,Row,Col): Category == Definition where \section{domain IIARRAY2 InnerIndexedTwoDimensionalArray} This is an internal type which provides an implementation of 2-dimensional arrays as PrimitiveArray's of PrimitiveArray's. +<>= +"IIARRAY2" -> "ARR2CAT" +"InnerIndexedTwoDimensionalArray(a:Type,b:Integer,c:Integer,d:FiniteLinearAggregate(a),e:FiniteLinearAggregate(a))" +-> "TwoDimensionalArrayCategory(a:Type,b:FiniteLinearAggregate(a),c:FiniteLinearAggregate(a))" +"InnerIndexedTwoDimensionalArray(a:Type,b:Integer,c:Integer,d:IndexedOneDimensionalArray(a,b),e:IndexedOneDimensionalArray(a,c))" +-> "InnerIndexedTwoDimensionalArray(a:Type,b:Integer,c:Integer,d:FiniteLinearAggregate(a),e:FiniteLinearAggregate(a))" +"InnerIndexedTwoDimensionalArray(a:Type,1,1,b:OneDimensionalArray(a),c:OneDimensionalArray(a))" +-> "InnerIndexedTwoDimensionalArray(a:Type,b:Integer,c:Integer,d:FiniteLinearAggregate(a),e:FiniteLinearAggregate(a))" +@ <>= )abbrev domain IIARRAY2 InnerIndexedTwoDimensionalArray InnerIndexedTwoDimensionalArray(R,mnRow,mnCol,Row,Col):_ @@ -466,6 +482,14 @@ function 'minRowIndex'. The index of the 'first' column may be obtained by calling the function 'minColIndex'. The index of the first element of a 'Row' is the same as the index of the first column in an array and vice versa. +<>= +"IARRAY2" -> "ARR2CAT" +"IndexedTwoDimensionalArray(a:Type,b:Integer,c:Integer)" -> +"TwoDimensionalArrayCategory(a:Type,d:IndexedOneDimensionalArray(a,b),e:IndexedOneDimensionalArray(a,c))" +"IARRAY2" -> "IIARRAY2" +"IndexedTwoDimensionalArray(a:Type,b:Integer,c:Integer)" -> +"InnerIndexedTwoDimensionalArray(a:Type,b:Integer,c:Integer,d:IndexedOneDimensionalArray(a,b),e:IndexedOneDimensionalArray(a,c))" +@ <>= )abbrev domain IARRAY2 IndexedTwoDimensionalArray IndexedTwoDimensionalArray(R,mnRow,mnCol):Exports == Implementation where @@ -927,6 +951,14 @@ o )show TwoDimensionalArray o $AXIOM/doc/src/algebra/array2.spad.dvi @ +<>= +"ARRAY2" -> "ARR2CAT" +"TwoDimensionalArray(a:Type)" -> +"TwoDimensionalArrayCategory(a:Type,b:FiniteLinearAggregate(a),c:FiniteLinearAggregate(a))" +"ARRAY2" -> "IIARRAY2" +"TwoDimensionalArray(a:Type)" -> +"InnerIndexedTwoDimensionalArray(a:Type,1,1,b:OneDimensionalArray(a),c:OneDimensionalArray(a))" +@ <>= )abbrev domain ARRAY2 TwoDimensionalArray TwoDimensionalArray(R):Exports == Implementation where diff --git a/src/algebra/attreg.spad.pamphlet b/src/algebra/attreg.spad.pamphlet index 221d387..0dbacc1 100644 --- a/src/algebra/attreg.spad.pamphlet +++ b/src/algebra/attreg.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{category ATTREG AttributeRegistry} +<>= +"ATTREG" -> "CATEGORY" +"AttributeRegistry()" -> "Category" +@ <>= )abbrev category ATTREG AttributeRegistry diff --git a/src/algebra/axserver.spad.pamphlet b/src/algebra/axserver.spad.pamphlet index 84f72f8..09e5329 100644 --- a/src/algebra/axserver.spad.pamphlet +++ b/src/algebra/axserver.spad.pamphlet @@ -12,6 +12,10 @@ to axiom. \tableofcontents \eject \section{Axiom Server} +<>= +"AXSERV" -> "PACKAGE" +"AxiomServer()" -> "Package" +@ <>= )abbrev package AXSERV AxiomServer diff --git a/src/algebra/bezout.spad.pamphlet b/src/algebra/bezout.spad.pamphlet index 7f6b540..18afeab 100644 --- a/src/algebra/bezout.spad.pamphlet +++ b/src/algebra/bezout.spad.pamphlet @@ -10,6 +10,11 @@ \tableofcontents \eject \section{package BEZOUT BezoutMatrix} +<>= +"BEZOUT" -> "PACKAGE" +"BezoutMatrix(a:Ring,b:UPOLYC(a),c:MATCAT(a,d,e),d:FLAGG(a),e:FLAGG(a))" + -> "Package" +@ <>= )abbrev package BEZOUT BezoutMatrix ++ Author: Clifton J. Williamson diff --git a/src/algebra/brill.spad.pamphlet b/src/algebra/brill.spad.pamphlet index ae69e86..8221267 100644 --- a/src/algebra/brill.spad.pamphlet +++ b/src/algebra/brill.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{package BRILL BrillhartTests} +<>= +"BRILL" -> "PACKAGE" +"BrillhartTests(a:UPOLYC(INT))" -> "Package" +@ <>= )abbrev package BRILL BrillhartTests ++ Author: Frederic Lehobey, James H. Davenport diff --git a/src/algebra/card.spad.pamphlet b/src/algebra/card.spad.pamphlet index 7eb9afa..b56b5c2 100644 --- a/src/algebra/card.spad.pamphlet +++ b/src/algebra/card.spad.pamphlet @@ -328,6 +328,16 @@ o )show CardinalNumber o $AXIOM/doc/src/algebra/card.spad.dvi @ +<>= +"CARD" -> "ORDSET" +"CardinalNumber()" -> "OrderedSet()" +"CARD" -> "ABELMON" +"CardinalNumber()" -> "AbelianMonoid()" +"CARD" -> "MONOID" +"CardinalNumber()" -> "Monoid()" +"CARD" -> "RETRACT" +"CardinalNumber()" -> "RetractableTo(NonNegativeInteger)" +@ <>= )abbrev domain CARD CardinalNumber ++ Author: S.M. Watt diff --git a/src/algebra/carten.spad.pamphlet b/src/algebra/carten.spad.pamphlet index d1880f4..38170aa 100644 --- a/src/algebra/carten.spad.pamphlet +++ b/src/algebra/carten.spad.pamphlet @@ -10,6 +10,10 @@ \tableofcontents \eject \section{category GRMOD GradedModule} +<>= +"GRMOD" -> "SETCAT" +"GradedModule(a:CommutativeRing,b:AbelianMonoid)" -> "SetCategory()" +@ <>= )abbrev category GRMOD GradedModule ++ Author: Stephen M. Watt @@ -61,6 +65,14 @@ GradedModule(R: CommutativeRing, E: AbelianMonoid): Category == @ \section{category GRALG GradedAlgebra} +<>= +"GRALG" -> "GRMOD" +"GradedAlgebra(a:CommutativeRing,b:AbelianMonoid)" -> + "GradedModule(a:CommutativeRing,b:AbelianMonoid)" +"GRALG" -> "RETRACT" +"GradedAlgebra(a:CommutativeRing,b:AbelianMonoid)" -> + "RetractableTo(CommutativeRing)" +@ <>= )abbrev category GRALG GradedAlgebra ++ Author: Stephen M. Watt @@ -1050,6 +1062,14 @@ o )show CartesianTensor o $AXIOM/doc/src/algebra/carten.spad.dvi @ +<>= +"CARTEN" -> "GRALG" +"CartesianTensor(a:Integer,b:NonNegativeInteger,c:CommutativeRing)" -> + "GradedAlgebra(a:CommutativeRing,b:NonNegativeInteger)" +"CARTEN" -> "GRMOD" +"CartesianTensor(a:Integer,b:NonNegativeInteger,c:CommutativeRing)" -> + "GradedModule(a:Integer,b:NonNegativeInteger)" +@ <>= )abbrev domain CARTEN CartesianTensor ++ Author: Stephen M. Watt @@ -1657,6 +1677,10 @@ CartesianTensor(minix, dim, R): Exports == Implementation where @ \section{package CARTEN2 CartesianTensorFunctions2} +<>= +"CARTEN2" -> "PACKAGE" +"CartesianTensorFunctions2(a:INT,b:NNI,c:COMRING,d:DOMRING)" -> "Package" +@ <>= )abbrev package CARTEN2 CartesianTensorFunctions2 ++ Author: Stephen M. Watt diff --git a/src/algebra/coerce.spad.pamphlet b/src/algebra/coerce.spad.pamphlet index 9c0935c..ad24e99 100644 --- a/src/algebra/coerce.spad.pamphlet +++ b/src/algebra/coerce.spad.pamphlet @@ -91,6 +91,8 @@ ConvertibleTo(S:Type): Category == with "RetractableTo(NonNegativeInteger)" -> "RetractableTo(a:Type)" "RetractableTo(Fraction(Integer))" -> "RetractableTo(a:Type)" "RetractableTo(Float)" -> "RetractableTo(a:Type)" +"RetractableTo(Kernel(ExpressionSpace))" -> "RetractableTo(a:Type)" +"RetractableTo(CommutativeRing)" -> "RetractableTo(a:Type)" @ <>= )abbrev category RETRACT RetractableTo diff --git a/src/algebra/equation1.spad.pamphlet b/src/algebra/equation1.spad.pamphlet index 116e585..1483d64 100644 --- a/src/algebra/equation1.spad.pamphlet +++ b/src/algebra/equation1.spad.pamphlet @@ -17,6 +17,8 @@ "InnerEvalable(a:SetCategory,b:Type)" "InnerEvalable(a:Ring,MultivariateTaylorSeriesCategory(a:Ring,b:OrderedSet))" -> "InnerEvalable(a:SetCategory,b:Type)" +"InnerEvalable(Kernal(ExpressionSpace),ExpressionSpace)" -> + "InnerEvalable(a:SetCategory,b:Type)" @ <>= )abbrev category IEVALAB InnerEvalable @@ -53,6 +55,7 @@ InnerEvalable(A:SetCategory, B:Type): Category == with "Evalable(a:SetCategory)" -> "InnerEvalable(a:SetCategory,b:SetCategory)" "Evalable(MultivariateTaylorSeriesCategory(a:Ring,b:OrderedSet))" -> "Evalable(a:SetCategory)" +"Evalable(ExpressionSpace)" -> "Evalable(a:SetCategory)" @ <>= )abbrev category EVALAB Evalable diff --git a/src/algebra/retract.spad.pamphlet b/src/algebra/retract.spad.pamphlet index 8738f2c..3492d7e 100644 --- a/src/algebra/retract.spad.pamphlet +++ b/src/algebra/retract.spad.pamphlet @@ -10,6 +10,12 @@ \tableofcontents \eject \section{category FRETRCT FullyRetractableTo} +<>= +"FRETRCT" -> "RETRACT" +"FullyRetractableTo(a:Type)" -> "RetractableTo(a:Type)" +"FullyRetractableTo(a:Ring)" -> "FullyRetractableTo(a:Type)" +"FullyRetractableTo(a:CommutativeRing)" -> "FullyRetractableTo(a:Type)" +@ <>= )abbrev category FRETRCT FullyRetractableTo ++ Author: Manuel Bronstein @@ -46,6 +52,10 @@ FullyRetractableTo(S: Type): Category == RetractableTo(S) with @ \section{package INTRET IntegerRetractions} +<>= +"INTRET" -> "PACKAGE" +"IntegerRetractions(a:RetractableTo(Integer))" -> "Package" +@ <>= )abbrev package INTRET IntegerRetractions ++ Author: Manuel Bronstein @@ -68,6 +78,10 @@ IntegerRetractions(S:RetractableTo(Integer)): with @ \section{package RATRET RationalRetractions} +<>= +"RATRET" -> "PACKAGE" +"RationalRetractions(a:RetractableTo(Fraction Integer))" -> "Package" +@ <>= )abbrev package RATRET RationalRetractions ++ Author: Manuel Bronstein