source: git/doc/NEWS.texi @ 9cef8c

spielwiese
Last change on this file since 9cef8c was 98b5a7, checked in by Hans Schönemann <hannes@…>, 21 years ago
*hannes: NTL git-svn-id: file:///usr/local/Singular/svn/trunk@6332 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 9.7 KB
Line 
1@comment -*-texinfo-*-
2@comment $Id: NEWS.texi,v 1.36 2002-11-11 18:48:31 Singular Exp $
3@comment this file contains the News about Singular versions
4@comment Unix
5@ifclear VERSION
6@include version.texi
7@end ifclear
8
9@majorheading NEWS in SINGULAR @value{VERSION}
10
11@ifclear singularmanual
12@macro nref{what}
13\what\
14@end macro
15@end ifclear
16
17@ifset singularmanual
18@macro nref{what}
19@ref{\what\}
20@end macro
21@end ifset
22
23The current version @value{VERSION} is an update to the new
24release series version 2-0.
25
26Singular version 2 is generally much faster than any previous
27version of Singular, due to a rewrite of major parts of the Singular
28kernel (e.g., the kernel has a new memory manager and a new polynomial
29arithmetic) and due to new and better implemented algorithms (e.g., for
30computing resolutions and determinants).
31
32Besides theses internal changes, Singular version 2 offers many new
33features and functionlities (which were partly already incorporated in
34the 1-3 series). E.g., a native Windows distribution, an Emacs user
35interface, a new help system, 16  new libraries, etc.
36
37All these changes are explained in more detail below.
38
39@heading Efficiency Improvements
40The following table shows some timings which compare the efficincy of
41Singular version 1-2-3 and Singular version 2. All times are in seconds
42and were obtained on an AMD Athlon with 700 MHz, 128 MB RAM, running
43Linux.
44
45@multitable @columnfractions .15 .15 .25 .15 .15 .15
46@item @strong{Example} @tab @strong{Comp} @tab @strong{Ring} @tab @strong{1-2} @tab @strong{2-0} @tab @strong{Speedup}
47@item @uref{http://www.singular.uni-kl.de/Benchmarks/Singular/mora_1.sing,,mora_1} @tab std  @tab 32003,x(1..3),ds @tab 82 @tab 9.4 @tab 8.7
48@item @uref{http://www.singular.uni-kl.de/Benchmarks/Singular/mora_9.sing,,mora_9} @tab std  @tab 32003,x(1..14),ds @tab 9600 @tab 96 @tab 100
49@item @uref{http://www.singular.uni-kl.de/Benchmarks/Singular/homog_gonnet.sing,,homog_gonnet} @tab std  @tab 32003,x(1..18),dp @tab 33 @tab 8.9 @tab 4.5
50@item @uref{http://www.singular.uni-kl.de/Benchmarks/Singular/homog_cyclic_8.sing,,homog_cyclic_8} @tab std  @tab 32003,x(1..9),dp @tab 1873 @tab 472 @tab 4.0
51@item  @uref{http://www.singular.uni-kl.de/Benchmarks/Singular/cyclic_8.sing,,cyclic_8} @tab std @tab 32003,x(1..8),dp @tab >47800 @tab 478 @tab >100
52@end multitable
53
54@heading Factorizing algorithms revisited
55Starting with version 2-0-4, we use NTL (of Victor Shoup) for factoring
56univariate polynomials. The multivariate factoring code in libfac/factory
57does now also work over algebraic extension fields.
58
59@heading General Changes
60@table @asis
61@item @strong{Windows distribution}
62created with Installshield, includes Cygwin, Singular, and (optionally)
63XEmacs, distributed as several self-extracting archives. Contains @sc{Singular} help
64in a Windows Help format (the file @code{Manual.hlp}).
65@item @nref{Emacs user interface}
66the recommended interface for using @sc{Singular}
67@item @code{ESingular}
68new program for an out-of-the-box, pre-customized Emacs which runs
69Singular
70@item @nref{The online help system}
71choose in which browser the on-line help is displayed;
72@*wildcard expansion of help topics
73@*new layout of html manual pages
74@item @nref{Source code debugger}
75interactive debugging of procedures written in the @sc{Singular}
76language
77@item @nref{example}
78Provide on-line examples for all kernel and library commands.
79@item file/directory layout of distribution
80@code{Singular/<version>/}
81@item http://www.singular.uni-kl.de
82New WWW home-site of @sc{Singular}
83@item RPM versions of Singular
84including integration into KDE
85@end table
86
87@heading Extensions of the ring concept
88
89@table @asis
90@item new coefficient domains: arbitrary long real and complex numbers
91@item no restriction on number of ring variables
92@item no restriction on number of parameters
93@c @item TBC: DegBound on exponent values
94@c @item TBC: parameters over real/complex
95@c @item TBC: declaration with "ring of ring".
96@end table
97
98@heading New @sc{Singular} libraries
99
100Reorganisation of libraries into "Categories".
101@table @asis
102@item @nref{intprog_lib} procedures for computing toric ideals
103@item @nref{toric_lib} procedures for Integer Programming using Groebner bases
104@item @nref{spectrum_lib} procedures for computing spectra
105@item @nref{mregular_lib}  procedures for computing the Castelnuovo-Mumford regularity
106@c @item @nref{mprimdec}
107@c procedures for primary decomposition of modules
108@item @nref{mondromy_lib}
109procedures for computing the monodromy of a singularity
110@item @nref{gaussman_lib}
111procedures for the Gauss-Manin connection of a singularity
112@item @nref{spcurve_lib}
113procedures for CM codimension 2 singularities
114@item @nref{triang_lib}
115procedures for decomposing zero-dimensional ideals
116@item @nref{solve_lib}
117procedures for solving polynomial systems
118@item @nref{surf_lib}
119visualization of curves and surfaces with @code{surf}
120@item @nref{reesclos_lib}
121Rees Algebra and integral closure of an ideal
122@item @nref{brnoeth_lib}
123Brill-Noether algorithm, Weierstrass semigroups and AG codes
124@item @nref{stratify_lib}
125Algorithmic stratification by the Greuel-Pfister algorithm
126@item @nref{paramet_lib}
127parametrization of curves
128@item @nref{rinvar_lib}
129Invariant rings of reductive groups
130@item @nref{zeroset_lib}
131Procedures for roots and factorization
132@item @nref{qhmoduli_lib}
133Moduli spaces of sqh-singularities
134@end table
135
136@heading Changes in @sc{Singular} libraries
137Many procedures were moved into different libraries,
138the documentation of libraries was generally improved and
139some libraries renamed:
140@table @asis
141@item @nref{ainvar_lib}
142renamed @code{invar.lib} to @code{ainvar.lib}
143(see also @code{rinvar.lib}, @code{finvar.lib}).
144@item @nref{deform_lib}
145renamed procedures @code{T1, T2, T12} to @code{T_1, T_2, T_12}.
146@item @nref{poly_lib}
147new procedures numerator/denominator
148@item @nref{linalg_lib}
149included @code{jordan.lib} in @code{linalg.lib}
150@end table
151
152@heading New @sc{Singular} functions
153
154@table @asis
155@item @code{convhull, simplex}
156TODO: docu, tests
157@item @nref{division}
158Extension of lift: @code{division(M,SM)} returns a list @code{[T,U,R]}
159with @code{SM*U+R=M*T}
160@item @nref{breakpoint}
161sets a debugger breakpoint
162@item @code{div}
163integer division omitting remainder
164@item @nref{ERROR}
165interrupts computation in current procedure and returns with error
166message to top-level
167@item @nref{fglmquot}
168calculate ideal quotions using FGLM-techniques
169@item @nref{leadmonom}
170returns the leading monomial of a polynomial or a vector as a polynomial
171or vector whose coefficient is one
172@item @nref{highcorner}
173returns the smallest monomial not contained in and ideal/module
174@item @nref{hres}
175calculate free resolution of homogenous ideal using Hilbert-driven
176algorithm.
177@item @nref{minor}
178with an optional third argument minors modulo a standard basis will be computed
179@item @nref{mpresmat}
180calculate module representing the multipolynomial resultant matrix
181@item @nref{uressolve}
182compute all complex roots of a zerodimensional ideal
183@item @nref{vandermonde}
184solve Vandermonde linear system
185@item @nref{jet}
186extended for series expansions of rational expressions
187@item @nref{reduce}
188extended for reduced normal form of rational expressions
189@end table
190
191@heading @sc{Singular} functions whose syntax/semantics has changed
192@table @asis
193@item @nref{division}
194arguments swapped w.r.t. version 2-0-1 and before
195@item @nref{coeffs}
196Extended possible syntax to
197@code{coeffs(ideal,ideal)} and @code{coeffs(module,module)} which is
198equivalent to @code{coeffs(ideal,ideal,p)} and
199@code{coeffs(module,module,p)} where @code{p} is a polynomial (i.e.,
200monomial) consisting of all ring variables.
201@item @nref{execute}
202parenthesis around argument of execute is now @strong{mandatory}.
203@item @nref{lift}
204new implementation (unified handling of isSB and not isSB case); new
205optional third argument (a matrix name), which, if given, stores the
206"matrix of units"
207@item @nref{bareiss}
208new implementation after Lie-Saunders, much faster
209@item @nref{example}
210run example for all kernel commands.
211@c @item @nref{fetch}
212@item @nref{print}
213Finer-grained control for formatted output.
214@item @nref{pause}
215can be called with argument, must be called with parenthesis.
216@item @nref{option}
217new options: @code{oldStd}, @code{redThrough}, @code{notBuckets}
218@end table
219
220@heading Changes of command-line options and system resources
221@table @asis
222@item @code{--browser}, @code{--allow-net}, @code{--emacs}, @code{--sdb}
223new command-line options
224@ifset singularmanual
225(@pxref{Command line options})
226@end ifset
227.
228@item @nref{system}
229values of command-line options can be inspected/set at run-time with
230@code{system(<option>[,<new_value])}.
231@item @code{.singularrc}
232system administrators can put a "global" @code{.singularrc} file into
233the directories where @sc{Singular} libraries reside
234@ifset singularmanual
235(@pxref{Startup sequence})
236@end ifset
237.
238@item @code{libreadline}
239if found, a shared version of the @code{readline} library is linked-in
240dynamically at run-time. If not found, @code{readline} is emulated.
241@end table
242
243@heading Internal Changes
244@table @asis
245@item new data structures for monomials and polynomials
246Makes polynomial arithmetic significantly faster: Especially for block -
247or weighted orderings.
248Bucket representation of polynomials in std;
249Ring change during std, res and bareiss computations
250(resulting in more speed and less space consumption).
251@item new memory management
252Results is less memory usage, faster memory allocation/free, less
253fragmentation, much better locality of reference.
254@item factorization
255revisited, missing cases implemented
256@end table
257
258@heading Porting
259
260@itemize @bullet
261@item
262@code{libreadline} works only with ix86-libc5,
263ix86-libc6,HPUX_9,HPUX_10
264@item Singular is available for ix86-libc5, ix86-libc6, HPUX_9, HPUX_10,
265SunOS-4, SunOS-5, IRIX-6, ix86-Win (runs on Windows 95/98/NT4/2000),
266FreeBSD 4.2, MacOS X
267@end itemize
Note: See TracBrowser for help on using the repository browser.