@comment -*-texinfo-*-
@comment $Id$
@comment this file contains the News about Singular versions
@comment Unix
@ifclear VERSION
@include version.texi
@end ifclear
@majorheading NEWS in SINGULAR @value{VERSION}
@ifclear singularmanual
@macro nref{what}
\what\
@end macro
@end ifclear
@ifset singularmanual
@macro nref{what}
@ref{\what\}
@end macro
@end ifset
@heading News for version @value{VERSION}
This version starts some reorganization: a section for new libraries:
(see @nref{Experimental libraries}), preparations for parallel computations
(see @nref{modstd_lib}, @nref{Ssi links}), some linear algebra (see below),
many new libaries,
many bug fixes etc.
(especially factorization stuff and memory management).
@heading New @sc{Singular} functions
@itemize @bullet
@item
new command: @code{datetime} (see @nref{datetime})
@item
new command: @code{ludecomp} (see @nref{ludecomp})
@item
new command: @code{luinverse} (see @nref{luinverse})
@item
new command: @code{lusolve} (see @nref{lusolve})
@item
new command: @code{primefactors} (see @nref{primefactors})
@item
new command: @code{rank} (see @nref{rank})
@end itemize
@heading New @sc{Singular} link types
@itemize @bullet
@item
@code{ssi}: experimental Singular-Singular interface (see @nref{Ssi links})
@item
@code{pipe}: string based interface to any program (see @nref{Pipe links})
@end itemize
@heading New @sc{Singular} libraries
@itemize @bullet
@item
new library: fpadim.lib (see @nref{fpadim_lib}: Algorithms for quotient algebras in the letterplace case
@item
new library: dmodvar.lib (see @nref{dmodvar_lib}: algebraic D-modules for varieties
@item
new library: monomialideal.lib (see @nref{monomialideal_lib}: operation for monomial ideals)
@item
new library: multigrading.lib (see @nref{multigrading_lib}: multigradings and related computations)
@item
new library: resbin.lib (see @nref{resbin_lib}: resolution of singularities of binomial ideals
@item
new library: resjung.lib (see @nref{resjung_lib}: resolution of surface singularities by Jung's Algorithm
@item
new library: surfacesignature.lib (see @nref{surfacesignature_lib}: signature of irreducible surface singularities
@end itemize
@heading Changed @sc{Singular} libraries
@itemize @bullet
@item
extended library: modstd.lib (see @nref{modstd_lib}: Groebner basis via modular methods
@item
extended library: normal.lib (see @nref{normal_lib}:Normalization of Affine Rings)
@item
rewritten library: sagbi.lib (see @nref{sagbi_lib}: subalgebra bases analogous to Groebner bases for ideals)
@end itemize
@heading Internal Changes
@itemize @bullet
@item
new gcd code
@item
new factorization code
@end itemize
@heading --------------------------------------------------------------------
@heading Older versions:
@heading News for version 3-1-1
@itemize @bullet
@item
new option @code{qringNF}, see @nref{option}.
@item
new system command @code{system("cpu")}, see @nref{system}.
@end itemize
@heading New @sc{Singular} functions
@itemize @bullet
@item
new command: @code{farey}: lifting to Q (see @nref{farey})
@item
new command: @code{monomial} (see @nref{monomial})
@item
command extended: @code{liftstd} also computes syzygies. (see @nref{liftstd})
@item
command extended: @code{minor} has more options. (see @nref{minor})
@item
command extended: @code{opposite} (see @nref{opposite})
@end itemize
@heading Internal Changes
@itemize @bullet
@item
new minor code
@item
removed @code{EXTGCD} (use @code{extgcd})
@item
moved mp_set_memory_functions-call from kernel/mminit.cc to tesths.cc:main
(in order not to call it for libsingular)
@end itemize
@heading New @sc{Singular} libraries
@itemize @bullet
@item
new library: normaliz.lib (see @nref{normaliz_lib}: Interface to Normaliz 2.2)
@c @item
@c new library: binresol.lib (see @nref{binresol_lib}: binomial ideals)
@c @item
@c new library: findiff.lib (see @nref{findiff_lib}: finite difference schemes)
@end itemize
@heading Changed @sc{Singular} libraries
@itemize
@item
homolog.lib (@nref{homolog_lib}): canonMap
@item
dmod.lib (@nref{dmod_lib}): operatorModulo
@end itemize
@heading News for version 3-1-0
@itemize @bullet
@item
new coefficients: Z, Z/m, Z/(2^n) (see @nref{Rings and orderings})
@item
new handling of the default argument in libraries (see @nref{Parameter list})
@item
@code{ESingular} updated for emacs 22
@item
licences for all parts of @sc{Singular} clarified (see @nref{Preface})
@end itemize
@heading New @sc{Singular} functions
@itemize @bullet
@item
new command: kernel (see @nref{kernel})
@item
new command: sqrfree (see @nref{sqrfree})
@item
command changed: the first argument to @code{monitor} should be an ASCII link.
(see @nref{monitor})
@item
command extended: eliminate: variables to eliminate may also be given as intvec.
(see @nref{eliminate})
@end itemize
@heading Internal Changes
@itemize @bullet
@item
handling of large input for std improved
@item
@nref{interred} implemented in a different way
@item
@nref{kbase} honors the attribute "isHomog"
@item
@nref{jacob} accepts modules and matrices
@item
@nref{gcd} over algebraic extensions of the rationals implemented in a different way
@item new build target: libsingular.a (for gfan etc.)
@item code variants now depend on CPU type, not OS
@item better test for built-in limits (see @nref{Limitations})
@item
operator @code{new(size_t,const std::nothrow_t&)} now also overloaded
@end itemize
@heading New @sc{Singular} libraries
@itemize @bullet
@item
surfex: new version 0.90 (see @nref{surfex_lib}).
@item
new library: redcgs.lib (see @nref{redcgs_lib}: Reduced Comprehensive Groebner Systems)
@item
new library: tropical.lib (see @nref{tropical_lib}: Computations in Tropical Geometry)
@item
new library: polymake.lib (see @nref{polymake_lib}:
Computations with polytopes and fans, interface to polymake and TOPCOM)
@item
new library: sing4ti2.lib (see @nref{sing4ti2_lib}:
interface to 4ti2
@item
new library: decodegb.lib (see @nref{decodegb_lib}: Generating and solving systems of polynomial equations for decoding and finding the minimum distance of linear codes)
@item
new library: dmodapp.lib (see @nref{dmodapp_lib}: applications of D-modules)
@item
new library: bfun.lib global (see @nref{bfun_lib}: Bernstein-Sato polynomial)
@item
new library: freegb.lib (see @nref{freegb_lib}): Twosided Non-commutative Groebner bases in Free Algebras
@item
new library: jacobson.lib (see @nref{jacobson_lib}): Algorithms for Smith and Jacobson Normal Form
@item
contributed library: cimonom.lib (see @nref{cimonom_lib}): determines if the toric ideal of an affine monomial curve is a complete intersection
@item
contributed library: phindex.lib (see @nref{phindex_lib}): Poincare-Hopf index of a real analytic vector field
@end itemize
@heading Changed @sc{Singular} libraries
@itemize
@item
normal.lib (@nref{normal_lib}): changed structure of the result,
@* new algorithms have been implemented which improve the performance
@item
elim.lib (@nref{elim_lib}): @nref{elim}, @nref{nselect}, @nref{select}, @nref{select1}: changed syntax
@item
homolog.lib: kernel renamed to @nref{hom_kernel}.
@*(See also @nref{kernel}, @nref{alg_kernel}).
@item
matrix.lib (@nref{matrix_lib}): new commands for computing symmetric/exterior powers/bases
@item
surf.lib: new command @code{surfer}: interface to program @code{surfer}
@*(See @nref{surf_lib}).
@item
teachstd.lib (@nref{teachstd_lib}): spoly works now in non-commutative algebras and @nref{standard} can thus be used there.
However, since product criterion is a priori not applicable in the non-commutative case,
one may want to disable it first (see @code{prodcrit} for details).
@item
many changes of names in libraries (to have a more consistent naming scheme)
@end itemize
@heading News for version 3-0-4
@itemize @bullet
@item
licence changed: due to the need to use stuff under (L)GPL3,
all parts of @sc{Singular} are licenced under GPL (resp. LGPL) version 2, or (at your option) version 3
@item
new command: (@nref{univariate}): test polynomials for being univariate.
@item
new command: (@nref{variables}): ideal of all variables occurring in a polynomial, ideal or matrix.
@item
syntax change: @nref{ncalgebra} should be substituted by @nref{nc_algebra}.
@code{ncalgebra} is now depreciated, but still supported
@item
library @nref{nctools_lib} updated to use @code{nc_algebra},@*
@nref{Weyl}, @nref{Exterior}, @nref{findimAlgebra} do not change the current ring
but return the new structure
@item
kernel: use Conway polynomials and support more finite fields
@end itemize
@heading News in version 3-0-3
The version 3-0-3 is stabilizing release,
a result of a long beta test and the integration of a lot of small
fixes which were on our waiting list for integration.
It contains also a lot of new features:
@itemize @bullet
@item
licence changed: omalloc and MP are now (also) available under GPL;
that means that all parts of @sc{Singular} are licenced under GPL (resp. LGPL).
@item
factory, libfac, @sc{Singular} updated for gcc 4.1.x
@item
kernel updated for the optional use of boost.
@item
can now be built as a library.
@item
new operator @code{a:b} gives an @code{intvec} of length @code{b} with constant entries @code{a}
@item
new command: (@nref{chinrem}): lifting via chinese remainder theorem
@item
new command: (@nref{interpolation}): ideal of points with given multiplicities
@item
non-commutative kernel subsystem was rewritten in order to support specific algebras more efficiently.
Implemented algebras at the moment: super-commutative algebras (in particular exterior algebras).
@item
@nref{std} et al.: new selection strategy for reductions (@nref{option} (length)).
@item
@nref{reduce}: new strategy for selection and normalization.
@item
@nref{simplify} slightly changed: does not omit zero polynomial unless
specified.
@item
new library: compregb.lib (@nref{compregb_lib}): comprehensive Groebner base system
@item
new library: kskernel.lib (@nref{kskernel_lib}): kernel of the kodaira-spencer map for irreducible plane curve singularities
@item
new library: modstd.lib (@nref{modstd_lib}): Groebner base computations
over the rational numbers via modular computations
@item
new library: noether.lib (@nref{noether_lib}): Noether normalization of an ideal(not nessecary homogeneous)
@item
new library: atkins.lib (@nref{atkins_lib}): the elliptic curve primality test of Atkin
@item
new library: aksaka.lib (@nref{aksaka_lib}): primality testing after Agrawal, Saxena, Kayal
@item
new library: arcpoint.lib (@nref{arcpoint_lib}): truncations of arcs at a singular point
@item
new library: resgraph.lib (@nref{resgraph_lib}): visualization of resolution data.
@item
new library: realrad.lib (@nref{realrad_lib}): computation of the real radical
over the rational numbers and extensions thereof
@item
new library: hyperel.lib (@nref{hyperel_lib}): divisors in the jacobian of hyperelliptic curves
@item
new library: curvepar.lib (@nref{curvepar_lib}): space curves
@item
new library: sagbi.lib (@nref{sagbi_lib}): subalgebras bases analogous to Groebner bases for ideals
@item
new library: surfex.lib (@nref{surfex_lib}): visualizing and rotating surfaces
@item
new library: cimonom.lib (@nref{cimonom_lib}): determines if the toric ideal of an affine monomial curve is a complete intersection.
@item
@nref{sheafcoh_lib}: new experimental functions, in particular @nref{sheafCohBGG2}
@item
library @code{ncall.lib} merged into @nref{all_lib}
@item
library center.lib (@code{center_lib}) renamed to @code{central.lib} (@nref{central_lib})
@item
@nref{nctools_lib}: new functions for super-commutative algebras (i.e. @nref{superCommutative}, @nref{IsSCA}, @nref{AltVarStart}, @nref{AltVarEnd})
@item
resolve.lib: blow ups revised (@nref{resolve_lib})
@item
new algorithms in primdec.lib (@nref{primdec_lib}): radical et al.
@item
improved version of @nref{slimgb}, incorporated into @nref{groebner},
strategy change in groebner
@item
finvar.lib: the algorithm of @nref{secondary_char0} is now used in general in the
non-modular case (@nref{finvar_lib})
@item
finvar.lib: new algorithm for @nref{irred_secondary_char0} (@nref{finvar_lib})
@item
finvar.lib: new function @nref{irred_secondary_no_molien} (@nref{finvar_lib})
@item
finvar.lib: new functions for computing minimal generating sets of
invariant rings of finite groups in the non-modular case: @nref{invariant_algebra_reynolds} for finite
matrix groups and @nref{invariant_algebra_perm} for permutation groups (@nref{finvar_lib})
@item
operation for sparse matrices improved: multiplication, prune, conversion to module
@c @item
@c experimental: @code{python} / @code{ipython} interface
@end itemize
@heading News in version 3-0-2
The version 3-0-2 is mainly a bug fix release,
but it contains also some new features:
@itemize @bullet
@item
factory, libfac updated for gcc 4.1.x
@item
configure/speed improved for 64bit architectures
@item
new library: dmod.lib (@nref{dmod_lib})
@item
new library: perron.lib (@nref{perron_lib})
@item
improved center.lib: revised implementation, new functions (sa_reduce etc.)
@item
revised ncalg.lib (@nref{ncalg_lib}): new algebras, U(sl_n) and U(g_2) changed to conform GAP.
@item
new algorithms in primdec.lib (@nref{primdec_lib}): radical et al.
@item
improved version of @nref{slimgb}, incorporated into @nref{groebner}
@item
finvar.lib: new algorithm for @nref{secondary_char0}, which is a drastic improvement
(@nref{finvar_lib}).
@item
finvar.lib: new function @nref{irred_secondary_char0} (@nref{finvar_lib}).
@item
finvar.lib: new function @nref{rel_orbit_variety}, complementing @nref{relative_orbit_variety}
(@nref{finvar_lib}).
@item
improved module generator (@code{modgen})
@item
experimental: new type @nref{bigint}
@c @item
@c experimental: @code{python} / @code{ipython} interface
@item
more architectures: Solaris on x86/opteron, ...
@item
build process improved: builds automatically without patches on 64bit architectures
@end itemize
@heading NEWS in version 3-0-1
The version 3-0-1 is mainly a bug fix release,
but it contains also some new features:
@itemize @bullet
@item
NTL upgraded to version 5.4
@item
new library: absfact.lib @nref{absfact_lib}
@item
new procedures in primdec.lib: @nref{absPrimdecGTZ}
@item
new procedures in standard.lib: @nref{weightKB}
@item
build process improved: new make target @code{install_all}
@item
improved version of @nref{slimgb}, incorporated into @nref{groebner}
@item
arithmetic in Z/pZ for architecture x84_64 improved (by 25 %)
@end itemize
@heading NEWS in version 3-0-0
The version 3-0-0 is the first in the new
release series version 3-0.
@sc{Singular} version 3 has a greater functionality and an improved architecture.
Major new features are:
@itemize
@item
@nref{Dynamic modules}
@item
non-commutative extension @nref{Non-commutative subsystem}
@item
name spaces (@nref{package})
@item
easy manipulation of rings (@nref{ringlist})
@item
improved speed of maps (@nref{subst}, @nref{map})
@item
a new algorithm for Groebner base computations: @nref{slimgb}.
@item
improved factorization (integration of NTL, factorization over algebraic extensions,
zeroset.lib)
@item
improved gcd of polynomials (including bug fixes)
@item
ports to more architectures including automatic building from source (fink on Mac, ebuild on Gentoo)
@item
more help browsers supported, user extendable (help.cnf)
@item
better support of graded modules
@item
many bugs fixed
@end itemize
Besides theses internal changes, @sc{Singular} version 3 offers many new
features and functionalities (which were partly already incorporated in
the 2-1 pre-release series).
@heading Factorizing algorithms revisited (3-0-0)
Starting with version 2-0-4, we use NTL (of Victor Shoup) for factoring
univariate polynomials. The multivariate factorization code in libfac/factory
now also works over algebraic field extension.
@heading New @sc{Singular} libraries (3-0-0)
@table @asis
@item @nref{control_lib}
algebraic analysis tools for System and Control Theory
@item @nref{mregular_lib}
procedures for computing the Castelnuovo-Mumford regularity
@item @nref{mprimdec_lib}
procedures for primary decomposition of modules
@item @nref{gmspoly_lib}, @nref{gmssing_lib}
procedures for the Gauss-Manin connection of a singularity
@item @nref{resolve_lib}, @nref{reszeta_lib}
resolution of singularities and applications
@item @nref{rootsmr_lib}
counting the number of real roots
@item @nref{sheafcoh_lib}
computing cohomology of sheaves and Tate resolution
@item @nref{signcond_lib}
computing realizable sign conditions
@item @nref{rootsur_lib}
counting number of real roots of univariate polynomial
@item @nref{grwalk_lib}
Groebner and Pertubation walk
@end table
@heading Changes in @sc{Singular} libraries (3-0-0)
Many procedures were moved into different libraries,
the documentation of libraries was generally improved.
All procedures which used to change the current ring return now
the newly created ring.
@table @asis
@end table
@heading New @sc{Singular} functions (3-0-0)
@table @asis
@item @nref{ringlist}
manipulation of rings
@item @nref{slimgb}
a new algorithm to compute Groebner bases
@item @nref{exportto}
transfer an identifier to the specified package
@item @nref{importfrom}
generate a copy of an identifier from the specified package in the current package
@item @nref{frwalk}
fractal walk to change monomial orderings
@end table
@heading @sc{Singular} functions whose syntax/semantics has changed (3-0-0)
@table @asis
@item @nref{degree}
outputs degree and dimension instead of returning an int
@item @nref{attrib}
new attribute: @code{rowShift}
@end table
@heading Non-commutative Extension @sc{Plural} (3-0-0)
Starting with version 3-0-0, @sc{Singular} features the
non-commutative extension @sc{Plural}. It allows to
set and to compute within non-commutative algebras
with PBW basis. Among available algorithms are Groebner
bases for left modules, syzygies and resolutions.
The following libraries come together with @sc{Plural}:
@table @asis
@item @code{center.lib}
computes generators of the center and centralizer subalgebras up
to a given degree resp. up to a given number of generators
@item @nref{involut_lib}
determines linear antiautomorphisms (involutions) and automorphisms
@item @nref{gkdim_lib}
computes a Gel'fand-Kirillov dimension for modules
@item @nref{ncalg_lib}
includes ready-to-use funtions for defining many important
non-commutative algebras
@item @nref{ncdecomp_lib}
computes a decomposition of a module by its central characters
@item @nref{ncalg_lib}, @nref{nctools_lib}
contain numerous useful tools for non-commutative algebras
@item @nref{qmatrix_lib}
procedures, related to quantum matrices and minors
@end table
@heading Internal Changes (3-0-0)
@table @asis
@item new mapping code
@c @item non-commutative extension (Plural)
@item factory revised
(gcd, factorizing polynomial over algebraic extension fields,...)
@end table
@heading Porting
@itemize @bullet
@item @sc{Singular} is available for ix86-Linux,
SunOS-5, IRIX-6, ix86-Win (runs on Windows 95/98/NT4/2000/XP/Vista),
FreeBSD, MacOS X, x86_64-Linux (AMD64/Opteron/EM64T),
IA64-Linux
@end itemize