Difference between revisions of "CoCoA:CoCoA 4"

From ApCoCoAWiki
m (fixed lists)
Line 29: Line 29:
  
 
# NEW/UPDATED PACKAGES:
 
# NEW/UPDATED PACKAGES:
 
+
#* $contrib/ext computes Ext, presentations, and depth
* $contrib/ext computes Ext, presentations, and depth
+
#* $contrib/invariants computes homogeneous generators for an algebra of invariants, tests invariance of a polynomial
* $contrib/invariants computes homogeneous generators for an algebra of invariants, tests invariance of a polynomial
+
#* All contributed packages have been moved: the package name no longer includes the name(s) of the author(s).
* All contributed packages have been moved: the package name no longer includes the name(s) of the author(s).
+
#* The contributed packages thmproving and typevectors have been properly incorporated into CoCoA.  
* The contributed packages thmproving and typevectors have been properly incorporated into CoCoA.  
 
 
 
 
# NEW FUNCTIONS: (for details, see the corresponding entry in online help)
 
# NEW FUNCTIONS: (for details, see the corresponding entry in online help)
 
+
#* ?keyword and ??keyword new shorthand for accessing the CoCoA on-line manual
* ?keyword and ??keyword new shorthand for accessing the CoCoA on-line manual
+
#* MapDown(F) convert a polynomial to a coefficient, or give an error if the polynomial is not constant.
* MapDown(F) convert a polynomial to a coefficient, or give an error if the polynomial is not constant.
+
#* Mod2Rat(R, M, Q) convert a modular number to a rational using the algorithm of Wang, Guy and Davenport.  
* Mod2Rat(R, M, Q) convert a modular number to a rational using the algorithm of Wang, Guy and Davenport.  
 
  
 
===CoCoa 4.3===
 
===CoCoa 4.3===
Line 47: Line 44:
  
 
# The names and location of all CoCoA packages have been systematically changed:
 
# The names and location of all CoCoA packages have been systematically changed:
 
+
#* CoCoA packages now have names ending in .cpkg (this to avoid some difficulties on MacOS X);
* CoCoA packages now have names ending in .cpkg (this to avoid some difficulties on MacOS X);
+
#* the directories containing the packages are now packages/cocoa and packages/contrib.  
* the directories containing the packages are now packages/cocoa and packages/contrib.  
+
#* Predefined aliases for all packages (type Aliases(); in CoCoA).
 
 
* Predefined aliases for all packages (type Aliases(); in CoCoA).
 
 
# NEW/UPDATED PACKAGES:
 
# NEW/UPDATED PACKAGES:
 
+
#* $cocoa/RealRoots for computing isolating intervals of real roots.
* $cocoa/RealRoots for computing isolating intervals of real roots.
+
#* $cocoa/approx for finding simple approximations to rationals.
* $cocoa/approx for finding simple approximations to rationals.
+
#* $cocoa/combinatoria a few assorted "combinatorial" functions.
* $cocoa/combinatoria a few assorted "combinatorial" functions.
+
#* $contrib/conductor for computing the conductor sequence of points.
* $contrib/conductor for computing the conductor sequence of points.
+
#* $contrib/matrixnormafform for computing Smith normal form.  
* $contrib/matrixnormafform for computing Smith normal form.  
 
 
 
 
# NEW FUNCTIONS: (for details, see the corresponding entry in online help)
 
# NEW FUNCTIONS: (for details, see the corresponding entry in online help)
 
+
#* StarPrintFold like StarPrint but with a specified line length limit
* StarPrintFold like StarPrint but with a specified line length limit
+
#* Iroot compute integer approximations to square roots, cube roots, etc.
* Iroot compute integer approximations to square roots, cube roots, etc.
+
#* ILogBase compute integer approximation to a logarithm
* ILogBase compute integer approximation to a logarithm
+
#* RealRoots, RealRootRefine, RootBound determine isolating intervals for the real roots of a polynomial, refine such an interval, bound the magnitudes of the roots.
* RealRoots, RealRootRefine, RootBound determine isolating intervals for the real roots of a polynomial, refine such an interval, bound the magnitudes of the roots.
+
#* FloatApprox, CFApprox, CFApproximants, ContFrac functions for finding "simple" rational numbers which approximate a given number
* FloatApprox, CFApprox, CFApproximants, ContFrac functions for finding "simple" rational numbers which approximate a given number
+
#* DecimalStr print a fraction as a decimal (without exponent notation)
* DecimalStr print a fraction as a decimal (without exponent notation)
+
#* PoincareShifts compute Hilbert-Poincare series for a module with shifts
* PoincareShifts compute Hilbert-Poincare series for a module with shifts
+
#* HilbertBasis computes a Hilbert basis for a submonoid of N^k
* HilbertBasis computes a Hilbert basis for a submonoid of N^k
+
#* LinKerModP computes the kernel of a matrix assuming its entries are coefficients modulo the current characteristic
* LinKerModP computes the kernel of a matrix assuming its entries are coefficients modulo the current characteristic
+
#* Subsets produce a list of all subsets, or just those of given cardinality
* Subsets produce a list of all subsets, or just those of given cardinality
+
#* Partitions list all integer partitions
* Partitions list all integer partitions
+
#* Gin compute the generic initial ideal of an ideal (probabilistic)
* Gin compute the generic initial ideal of an ideal (probabilistic)
+
#* IsStable, IsStronglyStable, IsLexSegment check whether a monomial ideal is stable/stronglystable/lexsegment
* IsStable, IsStronglyStable, IsLexSegment check whether a monomial ideal is stable/stronglystable/lexsegment
+
#* PrimaryDecomposition compute the primary decomposition ONLY for squarefree monomial ideals  
* PrimaryDecomposition compute the primary decomposition ONLY for squarefree monomial ideals  
 
 
 
 
# Some existing functions have been usefully extended or improved:
 
# Some existing functions have been usefully extended or improved:
 
+
#* Toric for input with negative entries
* Toric for input with negative entries
+
#* EvalHilbertFn for non-standard gradings over Z
* EvalHilbertFn for non-standard gradings over Z
+
#* Sum a new version, usually faster than the old version.  
* Sum a new version, usually faster than the old version.  
 
  
  

Revision as of 09:18, 28 June 2005

About

CoCoA 4 was first published in July 2000.


Sub versions

  • ToDo

Main Developers

Features

CoCoA 4

  • Unified graphical interface for Windows and Linux (hopefully soon for Macintosh too);
  • Ideals of multiple points;
  • Improved Emacs interface.

CoCoA 4.1

  • Approximations (FloatStr, MantissaAndExponent, Isqrt);
  • flexible/extended ring change (BringIn, QZP, ZPQ);
  • QuotientBasis; Discriminant; GetErrMesg;
  • new packages from contributors (thmproving, typevectors).
  • Improved ideals of multiple points;
  • improved graphical interface;
  • improved Emacs interface.

CoCoA 4.2

  1. NEW/UPDATED PACKAGES:
    • $contrib/ext computes Ext, presentations, and depth
    • $contrib/invariants computes homogeneous generators for an algebra of invariants, tests invariance of a polynomial
    • All contributed packages have been moved: the package name no longer includes the name(s) of the author(s).
    • The contributed packages thmproving and typevectors have been properly incorporated into CoCoA.
  2. NEW FUNCTIONS: (for details, see the corresponding entry in online help)
    • ?keyword and ??keyword new shorthand for accessing the CoCoA on-line manual
    • MapDown(F) convert a polynomial to a coefficient, or give an error if the polynomial is not constant.
    • Mod2Rat(R, M, Q) convert a modular number to a rational using the algorithm of Wang, Guy and Davenport.

CoCoa 4.3

This version of CoCoA is largely a consolidation of version 4.2. A number of bugs and inconsistencies have been corrected, with improvements to efficiency in certain cases. This new release should be more robust, and more helpful when an error occurs.

Main new features:

  1. The names and location of all CoCoA packages have been systematically changed:
    • CoCoA packages now have names ending in .cpkg (this to avoid some difficulties on MacOS X);
    • the directories containing the packages are now packages/cocoa and packages/contrib.
    • Predefined aliases for all packages (type Aliases(); in CoCoA).
  2. NEW/UPDATED PACKAGES:
    • $cocoa/RealRoots for computing isolating intervals of real roots.
    • $cocoa/approx for finding simple approximations to rationals.
    • $cocoa/combinatoria a few assorted "combinatorial" functions.
    • $contrib/conductor for computing the conductor sequence of points.
    • $contrib/matrixnormafform for computing Smith normal form.
  3. NEW FUNCTIONS: (for details, see the corresponding entry in online help)
    • StarPrintFold like StarPrint but with a specified line length limit
    • Iroot compute integer approximations to square roots, cube roots, etc.
    • ILogBase compute integer approximation to a logarithm
    • RealRoots, RealRootRefine, RootBound determine isolating intervals for the real roots of a polynomial, refine such an interval, bound the magnitudes of the roots.
    • FloatApprox, CFApprox, CFApproximants, ContFrac functions for finding "simple" rational numbers which approximate a given number
    • DecimalStr print a fraction as a decimal (without exponent notation)
    • PoincareShifts compute Hilbert-Poincare series for a module with shifts
    • HilbertBasis computes a Hilbert basis for a submonoid of N^k
    • LinKerModP computes the kernel of a matrix assuming its entries are coefficients modulo the current characteristic
    • Subsets produce a list of all subsets, or just those of given cardinality
    • Partitions list all integer partitions
    • Gin compute the generic initial ideal of an ideal (probabilistic)
    • IsStable, IsStronglyStable, IsLexSegment check whether a monomial ideal is stable/stronglystable/lexsegment
    • PrimaryDecomposition compute the primary decomposition ONLY for squarefree monomial ideals
  4. Some existing functions have been usefully extended or improved:
    • Toric for input with negative entries
    • EvalHilbertFn for non-standard gradings over Z
    • Sum a new version, usually faster than the old version.


CoCoA 4.4 Pre-release 1

  • GBasis5, ReducedGBasis5, LT5, ... -- calls to the CoCoA5Server
  • IsPPrime --
  • NextPPrime -- these were added to allow an RSA demo, might be useful anyway.
  • PowerMod --
  • GCDFreeBasis --
  • RefineGCDFreeBasis -- these were added to support LinearSimplify
  • FactorMultiplicity --
  • LinearSimplify
  • OpenSocket -- added to facilitate intercommunication with CoCoALib server
  • Fixed a bug in the factorizer which could cause a crash in rare cases.
  • the official packages which used to be in packages/cocoa/ are in packages/ to simplify their use: All $cocoa/* packages have been renamed to remove ""cocoa/"".

NEW/UPDATED PACKAGES:

  • $combinatoria -- new function Permutations(L)
  • $cocoa5 -- calls to the CoCoA-5 C++ library
  • $contrib/CantStop -- the first game in CoCoA ;-) www.boardgamegeek.com

CoCoA 4.4

  • All $cocoa/* packages have been renamed to remove ""cocoa/"".
  • GBasis5, ReducedGBasis5, LT5, ... -- calls to the CoCoALib server
  • The NUL character is silently ignored in string constants. The character with code 255 is handled correctly in string constants.
  • ClearDenom -- clear common denominator of a poly with rational coeffs
  • NumContent -- numerical content of a poly with integer coeffs
  • IsPPrime --
  • NextPPrime -- these were added to allow an RSA demo, might be useful anyway.
  • PowerMod --
  • GCDFreeBasis -- compute a GCD free basis for integers
  • RefineGCDFreeBasis -- refine a GCD free basis of integers
  • FactorMultiplicity -- count how many times a factor divides a given integer
  • LinearSimplify -- find a simplifying linear substitution for a univariate polynomial
  • SmoothFactor -- find small prime factors of an integer
  • OpenSocket -- added to facilitate intercommunication with CoCoALib server
  • Fixed a bug in the factorizer which could cause a crash in rare cases.
  • Ext, Depth, Presentation...
    • the functions of ext.cpkg are better documented
    • and directly accessible (i.e. without ""Ext."" prefix)
  • IsTermOrdering, IsPositiveGrading -- tests on matrices
  • PositiveGrading4, HilbertSeriesMultiDeg
    • work around for the limitation
    • on multigradings
  • RegularityIndex -- regularity index of a Hilbert Function
  • PrintBettiDiagram -- a ""Macaulay style"" Betti numbers diagram
  • the official packages which used to be in packages/cocoa/ are in packages/ to simplify their use

NEW/UPDATED PACKAGES:

  • $combinatoria -- new function Permutations(L)
  • $cocoa5 -- calls to the CoCoA-5 C++ library
  • $contrib/CantStop -- the first game in CoCoA ;-) rules at www.boardgamegeek.com

Platforms & Interfaces

[ToDo]

a list of actual builds can be found in the article CoCoA4 Builds

Downloads

[ToDo: adding other mirrors]