source: git/doc/NEWS.texi

spielwiese Release-4-3-2p1
Last change on this file was ceacc4c, checked in by Hans Schoenemann <hannes@…>, 4 weeks ago
doc: NEWS 4-3-2
  • Property mode set to 100644
File size: 17.8 KB
Line 
1@comment -*-texinfo-*-
2@comment this file contains the News about Singular versions
3@comment Unix
4@ifclear VERSION
5@include version.texi
6@end ifclear
7
8@majorheading NEWS in SINGULAR @value{VERSION}
9
10@ifclear singularmanual
11@macro nref{what}
12\what\
13@end macro
14@end ifclear
15
16@ifset singularmanual
17@macro nref{what}
18@ref{\what\}
19@end macro
20@end ifset
21
22@heading News for version @value{VERSION}
23
24Changed libraries:
25@itemize
26@item many: call std in many places only if attribute @code{isSB} is not set
27@item many: change many calls to @code{execute} by better variants
28@end itemize
29
30New commands:
31@itemize
32@item @code{coeffs} for @code{ring} (@nref{coeffs})
33@end itemize
34
35Changes in the kernel/build system:
36@itemize
37@item new algorithm for Hilbert function (@nref{hilb})
38@end itemize
39
40@c New commands:
41@c @itemize
42@c @end itemize
43@c
44@c New libraries:
45@c
46@c @itemize
47@c @end itemize
48
49@heading News for version 4-3-1
50
51New libraries:
52@itemize
53@item @code{normal.lib}: new command @code{isNormal}, option @code{normalCheck} for @code{normal} (@nref{normal_lib})
54@end itemize
55
56Changed libraries:
57@itemize
58@item chern.lib: fixed @code{symNsym} (@nref{chern_lib})
59@item homolog.lib: fixed corner cases for @code{depth} (@nref{homolog_lib})
60@end itemize
61
62New commands:
63@itemize
64@item @code{chinrem}, @code{farey} for @code{smatrix} (@nref{smatrix})
65@end itemize
66
67Changed commands:
68@itemize
69@item overflow check for @nref{vdim}
70@item better overflow check/les overflows for Hilbert function (@nref{hilb})
71@item @code{delete} accepts @code{intvec} for the indices to delete (@nref{delete})
72@item several GB based commands accept the choice of the algorithm:
73@code{"std","slimgb","sba","modstd","singmatic","groebner","ffmod","nfmod"} (@nref{syz}, @nref{eliminate}, @nref{intersect}, @nref{modulo}, @nref{liftstd}, @nref{lift})
74@item @code{reduce} for non-field coefficients: search best reduction
75@end itemize
76
77Changes in the kernel/build system:
78@itemize
79@item changes for gcc 12
80@item new option @code{--log LOGFILE}
81@item configure can change the path to hml documentation (@code{--htmldir=...})
82@item different format for @code{doc.tbz2}
83@item new algorithm for Hilbert function (@nref{hilb})
84@end itemize
85
86@heading News for version 4-3-0
87
88New libraries:
89@itemize
90@item enumpoints.lib: enumerating rational points (@nref{enumpoints_lib})
91@item sagbigrob.lib: Sagbi-Groebner basis of an ideal of a subalgebra (@nref{sagbigrob_lib})
92@item puiseuxexpansion.lib: Puiseux expansions over algebraic extensions (@nref{puiseuxexpansions_lib})
93@item integralbasis_lib: Integral basis in algebraic function fields: new version (@nref{integralbasis_lib})
94@end itemize
95
96
97Changes in the kernel/build system:
98@itemize
99@item input history is stored by default in @code{.singularhistory} (@nref{Editing input}).
100@item ABI change: all number routines (@code{n_...}) have only @code{coeffs} as last argument,
101     functions with @code{ring} as last argument are removed
102@item PATH is not changed for @code{system("sh",..)} (use @nref{system, SingularBin})
103@item @code{hilb} avoids int overflow (also in @code{degree, stdhilb})
104@item @code{liftstd} (with 2 arguments) improved (@nref{liftstd})
105@item @code{noether} improved (@nref{noether}), use in @code{groebner(I,"HC")}
106for faster results for local orderings, 0-dimensional ideals (@nref{groebner}).
107@item letterplace routines improved (@nref{LETTERPLACE})
108@item info file is now @code{singular.info} instead of @code{singular.hlp}
109@item update for using FLINT 2.8.x
110@end itemize
111
112@heading News for version 4-2-1
113
114New commands:
115@itemize
116@item Letterplace: dim, rightStd for qrings (@nref{LETTERPLACE})
117@item Letterplace: map, fetch, imap (@nref{map}, @nref{fetch}, @nref{imap})
118@end itemize
119
120New libraries:
121
122@itemize
123@item decomp.lib: functional decomposition of polynomials (@nref{decomp_lib})
124@item hodge.lib: algorithms for Hodge ideals (@nref{hodge_lib})
125@item tateProdCplxNegGrad.lib: sheaf cohomology on product of projective spaces (@nref{tateProdCplxNegGrad_lib})
126@end itemize
127
128Changes in the kernel/build system:
129@itemize
130@item @code{liftstd} (with 2 arguments) improved (@nref{liftstd})
131@item building on Cygwin with shared libraries
132@item building the manual via @code{--enable-doc-build}
133@end itemize
134
135@heading News for version 4-2-0
136
137Syntax changes:
138@itemize
139@item renamed poly.lib to polylib.lib (@nref{polylib_lib})
140@end itemize
141
142New libraries:
143
144@itemize
145@item interval.lib: interval arithmetic (@nref{interval_lib})
146@item maxlike.lib: algebraic statistics (@nref{maxlike_lib})
147@item nchilbert.lib: Hilbert series for LetterPlace algebras (@nref{nchilbert_lib})
148@item polyclass.lib: class of polynomials (@nref{polyclass_lib})
149@item recover.lib: Hybrid numerical/symbolical algorithms (@nref{recover_lib})
150@item redcgs.lib: Reduced Comprehensive Groebner Systems (@nref{redcgs_lib})
151@item ringgb.lib: coefficient rings (@nref{ringgb_lib})
152@item sets.lib: Sets (@nref{sets_lib})
153@item stanleyreisner.lib: T1 and T2 for a general Stanley-Reiser ring (@nref{stanleyreisner_lib}
154@item systhreads.lib: multi-threaded objects (@nref{systhreads_lib})
155@end itemize
156
157Changed libraries:
158@itemize
159@item classify_aeq.lib: new procedure @code{classSpaceCurve} (@nref{classify_aeq_lib})
160@item grobcov.lib: new version (@nref{grobcov_lib})
161@item modular.lib: parallel version for verification via @code{system("verifyGB",I)}
162@end itemize
163
164New commands:
165@itemize
166@item @code{system("verifyGB",I)}: test, if I is a Groebner basis (using parallel processes)
167@item Letterplace: modulo,syz,lift,liftstd, rightStd (@nref{LETTERPLACE})
168@end itemize
169
170Changes in the kernel/build system:
171@itemize
172@item update for using FLINT 2.6.x and for FLINT 2.7.0
173@item Singular can be build with NTL or FLINT or both
174(if none is available, @code{factorize} and @code{gcd} will not work.)
175@end itemize
176
177@heading News for version 4-1-3
178New libraries:
179@itemize
180@item invar.lib: Invariant theory @nref{invar_lib}
181@item moddiq.lib: ideal quotient and saturation @nref{moddiq_lib}
182@item ncModslimgb.lib: modular Groebner bases for G-algebras @nref{ncModslimgb_lib}
183@end itemize
184
185Changed libraries:
186@itemize
187@item chern.lib:  new version (@nref{chern_lib})
188@item grobcov.lib: new version (@nref{grobcov_lib}),
189      new functions @nref{ConsLevels}, @nref{Levels}, @nref{Grob1Levels},
190      @nref{DifConsLCSets}
191@end itemize
192
193Changes in the kernel/build system:
194@itemize
195@item improved gcd and multiplication via FLINT
196@item improved lift (and related)
197@item port to polymake 3.5.x
198@item rational functions via flint (@nref{flintQ})
199@item free algebra over Z (@nref{LETTERPLACE})
200@item adaptions/functions for @code{Singular.jl}(@uref{https://github.com/oscar-system/Singular.jl})
201@end itemize
202
203@heading News for version 4-1-2
204New libraries:
205@itemize
206@item arnoldclassify.lib: Arnol'd Classifier of Singularities (@nref{arnoldclassify_lib})
207@item difform.lib: Procedures for differential forms (@nref{difform_lib})
208@item dmodideal.lib: Algorithms for Bernstein-Sato ideals of morphisms (@nref{dmodideal_lib})
209@item fpalgebras.lib: Generation of various algebras in the letterplace case (@nref{fpalgebras_lib})
210@item ncrat.lib: non-commutatie rational functions
211(@nref{ncrat_lib})
212@end itemize
213
214Changed libraries:
215@itemize
216@item freegb.lib: lpDivision, lpPrint (@nref{freegb_lib})
217@item fpadim.lib (@nref{fpadim_lib})
218@item schreyer.lib: deprecated
219@item 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)(@nref{goettsche_lib})
220@item grobcov.lib: small bug fix (@nref{grobcov_lib})
221@end itemize
222
223Changes in the kernel/build system:
224@itemize
225@item integrated xalloc into omalloc: (@code{./configure --disable-omalloc})
226@item improved heuristic for @code{det} (@nref{det})
227@item improved reading of long polynomials
228@item improved groebner bases over Z coefficients
229@item code for free algebras (letterplace rings) rewritten
230(using now the standrad @code{+,-,*,^,std},...) (@nref{LETTERPLACE})
231@item new commands @code{rightstd} (@nref{rightstd (letterplace)})
232@item extended @code{twostd} to @sc{Letterplace} (@nref{twostd (letterplace)}, @nref{twostd (plural)})
233@item pseudo type @code{polyBucket}
234@item new type @code{smatrix}: sparse matrix (experimental) (@nref{smatrix}).
235@item extended @code{coef} to ideals (@nref{coef}).
236@item error and signal handling in @code{libSingular} (@nref{libSingular}).
237@item updated gfanlib to version 0.6.2
238@item port to NTL 11 (needs C++11: gcc6 or -std=c++11), which does not conflict with polymake (needs C++14)
239@end itemize
240
241@heading News for version 4-1-1
242
243New syntax:
244@itemize
245@item @code{alias}: may be used as a prefix to a variable declaration.
246Can only be used in procedure headings. (@nref{General command syntax}).
247@end itemize
248
249New command:
250@itemize
251@item @code{fres}: improved version of @code{sres}: computes a (not necessarily minimal) free resolution of the input ideal/module, using Schreyer's algorithm.
252(@nref{fres},@nref{sres}).
253@end itemize
254
255
256Extended commands:
257@itemize
258@item pseudo ordering @code{L} allows setting of limits for exponents in polynomials (@nref{Pseudo ordering L},@nref{attrib} for @code{maxExp})
259@item @code{%},@code{mod}: also for poly operands (@nref{poly operations}).
260@item @code{delete}: extended to intvec, ideal, module (@nref{delete}).
261@item syz (@nref{syz}), lift (@nref{lift}), liftstd (@nref{liftstd}), intersect(@nref{intersect}): with a specified GB algorithm
262@end itemize
263
264New libraries:
265@itemize
266@item classify2.lib: Classification of isolated singularities of corank <=2 and modality <= wrt. right equivalence over the complex numbers according to Arnold's list. (@nref{classify2_lib})
267@item goettsche.lib: Goettsche's formula for the Betti numbers of the Hilbert scheme
268of points on a surface, Macdonald's formula for the symmetric product (@nref{goettsche_lib})
269@item combinat.lib, modules.lib, methods,lib, nets.lib: a more mathematical view of modules (@nref{combinat_lib}: combinatorics),
270(@nref{methods_lib}: construct procedures),
271(@nref{modules_lib}: free resolutions),
272(@nref{nets_lib}: pretty printing)
273@item ncHilb.lib: Hilbert series of non-commutative monomial algebras (@nref{ncHilb_lib})
274@item realclassify.lib: Classification of real singularities(@nref{realclassify_lib})
275@item rootisolation.lib: real root isolation using interval arithmetic(@nref{rootisolation_lib})
276@item rstandard.lib: Janet bases and border bases for ideals (@nref{rstandard_lib})
277@end itemize
278
279Changed libraries:
280@itemize
281@item chern.lib:  new version (@nref{chern_lib})
282@item gitfan.lib:  new (incompatible) version (@nref{gitfan_lib})
283@item grobcov.lib:  new version (@nref{grobcov_lib})
284@end itemize
285
286Changes in the kernel/build system:
287@itemize
288@item port to polymake 3.x.x
289@item port to NTL 10 with threads (needs also C++11: gcc6 or -std=c++11)
290@item p_Invers is only a helper for p_Series: now static
291@item p_Divide is now p_MDivide, pDivide/p_Divide is a new routine
292@end itemize
293
294@heading News for version 4-1-0
295
296Syntax changes:
297@itemize
298@item new (additional) form of ring definitions: (for example @code{ring R=QQ[x,y,z];})
299      (@nref{General syntax of a ring declaration})
300@item new (additional) form of multi-indicies: (for example @code{i(1,2,3,4,5)})
301      (@nref{Names})
302@item changed behaviour of @code{charstr} (@nref{charstr})
303@item new data type @code{cring} to describe the coefficient rings, to be used
304      for the new definitions for (polynomial) rings (@nref{General syntax of a ring declaration})
305@item new command @code{ring_list} to access the parts used to construct polynomial rings (@nref{ring_list},@nref{ringlist})
306@item extended polynomial ring construction: also from lists produced by @code{ring_list}
307@item new attribute @code{ring_cf} for @code{ring} (@nref{attrib})
308@item printing of rings changed to match @code{cring} names (@nref{charstr})
309@end itemize
310
311New libraries:
312@itemize
313@item new library: classifyMapGerms.lib: standard basis of the tangent space at the orbit of an algebraic group action (@nref{classifyMapGerms_lib})
314@item new library: ffmodstd.lib:  Groebner bases of ideals in polynomial rings over algebraic function fields(@nref{ffmodstd_lib})
315@item new library: nfmodsyz.lib: syzygy modules of submodules of free modules
316      over algebraic number fields(@nref{nfmodsyz_lib})
317@item new library: curveInv.lib: invariants of curves (@nref{curveInv_lib})
318@item new library: gfan.lib: interface to gfanlib (@nref{gfan_lib})
319@item extended library: interface to polymake merged into @nref{polymake_lib}
320@item new library: tropicalNewton.lib: Newton polygon methods in tropical geometry (@nref{tropicalNewton_lib})
321@item new library: schubert.lib: some procedures for intersction theory (@nref{schubert_lib})
322@end itemize
323
324Changed libraries:
325@itemize
326@item classify_aeq.lib: new procedures (@nref{classify_aeq_lib})
327@item grobcov.lib: new version (@nref{grobcov_lib})
328@item ncfactor.lib: factorization in some noncommuative algebras (@nref{ncfactor_lib}) with new routine ncfactor (@nref{ncfactor})
329@item primdec.lib: new option "subsystem" (@nref{primdec_lib})
330@end itemize
331
332Changes in the kernel:
333@itemize
334@item improved mapping of polynomials/ideals/...
335@item port to gcc 6
336@item port to gfanlib 0.6 (requires C++11, i.e. gcc >=4.3)
337@item port to NTL 10
338@item port to polymake 3.0
339@item port to readline 7
340@item @nref{sba} works for global orderings, also for coefficient types Z and Z/m
341@item @nref{std} works for all orderings, also for coefficient types Z and Z/m with local/mixed orderings
342@item @nref{factorize} works for polynomial rings over ZZ
343@end itemize
344
345Experimental stuff:
346@itemize
347@item module @nref{customstd_lib}: modify @code{std} (@nref{satstd})
348@end itemize
349
350@heading News for version 4-0-3
351
352New libraries:
353@itemize
354@item new library: brillnoether.lib: Riemann-Roch spaces of divisors on curves (@nref{brillnoether_lib})
355@item new library: chern.lib: Chern classes (@nref{chern_lib})
356@item new library: ffmodstd.lib:  Groebner bases of ideals in polynomial rings over algebraic function fields(@nref{ffmodstd_lib})
357@item new library: GND.lib: General Neron Desingularization (@nref{GND_lib})
358@item new library: graal.lib: localization at prime ideals (@nref{graal_lib})
359@item new library: hess.lib: Riemann-Roch space of divisors (@nref{hess_lib})
360@end itemize
361
362Changed libraries:
363@itemize
364@item renamed algemodstd_lib to @nref{nfmodstd_lib}, extended to @code{module}
365@item renamed derham_lib to @nref{deRham_lib}
366@item grobcov.lib (grobcovK): Groebner Cover for parametric ideals (@nref{grobcov_lib}) with new routine
367   ConsLevels (@nref{ConsLevels}), removed AddCons  AddConsP.
368@end itemize
369
370@heading News for version 4-0-2
371New commands:
372@itemize
373@item align (@nref{align})
374@item branchTo (@nref{procs with different argument types})
375@item @code{->} (@nref{proc expression})
376@end itemize
377
378Change in ring handling:
379@itemize
380@item @code{typeof(} qring @code{)} returns @code{"ring"}
381@end itemize
382
383New libraries:
384@itemize
385@item algemodstd.lib:  Groebner bases of ideals in polynomial rings
386      over algebraic number fields(renamed to @nref{nfmodstd_lib})
387@item arr.lib: arrangements of hyperplanes (@nref{arr_lib})
388@item brillnoether.lib: Riemann-Roch spaces of divisors on curve (@nref{brillnoether_lib})
389@item hess.lib: Riemann-Roch space of divisors
390      on function fields and curves (@nref{hess_lib})
391@item gradedModules.lib: graded modules/matrices/resolutions (@nref{gradedModules_lib})
392@end itemize
393
394Changed libraries:
395@itemize
396@item revised polymake interface (polymake.so)
397@item revised gfanlib interface (gfanlib.so)
398@item Presolve::findvars (@nref{findvars}, @nref{variables})
399@item Ring::addvarsTo (@nref{addvarsTo})
400@item Ring::addNvarsTo (@nref{addNvarsTo})
401@item Ring::hasAlgExtensionCoefficient (@nref{hasAlgExtensionCoefficient})
402@item Schreyer::s_res (@code{s_res})
403@item grobcov.lib (grobcovK) (@nref{grobcov_lib}) with new routines
404   AddCons  AddConsP.
405@item normaliz.lib (for normaliz >=2.8) (@nref{normaliz_lib})
406@item renamed groebnerFan to groebnerFanP in polymake.lib (@nref{polymake_lib})
407@item renamed fVector to fVectorP in polymake.lib (@nref{polymake_lib},@code{polymakeInterface_lib})
408@end itemize
409
410@heading News for version 4-0-1
411
412Version 4-0-1 is a bug fix release.
413
414New feature: attribute @code{ring_cf} for @code{ring} (@nref{attrib})
415
416@heading News for version 4-0-0
417
418Version 4-0-0 is a milestone release of Singular.
419The new release series 4 aims for an entirely modularized architecture
420simplifying connectivity with other systems and paving the way
421for parallel computations.
422As  a first step in modularization, the new  release features an internal
423structural separation of coefficient rings and polynomial rings.
424This allows for a flexible integration of new coefficient rings.
425
426@sc{Singular} 4-0-0's list of new functionality and significant
427improvements further extends that of the 3-1-6/7 prerelease series.
428
429New functionality
430
431@itemize
432@item de Rham cohomology of complements of algebraic varieties (@nref{deRham_lib})
433@item Gromov-Witten numbers of elliptic curves (@nref{ellipticcovers_lib})
434@item classification of isolated complete intersection singularities in characteristic 0 (@nref{classifyci_lib})
435@item parametrization of orbits of unipotent actions (@nref{orbitparam_lib})
436@item F5-like Groebner basis algorithm (@nref{sba})
437@item element-wise application of functions to data structures (@nref{apply})
438@item support for debugging libraries (@nref{ASSUME})
439@end itemize
440
441Improved functionality
442
443@itemize
444@item
445Groebner cover for parametric ideals (@nref{grobcov_lib})
446@item
447normalization of affine rings (@nref{normal_lib})
448@item
449classification of real singularities (@nref{realclassify_lib})
450@item
451GIT-fans (@nref{gitfan_lib})
452@item
453algebraic/transcendental field extensions
454@item
455@nref{Non-commutative subsystem}
456@item
457an abstraction layer for parallel computations (@nref{parallel_lib})
458@item
459run-time loading of supplementary kernel code (@nref{Dynamic modules})
460@item
461interpreter language support for name spaces (@nref{package})
462@end itemize
463
464Availability
465
466@sc{Singular} is available as source code and for Linux, Mac OS X, Windows, FreeBSD and
467SunOS-5.
468
Note: See TracBrowser for help on using the repository browser.