     [file version.texi not included]

NEWS in SINGULAR VERSION
************************

News for version VERSION
========================

New libraries:

  * invar.lib: Invariant theory invar_lib

Changed libraries:

  * chern.lib:  new version (chern_lib)

  * grobcov.lib: new version (grobcov_lib), new functions ConsLevels, Levels, Grob1Levels, DifConsLCSets

Changes in the kernel/build system:

  * improved gcd and multiplication via FLINT

  * improved lift (and related)

  * port to polymake 3.5.x

  * rational functions via flint (flintQ)

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:

  * pseudo ordering L allows setting of limits for exponents in polynomials (Pseudo ordering L,attrib for maxExp)

  * %,mod: also for poly operands (poly operations).

  * delete: extended to intvec, ideal, module (delete).

  * syz (syz), lift (lift), liftstd (liftstd), intersect(intersect): with a specified GB algorithm

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:

  * chern.lib:  new version (chern_lib)

  * gitfan.lib:  new (incompatible) version (gitfan_lib)

  * grobcov.lib:  new version (grobcov_lib)

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:

  * classify_aeq.lib: new procedures (classify_aeq_lib)

  * grobcov.lib: new version (grobcov_lib)

  * ncfactor.lib: factorization in some noncommuative algebras (ncfactor_lib) with new routine ncfactor (ncfactor)

  * primdec.lib: new option "subsystem" (primdec_lib)

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:

  * module customstd_lib: modify std (satstd)

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:

  * align (align)

  * branchTo (procs with different argument types)

  * -> (proc expression)

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:

  * revised polymake interface (polymake.so)

  * revised gfanlib interface (gfanlib.so)

  * Presolve::findvars (findvars, variables)

  * Ring::addvarsTo (addvarsTo)

  * Ring::addNvarsTo (addNvarsTo)

  * Ring::hasAlgExtensionCoefficient (hasAlgExtensionCoefficient)

  * Schreyer::s_res (s_res)

  * grobcov.lib (grobcovK) (grobcov_lib) with new routines AddCons  AddConsP.

  * normaliz.lib (for normaliz >=2.8) (normaliz_lib)

  * renamed groebnerFan to groebnerFanP in polymake.lib (polymake_lib)

  * renamed fVector to fVectorP in polymake.lib (polymake_lib,polymakeInterface_lib)

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

  * Groebner cover for parametric ideals (grobcov_lib)

  * normalization of affine rings (normal_lib)

  * classification of real singularities (realclassify_lib)

  * GIT-fans (gitfan_lib)

  * algebraic/transcendental field extensions

  * Non-commutative subsystem

  * an abstraction layer for parallel computations (parallel_lib)

  * run-time loading of supplementary kernel code (Dynamic modules)

  * interpreter language support for name spaces (package)

Availability

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