Home Online Manual
Back: Release Notes
Forward: Singular 3 and Singular 4
Up: Singular Manual
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

E.1 News and changes


News for version 4-1-2

New libraries:
  • arnoldclassify.lib: Arnol'd Classifier of Singularities ( arnoldclassify_lib)
  • difform.lib: Procedures for differential forms ( difform_lib)
  • dmodideal.lib: Algorithms for Bernstein-Sato ideals of morphisms ( dmodideal_lib)
  • fpalgebras.lib: Generation of various algebras in the letterplace case ( fpalgebras_lib)
  • ncrat.lib: non-commutatie rational functions ( ncrat_lib)

Changed libraries:

  • freegb.lib: lpDivision, lpPrint ( freegb_lib)
  • fpadim.lib ( fpadim_lib)
  • schreyer.lib: deprecated
  • goettsche.lib: new, extended version (The Nakajima-Yoshioka formula up to n-th degree,Poincare Polynomial of the punctual Quot-scheme of rank r on n planar points Betti numbers of the punctual Quot-scheme of rank r on n planar points)( goettsche_lib)
  • grobcov.lib: small bug fix ( grobcov_lib)

Changes in the kernel/build system:

  • integrated xalloc into omalloc: (./configure --disable-omalloc)
  • improved heuristic for det ( det)
  • improved reading of long polynomials
  • improved groebner bases over Z coefficients
  • code for free algebras (letterplace rings) rewritten (using now the standrad +,-,*,^,std,...) ( LETTERPLACE)
  • new commands rightstd ( rightstd (letterplace))
  • extended twostd to LETTERPLACE ( twostd (letterplace), twostd (plural))
  • pseudo type polyBucket
  • new type smatrix: sparse matrix (experimental) ( smatrix).
  • extended coef to ideals ( coef).
  • error and signal handling in libSingular ( libSingular).
  • updated gfanlib to version 0.6.2
  • port to NTL 11 (needs C++11: gcc6 or -std=c++11), which does not conflict with polymake (needs C++14)

News for version 4-1-1

New syntax:

  • alias: may be used as a prefix to a variable declaration. Can only be used in procedure headings. ( General command syntax).

New command:

  • fres: improved version of sres: computes a (not necessarily minimal) free resolution of the input ideal/module, using Schreyer's algorithm. ( fres, sres).

Extended commands:

New libraries:

  • classify2.lib: Classification of isolated singularities of corank <=2 and modality <= wrt. right equivalence over the complex numbers according to Arnold's list. ( classify2_lib)
  • goettsche.lib: Goettsche's formula for the Betti numbers of the Hilbert scheme of points on a surface, Macdonald's formula for the symmetric product ( goettsche_lib)
  • combinat.lib, modules.lib, methods,lib, nets.lib: a more mathematical view of modules ( combinat_lib: combinatorics), ( methods_lib: construct procedures), ( modules_lib: free resolutions), ( nets_lib: pretty printing)
  • ncHilb.lib: Hilbert series of non-commutative monomial algebras ( ncHilb_lib)
  • realclassify.lib: Classification of real singularities( realclassify_lib)
  • rootisolation.lib: real root isolation using interval arithmetic( rootisolation_lib)
  • rstandard.lib: Janet bases and border bases for ideals ( rstandard_lib)

Changed libraries:

Changes in the kernel/build system:

  • port to polymake 3.x.x
  • port to NTL 10 with threads (needs also C++11: gcc6 or -std=c++11)
  • p_Invers is only a helper for p_Series: now static
  • p_Divide is now p_MDivide, pDivide/p_Divide is a new routine

News for version 4-1-0

Syntax changes:

  • new (additional) form of ring definitions: (for example ring R=QQ[x,y,z];) ( General syntax of a ring declaration)
  • new (additional) form of multi-indicies: (for example i(1,2,3,4,5)) ( Names)
  • changed behaviour of charstr ( charstr)
  • new data type cring to describe the coeffient rings, to be used for the new definitions for (polynomial) rings ( General syntax of a ring declaration)
  • new command ring_list to access the parts used to contruct polynomial rings ( ring_list, ringlist)
  • extended polynomial ring construction: also from lists produced by ring_list
  • new attribute ring_cf for ring ( attrib)
  • printing of rings changed to match cring names ( charstr)

New libraries:

  • new library: classifyMapGerms.lib: standard basis of the tangent space at the orbit of an algebraic group action ( classifyMapGerms_lib)
  • new library: ffmodstd.lib: Groebner bases of ideals in polynomial rings over algebraic function fields( ffmodstd_lib)
  • new library: nfmodsyz.lib: syzygy modules of submodules of free modules over algebraic number fields( nfmodsyz_lib)
  • new library: curveInv.lib: invariants of curves ( curveInv_lib)
  • new library: gfan.lib: interface to gfanlib ( gfan_lib)
  • extended library: interface to polymake merged into polymake_lib
  • new library: tropicalNewton.lib: Newton polygon methods in tropical geometry ( tropicalNewton_lib)
  • new library: schubert.lib: some procedures for intersction theory ( schubert_lib)

Changed libraries:

Changes in the kernel:

  • improved mapping of polynomials/ideals/...
  • port to gcc 6
  • port to gfanlib 0.6 (requires C++11, i.e. gcc >=4.3)
  • port to NTL 10
  • port to polymake 3.0
  • port to readline 7
  • sba works for global orderings, also for coefficient types Z and Z/m
  • std works for all orderings, also for coefficient types Z and Z/m with local/mixed orderings
  • factorize works for polynomial rings over ZZ

Experimental stuff:

News for version 4-0-3

New libraries:

  • new library: brillnoether.lib: Riemann-Roch spaces of divisors on curves ( brillnoether_lib)
  • new library: chern.lib: Chern classes ( chern_lib)
  • new library: ffmodstd.lib: Groebner bases of ideals in polynomial rings over algebraic function fields( ffmodstd_lib)
  • new library: GND.lib: General Neron Desingularization ( GND_lib)
  • new library: graal.lib: localization at prime ideals ( graal_lib)
  • new library: hess.lib: Riemann-Roch space of divisors ( hess_lib)

Changed libraries:

  • renamed algemodstd_lib to nfmodstd_lib, extended to module
  • renamed derham_lib to deRham_lib
  • grobcov.lib (grobcovK): Groebner Cover for parametric ideals ( grobcov_lib) with new routine ConsLevels ( ConsLevels), removed AddCons AddConsP.

News for version 4-0-2

New commands:

Change in ring handling:

  • typeof( qring ) returns "ring"

New libraries:

  • algemodstd.lib: Groebner bases of ideals in polynomial rings over algebraic number fields(renamed to nfmodstd_lib)
  • arr.lib: arrangements of hyperplanes ( arr_lib)
  • brillnoether.lib: Riemann-Roch spaces of divisors on curve ( brillnoether_lib)
  • hess.lib: Riemann-Roch space of divisors on function fields and curves ( hess_lib)
  • gradedModules.lib: graded modules/matrices/resolutions ( gradedModules_lib)

Changed libraries:

News for version 4-0-1

Version 4-0-1 is a bug fix release.

New feature: attribute ring_cf for ring ( attrib)

News for version 4-0-0

Version 4-0-0 is a milestone relase of Singular. The new release series 4 aims for an entirely modularized architecture simplifying connectivity with other systems and paving the way for parallel computations. As a first step in modularization, the new release features an internal structural separation of coefficient rings and polynomial rings. This allows for a flexible integration of new coefficient rings.

SINGULAR 4-0-0's list of new functionality and significant improvements further extends that of the 3-1-6/7 prerelease series.

New functionality

  • de Rham cohomology of complements of algebraic varieties ( deRham_lib)
  • Gromov-Witten numbers of elliptic curves ( ellipticcovers_lib)
  • classification of isolated complete intersection singularities in characteristic 0 ( classifyci_lib)
  • parametrization of orbits of unipotent actions ( orbitparam_lib)
  • F5-like Groebner basis algorithm ( sba)
  • element-wise application of functions to data structures ( apply)
  • support for debugging libraries ( ASSUME)

Improved functionality


SINGULAR is available as source code and for Linux, Mac OS X, Windows, FreeBSD and SunOS-5.