source: git/factory/ChangeLog @ 72a88c

spielwiese
Last change on this file since 72a88c was 72a88c, checked in by Hans Schönemann <hannes@…>, 23 years ago
*hannes: version 1.3c git-svn-id: file:///usr/local/Singular/svn/trunk@5598 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 58.2 KB
Line 
1Wed Aug 22 16:25:16 MET DST 2001 Hans Schoenemann <hannes@mathematik.uni-kl.de>
2        * Version 1.3c: some utility functions for libfac
3        * search for main var in factorize (experimental)
4
52000-09-02  Olaf Bachmann  <obachman@mathematik.uni-kl.de>
6
7        * configure.in, etc: support for omalloc
8
92000-08-04  Olaf Bachmann  <obachman@mathematik.uni-kl.de>
10
11        * ffops.cc: initialize ff_prime to 0, so that first call to
12        ff_setprime always initializes ff_invtab.
13
14Tue Feb 16 19:00:03 1999  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
15
16        * GNUmakefile.in (basefactorysrc): `imm.cc' added
17          (ftestm4src): `divrem.m4' added
18          (distfiles): `factory.cfg' added
19
20        * factory.cfg: new file
21
22        * GNUmakefile.in (.PHONY): dependencies `doxy', `doxyclean' added
23          (doxy, doxyclean): new targets
24          (mostlyclean): dependency `doxyclean' added
25
26        * GNUmakefile.in (doxysrc, doxyincl): new variables
27          (doxyfiles): new variable
28
29        * GNUmakefile.in (ftestm4src): `sqrfree.m4' added
30
31        * GNUmakefile.in (ftestsrc, ftestincl): ntl-stuff added
32          (ftestm4src): `gcd.ntl.m4', `revert.m4' added
33
34Wed Sep 23 19:05:47 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
35
36        * fac_ezgcd.cc (ezgcd_specialcase): bug fix (???).  See comments
37          in the file for more information.
38
39Tue Jul  7 18:34:39 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
40
41        * GNUmakefile.in (ftestm4src): `extgcd.m4' added to distribution
42
43Wed Jul  1 10:57:53 1998      <pohl@FUECHSE>
44
45        * int_intdiv.cc (modulocoeff): extra call added for `mpz_mod_ui()'
46          with void return value.  Wrapped by #define `__MWERKS__'.
47
48Tue Jun 30 16:38:41 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
49
50        * cf_algorithm.cc: doc fixes
51
52        * cf_algorithm.cc (divides): bug fix.  Works for zero f and g.
53          More heuristic added.
54
55        * cf_algorithm.cc (psr, psq, psqr): bug fix.  Work for `x' with
56          level lower than `level(f)' or `level(g)'.
57
58        * cf_algorithm.h: doc fixes
59
60        * ftmpl_inst.cc (tmax, tmin(Var, Var)): instantiations added
61
62        * GNUmakefile.in (ftestm4src): `divides.m4' added to distribution
63
64Mon Jun 29 12:41:40 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
65
66        * templates/ftmpl_functions.h: doc fixes
67
68        * GNUmakefile.in (basefactorysrc): `cf_inline.cc' and
69          `cf_iter_inline.cc' added to distribution
70
71        * canonicalform.h (class CanonicalForm): friend declarations for
72          `operator -', `operator +', `operator *', `operator /',
73          `operator %', `div', `mod' replaced by ordinary declarations
74
75        * canonicalform.cc, canonicalform.h (CanonicalForm,
76          ~CanonicalForm, isOne, isZero, operator =): definitions of
77          methods moved to `cf_inline.cc'.  Declarations marked as
78          `CF_INLINE' or `CF_NO_INLINE', resp.
79          (operator -, operator +, operator *, operator /, operator %,
80          div, mod): definitions of operators moved to `cf_inline.cc'.
81          Declarations marked as `CF_INLINE' or `CF_NO_INLINE', resp.
82        * canonicalform.h (CF_INLINE, CF_NO_INLINE): new #defines.
83          `cf_iter_inline.cc' (conditionally) #included.
84       
85        * cf_iter.cc, cf_iter.h (operator++, coeff, hasTerms, exp):
86          definitions moved to `cf_iter_inline.cc'.  Declarations marked
87          as `CF_INLINE' or `CF_NO_INLINE', resp.
88        * cf_iter.h (CF_INLINE, CF_NO_INLINE): new #defines.
89          `cf_iter_inline.cc' (conditionally) #included.
90
91        * configure.in (enable_cf_inline): new `--enable'-option
92        * config.h.in (CF_USE_INLINE): new #define
93
94        * cf_inline.cc (CanonicalForm(Variable, int))): assertion added
95
96        * cf_inline.cc (isOne, isZero, operator -(CF)): order of immediate
97          checks changed
98
99        * cf_inline.cc: new file
100
101        * cf_iter_inline.cc (operator ++, coeff, exp): assertions fixed
102
103        * cf_iter_inline.cc: new file
104
105Fri Jun 26 12:24:34 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
106
107        * int_cf.cc, int_cf.h (isOne, isZero): pure virtual methods
108          implemented.  Declarations adapted.
109        * int_rat.cc, int_int.cc, int_rat.h, int_int.h, int_poly.h
110          (isZero, isOne): methods removed.  Declarations adapted.
111        * int_pp.cc (isOne, isZero): slightly speeded up.  Doc fixes.
112        * imm.h (imm_isone, imm_isone_p, imm_isone_gf): doc fixes
113        * imm.h (imm_iszero, imm_iszero_p, imm_iszero_gf): doc fixes
114
115        * int_poly.cc, int_pp.cc, int_rat.cc (neg): doc fixes
116        * int_int.cc (neg): doc fixes.  Slightly speeded up.
117        * imm.h (imm_neg, imm_neg_p, imm_neg_gf): doc fixes
118
119Mon Jun 15 16:04:26 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
120
121        * configure.in: doc fixes
122
123        * configure.in: explicit path name generated slightly rewritten to
124          work on HP's.  Absolute path names are generated already by
125          Makefile to keep `configure.in' more readable.
126
127Fri Jun 12 16:28:48 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
128
129        * int_intdiv.cc: `canonicalform.h' included
130
131        * gfops.cc, int_int.cc, readcf.y: order of includes fixed
132
133        * timing.h: bug fix.  Test on `WINNT' negated.
134
135Tue Jun  9 11:52:45 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
136
137        * configure.in (ac_save_path): renamed to `$save_path'.  All
138          references changed
139          (expl_datadir, expl_gftabledir): renamed to `$explicit_datadir',
140          `$explicit_gftabledir', resp.  All references changed.
141
142        * configure.in: checks for gmp.h and libgmp.a search in
143          `$includedir' and `$libdir', resp.
144
145        * configure.in: new section added to get a safer explicit path
146          expansion
147
148        * configure.in: `$gftabledir' is not longer handled in a special
149          way for Singular
150
151Mon Jun  8 17:26:55 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
152
153        * singext.h: doc fix
154
155        * gfops.cc, singext.h (cf_get_table): use `feFopen()' to load
156          GF(q) tables if built with Singular.  Declaration added to
157          `singext.h' (by Hannes).
158
159        * configure.in: calls to `AC_PATH_PROG' ``fixed''.  Necessary
160          because of some old autoconf version (by Olaf)
161
162        * ftmpl_inst.cc: test on `WINNT' disabled with gcc
163
164Wed Jun 03 16:47:54 1998    <pohl@FUECHSE>
165
166        * ftmpl_factor.h (template <class T> class Factor):
167          `operator == ( const Factor<T> &, const Factor<T> &)'
168          removed as friend and added as extra operator
169
170Wed Jun 03 14:47:41 1998    <pohl@FUECHSE>
171
172        * timing.h, readcf.y, int_poly.cc, imm.h: test on WINNT
173          disabled with gcc
174
175Mon May 11 11:36:22 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
176
177        * config.h.in (INT64): unused declarations for MetroWerks removed
178
179        * imm.cc (imm_mul): wrapped by `#ifdef __MWERKS__'
180
181        * ffops.h (ff_bignorm): definition of `ff_bignorm' removed for
182          MetroWerks
183          (ff_mul): made a declaration for MetroWerks.  Defined in
184          `ffops.cc'.
185
186        * imm.cc (imm_mul): new file for MetroWerks
187
188        * imm.h (MINIMMEDIATELL, MAXIMMEDIATELL): definition of long long
189          constants removed for mac
190          (imm_mul): made a declaration for MetroWerks.  Defined in
191          `imm.cc'.
192
193        * fac_cantzass.cc (CantorZassenhausFactorFFGF,
194          CantorZassenhausFactorExt): new local variables `firstFactor',
195          `secondFactor' introduced to fix order of evaluation of
196          recursive factorizations
197
198Mon Apr 20 16:34:14 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
199
200        * .cvsignore (stamp-h): entry re-added.  After all, its
201          necessary.
202
203        * configure.in (MKINSTALLDIRS, MAKEHEADER): instead of using an
204          absolute path, use relativ path and our own variables
205          `FACTORY_MKINSTALLDIRS' and `FACTORY_MAKEHEADER'.  Do not use
206          cache to get the variables' values.
207        * GNUmakefile.in (MKINSTALLDIRS, MAKEHEADER): use the values from
208          `FACTORY_MKINSTALLDIRS' and `FACTORY_MAKEHEADER', resp.
209
210Tue Apr 14 14:05:47 1998  Wilfred Pohl  <pohl@mathematik.uni-kl.de>
211
212        * fac_univar.cc (UnivariateQuadraticLift): type for `log()' must
213          be float, hence constant `2' replaced by `2.0'
214
215        * config.h.in (INT64): new typedef for Metroworks compiler
216
217Mon Apr  6 14:06:49 MET DST 1998  Jens Schmidt
218
219        * int_intdiv.cc:
220          ***** merge from branch `factory-gcd' to main trunk
221
222        * ftmpl_inst.cc: instantiations for `tabs( int )' added
223
224        * fac_univar.cc (UnivariateQuadraticLift, UnivariateLinearLift):
225          call to `div( CF, CF )' replaced by call to `operator / ( CF, CF )'
226
227Mon Mar 23 17:00:00 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
228
229        * GNUmakefile.in (ftestm4src): references `$(ftestm4develsrc)'
230          instead of `$(ftestm4src)' from development `GNUmakefile' to
231          avoid problems when building distributions
232
233Tue Mar 17 16:57:10 MET 1998  Jens Schmidt
234
235        * int_int.cc, int_int.h, int_poly.cc, int_poly.h, int_intdiv.cc,
236        * ChangeLog:
237          ***** merge from branch `factory-gcd' to main trunk
238
239        * GNUmakefile.in:
240          ***** merge from branch `factory-gcd' to main trunk
241
242        * timing.h, examples/application.cc:
243          ***** merge from branch `factory-gcd' to main trunk
244
245Tue Mar 17 14:22:56 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
246
247    **************** <<< changes in branch `factory-gcd' ****************
248
249        * int_poly.cc (dividecoeff, divremcoeff): use `divideTermList()'
250          to do their work
251          (divideTermList): new function copied from former
252          `divTermList()'.  Declaration added.
253
254        * int_poly.cc (divTermList): uses `div()' to divide coefficients
255
256        * int_int.cc (dividesame, dividecoeff, divsame, divcoeff,
257          modulosame, modulocoeff, modsame, modcoeff, divremsame,
258          divremcoeff, divremsamet, divremcoefft): methods moved to
259          int_intdiv.cc.  Slightly speeded up.
260
261        * int_int.h (normalizeMPI, uiNormalizeMPI, normalizeMyself,
262          uiNormalizeMyself): new `InternalIntger' methods.  Declarations
263          added.
264
265        * int_int.h (class InternalInteger): static member `initialized' removed
266
267        * int_intdiv.cc: new file
268
269        * GNUmakefile.in (basefactorysrc): int_intdiv.cc added to
270          distribution
271
272        * timing.h (TIMING_END_AND_PRINT): added for windows
273
274          (TIMING_DEFINE_PRINTPROTO, TIMING_PRINT): macros common to all
275          platforms extracted from `#ifdef' directive
276
277        * timing.h (TIMING_RESET): new macro
278
279Fri Mar 13 17:05:10 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
280
281        * examples/application.cc (main): cosmetic changes
282
283        * canonicalform.cc, canonicalform.h, cf_algorithm.cc, cf_factor.cc,
284        * cf_map.cc, cf_map.h, fac_ezgcd.cc, fac_multivar.cc,
285        * fac_univar.cc, fac_util.cc, fac_util.h, ffops.cc, ftmpl_array.h,
286        * ftmpl_factor.h, ftmpl_functions.h, ftmpl_list.h, ftmpl_matrix.h,
287        * sm_sparsemod.cc, sm_util.cc, sm_util.h, ftest/ChangeLog,
288        * ftest/commonden.m4, ftest/norm.m4, templates/ftmpl_array.cc,
289        * templates/ftmpl_factor.cc, templates/ftmpl_functions.h,
290        * templates/ftmpl_list.cc, templates/ftmpl_matrix.cc, ChangeLog,
291        * GNUmakefile.in, cf_algorithm.h, cf_gcd.cc, factory.template,
292        * ftmpl_inst.cc:
293          ***** merge from main trunk to branch `factory-gcd'
294
295    **************** >>> changes in branch `factory-gcd' ****************
296
297Thu Mar 12 12:21:33 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
298
299        * cf_gcd.cc (maxnorm): function removed.  All references replaced
300          by `maxNorm()'.
301
302        * fac_univar.cc (norm): function removed.  All references replaced
303          by `euclideanNorm()'.
304
305        * fac_util.cc (maxCoeff): function removed.  Declarations
306          adapted.  All references replaced by `maxNorm()'.
307
308        * cf_algorithm.cc (divides): slightly speeded up.
309
310        * canonicalform.h (sign): new function
311
312        * canonicalform.cc (blcm): new function.  Declaration added.
313
314Wed Mar 11 10:39:33 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
315
316        * cf_algorithm.cc (cden, common_den): renamed to
317          `internalBCommonDen()' and `bCommonDen()', resp.  Declarations
318          adapted. All references changed.
319
320        * cf_algorithm.h (abs): function `abs()' moved from
321          `canonicalform.h' to `cf_algorithm.h'.  All referring files
322          include `cf_algorithm.h'.
323
324        * cf_algorithm.cc (maxNorm, euclideanNorm): new functions.
325          Declarations added.
326
327        * cf_algorithm.cc (internalBCommonDen): uses `blcm()' instead of
328          `lcm()'
329
330        * GNUmakefile.in (ftestm4src): `norm.m4' and `commonden.m4' added
331          to distribution
332
333        * templates/ftmpl_functions.h (tabs): new function
334
335        * ffops.cc (ff_setprime): uses `memset()' to clear inversion
336          table
337
338        * ftest/ChangeLog, ftest/ftest_io.cc, ftest/ftest_io.h,
339        * ftest/ftest_util.cc, ftest/ftest_util.h, ftest/ftest_util.m4,
340        * ftest/gcd.fex, ftest/runfex:
341          ***** merge from branch `factory-gcd' to main trunk
342
343Tue Mar 10 15:44:06 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
344
345        * factory.template, ftmpl_inst.cc, templates/ftmpl_array.cc,
346          templates/ftmpl_factor.cc, templates/ftmpl_list.cc,
347          templates/ftmp_matrix.cc: #include directives for mac fixed
348
349        * ftmpl_array.h, ftmpl_factor.h, ftmpl_functions.h, ftmpl_list.h,
350          ftmpl_matrix.h: new files.  #include of `templates/ftmpl_xxx.h'
351          changed to include of `ftmpl_xxx.h'.
352        * GNUmakefile.in (basefactoryincl): new header files added to
353          distribution
354
355Fri Feb 27 10:24:22 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
356
357    **************** <<< changes in branch `factory-gcd' ****************
358
359        * var_intglobal.cc, var_intglobal.h: files removed (do not belong
360          to this branch!)
361
362        * cf_primetab.h: file removed
363
364        * cf_defs.h (SW_QUOTIENT, SW_FAC_USE_BIG_PRIMES): switches removed
365
366        * cf_linsys.cc (linearSystemSolve, solve, bound determinant2):
367          incorrect respective unused code removed
368
369        * cf_char.cc (setCharacteristic): adapted to new prime generation
370          scheme
371        * cf_char.cc (setCharacteristic): previous adaption slightly
372          changed.  The largest small prime is now looked up only once.
373
374        * cf_gcd.cc (gcd_poly_univar0): adapted to new prime generation
375          scheme
376        * fac_ezgcd.cc (findBound): adapted to new prime generation
377          scheme
378        * cf_linsys.cc (determinant): adapted to prime generation
379          scheme
380        * sm_sparsemod.cc (internalSparsemod): adapted to new prime
381          generation scheme
382        * fac_univar.cc (choosePrimes): adapted to new prime generation
383          scheme
384
385        * sm_sparsemod.cc (sparsemod): debug output added
386
387        * fac_univar.cc (cf2double): function removed
388
389        * fac_univar.cc (UnivariateQuadraticLift, UnivariateLinearLift):
390          argument `Gamma' removed.  All callers changed.
391
392        * fac_univar.cc (UnivariateQuadraticLift, UnivariateLinearLift): call to
393          `div( CF, CF )' replaced by call to `operator / ( CF, CF )'
394
395Thu Feb 26 17:58:31 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
396
397        * gcd_pmultiv.h (class CFPrimitiveMultivariateGCD): renamed to
398          `CFPrimitiveMultivariateGcd'.  All references changed.
399          (class CFSubResGCD): renamed to `CFSubResGcd'.  All references
400          changed.
401
402        * gcd_pmultiv.h (class CFPrimitiveMultivariateGCD): does no longer
403          inherit virtual from `CFPrimitiveGcd'
404          (class CFSubResGcd): does no longer inherit from
405          `CFPrimitiveUnivariateGCD'
406
407        * gcd_pmultiv.h (class CFSubResGcd): new method `clone()'
408
409        * gcd_pmultiv.h: new file
410
411        * gcd_pmultiv.cc (CFSubResGcd::execute): bug fix.  Superfluous
412          break removed.
413          (execute): bug fix.  Assertion fixed.
414
415        * gcd_pmultiv.cc: new file
416
417    **************** >>> changes in branch `factory-gcd' ****************
418
419Fri Feb 20 17:41:23 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
420
421        * GNUmakefile.in (installcf, installmem): `ranlib' libraries after
422          installing them for SUN machines
423
424Tue Feb 10 10:47:04 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
425
426        * cf_switches.h: doc fix
427
428Mon Feb  9 15:57:07 1998  Ruediger Stobbe  <rstobbe@de.oracle.com>
429
430        * cf_factor.cc (factorize): factorize now handles characteristic
431          0 correct, e.g. rational coefficients and SW_RATIONAL = ON.
432
433Mon Feb  9 11:40:41 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
434
435        * cf_primetab.cc: new file
436
437Thu Feb  5 16:53:21 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
438
439        * configure.in (enable_timing, enable_debugoutput): extra timing
440          and debugoutput magic removed
441        * GNUmakefile.in (@timingtargets@, @debouttargets@,
442          @debtimingtargets@): extra timing and debugoutput magic removed
443
444Tue Feb  3 14:03:00 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
445
446        * GNUmakefile.in (ftestm4src): `bextgcd.m4' and `bgcd.m4'
447          removed.  References variable `ftestm4src' instead.
448
449Mon Feb  2 09:55:16 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
450
451        * cf_chinese.cc (chineseRemainder( const CanonicalForm & ...)):
452          completely rewritten
453
454Fri Jan 30 15:06:26 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
455
456        * cf_chinese.cc (chineseRemainder): debug output added
457
458        * cf_chinese.cc (chineseRemainder( const CFArray & ...)): slightly
459          speeded up
460
461        * cf_gcd.cc (iextgcd, igcd): functions removed.  All references
462          replaced by `bextgcd()' and `bgcd()', resp.
463
464        * canonicalform.h (iextgcd): declaration removed
465
466Thu Jan 22 10:38:34 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
467
468        * int_cf.cc, int_int.cc int_rat.cc (bgcdsame, bgcdcoeff,
469          bextgcdsame, bextgcdcoeff): new methods.  Declarations added.
470
471        * GNUmakefile.in (ftestm4src): `bgcd.m4' and `bextgcd.m4' added to
472          distribution
473
474        * canonicalform.h (mvar): bug fix.  Declared as `Variable mvar
475          (...)'.
476
477        * canonicalform.cc (bgcd, bextgcd): new functions.  Declarations
478          added.
479
480Fri Jan 16 09:08:17 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
481
482        * cf_switches.h: doc fix
483
484        * cf_algorithm.h (divides): declaration moved from canonicalform.h
485          to cf_algorithm.h
486
487        * cf_switches.cc: doc fix
488
489Tue Jan 13 14:56:42 1998  Olaf Bachmann  <obachman@mathematik.uni-kl.de>
490
491        * configure.in: changed order of library checks (-lm before
492          -lgmp); check for atof in -lm check, to work around a bug on
493          some linux machines.
494
495Tue Jan  6 11:01:23 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
496
497        * .cvsignore (stamp-h): entry removed
498
499Wed Dec 17 09:56:25 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
500
501        * canonicalform.cc (operator ==, operator !=): rewritten and
502          speeded up
503          (operator >): slightly speeded up
504
505        * int_cf.h (class InternalCF): `sign()' declared as const
506
507        * int_poly.cc (comparesame): doc and assertion fix
508
509        * int_int.cc (sqrt, ilog2): assertion fixes
510
511        * int_pp.cc (comparecoeff): assertion fix
512
513        * int_rat.cc (comparesame): doc fix
514
515        * int_cf.cc (InternalCF::sign): method made pure virtual.
516          Declaration adapted.
517
518        * int_cf.cc (taildegree): bug fix.  Did not check whether CO is
519          zero.
520
521        * imm.h (imm_cmp): doc fix
522
523        * canonicalform.cc (CanonicalForm::gcd): method removed.
524          Declaration adapted.
525
526        * canonicalform.cc (degree, taildegree): one more time slightly
527          speeded up.  Hopefully for the last time.
528
529Fri Dec 12 10:06:33 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
530
531        * imm.h (imm_cmp_p, imm_cmp_gf): comparisons fulfill law of
532          trichitomy
533
534        * readcf.y (yylex): parser reads generator from GF(q) correctly
535
536Tue Dec  9 10:03:07 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
537
538        * GNUmakefile.in (.PHONY): dependencies `$(srcdir)/winnt/factory.h'
539          and `$(srcdir)/winnt/factoryconf.h' added
540
541        * winnt/factory.h:  automatically created from `factory.template'
542          using `makeheader'
543
544        * winnt/factoryconf.h: automatically created from
545          `factoryconf.template' using `makeheader'
546
547        * GNUmakefile.in (dist): dependencies `$(srcdir)/winnt/factory.h'
548          and `$(srcdir)/winnt/factoryconf.h' added
549          ($(srcdir)/winnt/factory.h): new target
550          ($(srcdir)/winnt/factoryconf.h): new target
551
552        * GNUmakefile.in (distntfile): new variable
553          (distfiles): `$distntfiles' added to distribution
554          (dist): creates directory `winnt/'
555          (distfiles): `bin/makeheader.pl' added to distribution
556
557        * config.h.in (INT64): new define
558
559        * bin/makeheader.pl: new file
560
561        * int_poly.cc (comparecoeff): unused argument `acoeff' removed
562
563Mon Dec  8 18:56:39 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
564
565        * INSTALL, README: doc fixes for the Windows NT port
566
567Thu Nov 27 21:00:00 1997  Ruediger Stobbe  <rstobbe@de.oracle.com>
568
569        * winnt: new directory containing configuration files for
570          Microsoft Windows NT port using MS Visual C++ 5.0
571
572        * winnt/INSTALL.nt: new file that describes the make process on
573          Windows NT
574
575        * winnt/nt.mak: Makefile for Windoes NT
576
577        * winnt/config.h: preconfigured file for Windows NT
578
579        * winnt/factoryconf.h: for the first time this file is a hand-made
580          version of factoryconf.h for Windows NT
581
582        * winnt/factory.h: for the first time this file is a hand-made
583          version of factory.h for Windows NT
584
585        * config.h.in: new typedef INT64 for 64 bit integer type of various
586          platforms (currently 'long long int' for gcc and '__int64' for
587          MS VC++)
588
589        * readcf.y: malloc.h and memory.h are included in the case of WINNT
590          to have prototypes for alloca and memcpy
591
592        * ffops.h: now uses INT64 instead of long long int
593
594        * ffops.cc: now uses INT64 instead of long long int
595
596        * imm.h: now uses INT64 instead of long long int
597
598        * int_poly.cc: includes strstrea.h instead of strstream.h in the
599          case of WINNT (a typical Microsoft 8.3 problem - its a pity)
600
601        * cf_random.cc: the way const data members were used was not
602          conforming to the C++ standard. Now there is a version of
603          RandomGenerator that should run the same way on gcc as well as on
604          CodeWarrior (mac) and MS VC++ (nt) and every other compiler
605          conforming to the C++ standard
606
607        * fac_iterfor.cc: fixed assertion that refers to a variable that
608          was not in the scope. Wondering why gcc compiled it
609
610        * fac_sqrfree.cc: isSqrFreeZ now returns a bool, as declared in
611          the prototype. Again wondering about gcc's behaviour
612
613        * sm_sparsemod.cc: array declaration of varf, varg and schnitt on
614          on the heap instead on the stack because the array size is not
615          a constant. delete [] is called at a suitable place
616
617        * fac_cantzass.h: MS VC++ does not like a default value for a
618          parameter that is a reference (in some sense this is good behaviour)
619          Therefore there are now no default values for the parameter list
620          of FpFactorizeUnivariateCZ
621
622        * fac_cantzass.cc: No reference parameters for FpFactorizeUnivariateCZ
623
624        * cf_factor.cc: FpFactorizeUnivariateCZ is called with full parameter
625          list
626
627        * fac_univar.cc: FpFactorizeUnivariateCZ is called with full parameter
628          list
629
630        * ftmpl_inst.cc: MS VC++ does not like to explicitly instantiate
631          template functions - tmax and tmin are therefore not instatiated in
632          the case of WINNT
633          Anyway it is not clear if this file is needed when using MS VC++
634          since the handling of templates in MS VC++ done in the spirit of
635          AT&T's Cfront compilers which do a more automatic job
636
637        * templates/ftmpl_list.h: MS VC++ wants a forward declaration of
638          template class List<T> and template class ListIterator<T>. This
639          should be no problem for gcc
640
641        * timing.h: changes in the case of WINNT
642
643Fri Nov 21 15:25:27 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
644
645        * canonicalform.h (class CanonicalForm): inline method hasGcd()
646          removed.
647
648        * int_poly.cc (coeff): explicit cast to CanonicalForm added
649          (coeff): cosmetic change
650
651        * int_rat.cc (comparecoeff): bug fix.  Did not calculate dummy
652          correctly.
653          (comparecoeff): assertion moved into `if' branch
654
655        * int_pp.cc (comparesame): assertion added
656
657        * int_int.cc (comparesame): assertion added
658
659        * int_cf.cc (coeff): explicit cast to CanonicalForm added
660
661        * int_cf.cc (comparecoeff): function made pure virtual.
662          Declarations adapted.
663        * int_cf.h (class InternalCF): new pure virtual function
664          comparecoeff()
665
666        * imm.h: doc fix
667
668        * GNUmakefile.in (ftestm4src): fbinops.m4 added to distribution
669
670Thu Nov 20 16:21:51 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
671
672        * imm.h: functions rereordered
673
674Wed Nov 19 12:21:27 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
675
676        * gfops.h: functions reordered
677
678        * imm.h (imm_sign): doc fix
679
680        * imm.h: functions reordered
681
682Thu Nov 13 09:10:53 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
683
684        * cf_chinese.cc (chineseRemainder): `const CF' in arguments
685          changed to `const CF &'.  Declaration adapted.
686
687        * configure.in: doc fix
688
689        * GNUmakefile.in (ftestall): new target
690          (.PHONY): dependencies `ftestall' `ftestclean' `ftestdistclean'
691          added
692
693        * GNUmakefile.in (%.d): dependency generation uses temporary files
694          (clean): removes these temporary files
695
696        * GNUmakefile.in ($(ftestexec)): dependecy `factoryconf.h' added
697
698Wed Nov 12 18:08:51 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
699
700        * configure.in: check for `GetOpt.h' removed
701
702Thu Nov  6 16:43:17 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
703
704        * configure.in: check for `libg++.a' commented out
705
706Wed Nov  5 14:48:46 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
707
708        * GNUmakefile.in (conftest): new target
709          ($(ftestexec), gengftables.o): dependency `conftest' added
710
711        * GNUmakefile.in (gengftables.o): some dependencies removed
712          (gengftables): dependencies slightly changed
713
714        * configure.in: exits with error on absence of libgmp.a or libm.a
715
716        * configure.in: check for `unistd.h' added
717
718        * configure.in: check for `libg++.a' added
719
720Wed Oct 29 12:41:04 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
721
722        * configure.in: check for `ln -s' added
723
724        * configure.in: checks for header files necessary for the FTE
725          added
726
727        * GNUmakefile.in (LN_S): new variable
728
729        * GNUmakefile.in ($(ftestexec)): new target
730
731        * GNUmakefile.in (ftestsrc, ftestincl, ftestm4src, ftestdistfiles,
732          ftestexec): new variables
733          (distsrc, distincl, distfiles, dist): FTE added to distribution
734          (ftestclean, ftestdistclean): new targets
735          (clean, distclean): dependencies ftestclean and ftestdistclean,
736          resp., added
737
738        * GNUmakefile.in (ftest/GNUmakefile): new target
739
740        * GNUmakefile.in (gengftables): rule slightly simplified
741
742        * test_install.cc (main): calls to `operator<<()' replaced by
743          calls to `printf()'
744
745        * configure.in (M4FLAGS): new output variable
746        * configure.in (M4): check for `m4' added
747
748        * configure.in: creates `ftest/GNUmakefile'
749
750Tue Oct 28 14:46:08 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
751
752
753    **************** Factory Version 1.3b released ****************
754
755       
756        * NEWS: updated to 1.3b
757
758        * README: doc fix.  Updated to 1.3b.
759
760        * INSTALL: doc fix.  Updated to 1.3b.
761
762        * configure.in (factory_version): updated to 1.3b
763
764        * examples/GNUmakefile: doc fix
765
766        * configure.in (factory_configuration): new variable
767        * config.h.in (FACTORYCONFIGURATION): new #define
768
769        * configure.in (ac_cv_shift): set to `yes' in case of cross
770          compiling
771
772        * examples/application.cc (main): check on existence of GF(q)
773          tables removed
774
775Mon Oct 27 15:14:19 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
776
777        * examples, examples/GNUmakefile, examples/application.cc,
778          examples/gcd.cc, examples/factorize.cc: new files
779        * GNUmakefile.in (distfiles, dist): `examples/' and `examples/*'
780          added to distribution
781
782        * canonicalform.cc (operator >, operator <): bug fix.  Calls
783          `comparecoeff()' in the right way.
784
785Fri Oct 24 18:44:37 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
786
787        * GNUmakefile.in (TMPLCXXFLAGS): set to `$(LIBCXXFLAGS)'
788
789        * cf_gcd.cc (gcd): bug fix.  Handles polynomials with rational
790          coefficients correctly
791
792Thu Oct 23 14:13:42 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
793
794        * ftmpl_inst.cc: implicit instantiations of `ListItem<T>' changed
795          to explicit instantiations
796
797        * factory.template, factoryconf.template, gengftables.cc,
798          ftmpl_inst.cc: doc fix
799
800        * cf_globals.cc (factoryConfiguration): new external variable.
801          Declaration added.
802        * test_install.cc (main): prints factoryConfiguration
803
804Wed Oct 22 15:41:30 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
805
806        * configure.in: doc fixes
807
808        * canonicalform.cc (operator ()): speeded up
809
810        * cf_random.cc (factoryrandom): returns a random number without
811          calculating any remainder if n equals zero
812
813        * ffops.cc (ff_setprime): does not clear table of primes if the
814          prime number used last time equals new one
815
816Tue Oct 21 13:24:48 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
817
818        * test_install.cc: new file
819        * GNUmakefile.in (distsrc): distribution file test_install.cc
820          added
821          (installtest, test_install, iftmpl_inst.o, test_install.o): new
822          targets
823          (clean): removes test_install
824          (.PHONY): phony target installtest added
825
826Wed Oct 15 16:31:53 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
827
828        * canonicalform.cc (taildegree): slightly speeded up
829
830        * canonicalform.cc (operator []): assertion added.  Bug fix (did
831          not work for immediates).
832
833        * canonicalform.cc (den, deriv, operator []): explicit casts to
834          CanonicalForm added
835          (sqrt): explicit calls to CFFactory::basic removed
836
837Tue Oct 14 16:47:28 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
838
839        * canonicalform.cc (mvar, degree): slightly speeded up
840
841Fri Oct 10 10:19:07 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
842
843        * gfops.cc (gf_get_table): casts to 'char *' added to avoid
844          warnings
845
846        * int_pp.cc: superfluous arguments removed
847
848        * int_int.cc: doc fix
849
850        * int_cf.cc: doc fix
851
852        * int_rat.cc: doc fix
853
854        * int_cf.cc (den): returns 'CFFactory::basic( 1 )' instead of
855          'genOne()'
856
857        * canonicalform.cc (LC, degree( v ), tailcoeff, deriv): slightly
858          speeded up
859
860        * canonicalform.cc (Lc): new method.  Declaration added.
861        * int_cf.cc (Lc): new method.  Declaration added.
862        * int_poly.cc (Lc): new method.  Declaration added.
863
864Thu Oct  9 10:20:56 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
865
866        * cf_algorithm.cc (divides): moved from canonicalform.cc to
867          cf_algorithm.cc.  Declaration moved, too.  In all files which
868          refer to this function #include of cf_algorithm.h added.
869          (divides): doc fix
870        * canonicalform.cc (divides): moved to cf_algorithm.cc.
871          Declaration moved, too.
872
873        * canonicalform.h (Lc): new function
874
875Wed Oct  1 14:21:53 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
876
877        * cf_random.h: (factoryrandom): n defaults to zero
878
879        * cf_random.cc (factoryrandom): checks for n = zero added
880
881Tue Sep 30 10:22:43 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
882
883        * GNUmakefile.in (%.d): order of dependencies changed
884
885Mon Sep 29 08:11:42 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
886
887        * GNUmakefile.in (%.d): `factoryconf.h' added as dependency
888
889        * canonicalform.h: doc fix
890
891        * cf_ops.cc (size( CF ), size( CF, Var )): new functions.
892          Declarations added.
893
894        * fac_univar.cc: doc fix
895
896        * cf_chinese.cc: doc fix
897
898        * cf_resultant.cc: doc fix
899
900        * cf_gcd.cc (maxnorm): spurious variable `h' removed
901
902        * cf_gcd.cc (balance): slightly speeded up
903
904Fri Sep 26 12:54:41 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
905
906        * assert.h: prints the function now where the assrtion occured if
907          we are translating with gcc
908
909Thu Sep 25 13:51:01 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
910
911        * cf_gcd.cc (chinesePoly): function removed
912          (gcd_poly_univar0): slightly speeded up
913
914        * cf_gcd.cc (lcm): bug fix.  Returns zero now if f or g equals
915          zero.
916
917        * cf_gcd.cc (gcd_poly): does not call sparsemod on univariate
918          polynomials an longer
919
920        * cf_gcd.cc (vcontent): assertion added.
921
922        * cf_gcd.cc (content( CF, Variable )): slightly speeded up.
923          Assertion added.
924
925Wed Sep 24 12:35:40 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
926
927        * canonicalform.cc (deriv): speeded up
928
929Tue Sep 23 17:24:24 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
930
931        * int_int.cc: doc fix
932
933        * canonicalform.cc: doc fix
934
935Fri Sep 12 17:25:14 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
936
937        * cf_gcd.cc (isqrt): function removed
938
939        * canonicalform.cc: doc fix
940
941Wed Sep 10 15:36:15 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
942
943        * int_cf.cc (InternalCF::sign): assertion added
944
945        * int_rat.cc (InternalRational::sign): call to mpz_cmp_si()
946          replaced by call to mpz_sgn()
947        * int_pp.cc (InternalPrimePower::sign): call to mpz_cmp_si()
948          replaced by call to mpz_sgn()
949        * int_int.cc (InternalInteger::sign): call to mpz_cmp_si()
950          replaced by call to mpz_sgn()
951
952        * int_pp.cc, int_int.cc, int_rat.cc, int_poly.cc, int_cf.cc,
953          canonicalform.cc (sign): doc fix
954
955        * imm.h (imm_sign): bug fix.  imm_sign() returned 0 for sign(1)
956          when calculating in GF(q).
957        * imm.h (imm_sign): bug bug fix
958
959        * gfops.h (gf_sign): doc fix
960
961        * configure.in (expl_datadir): initialization fixed.  If
962          $expl_datadir is relative we prepend the current working
963          directory now.
964
965        * cf_gcd.cc (isqrt): function removed
966
967Tue Sep  9 09:06:17 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
968
969        * README: doc fix
970
971        * INSTALL: doc fix
972
973        * cf_globals.h: doc fix
974
975        * cf_globals.cc: #include fix, doc fix
976
977        * cf_primes.cc, fac_cantzass.cc, int_pp.cc, int_rat.cc: #include
978          fix
979
980        * cf_factor.cc: #include fix
981          (factorize): cf_glob_switches.isOn() replaced by isOn() for
982          sake of uniformity
983
984        * cf_ops.cc (swapvar_between): arguments to operator * swapped
985
986        * cf_ops.cc (swapvar_between, swapvar_rec): functions reordered
987          and declarations removed
988
989        * cf_ops.cc (swapvar_between1, swapvar_rec1, swapvar1): new
990          experimental functions, to be removed in future
991
992        * cf_chinese.cc: doc fix
993
994        * fac_multihensel.cc: #include fix
995
996        * fac_berlekamp.cc: #include fix
997
998        * cf_util.cc: #include fix
999
1000        * ffops.h: #include fix
1001
1002Mon Sep  8 12:39:09 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1003
1004        * cf_algorithm.cc (psr, psq, psqr): assertions added
1005
1006        * cf_algorithm.cc (psq, psqr): return correct values now if deg(f)
1007          < deg(g)
1008          (psr, psq, psqr): return correct values now if f = 0
1009
1010        * cf_algorithm.cc (cden): recursion terminates now for f in base
1011          domain instead for f in coefficient domain
1012
1013        * cf_map.h: doc fix
1014
1015        * cf_map.cc: doc fix
1016
1017        * cf_algorithm.h: doc fix
1018
1019        * cf_switches.h: doc fix
1020
1021        * cf_switches.cc: doc fix
1022
1023Thu Sep  4 10:19:25 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1024
1025        * cf_ops.cc: (replacevar, replacevar_between): new functions
1026        * canonicalform.h (replacevar): new declaration
1027
1028        * cf_algorithm.cc: doc fix
1029
1030        * cf_resultant.cc: doc fix
1031
1032        * cf_algorithm.cc: new file
1033          (psr, psq, psqr, cden, common_den): functions moved from
1034          cf_ops.cc to cf_algorithm.cc
1035        * cf_ops.cc (psr, psq, psqr, cden, common_den): functions moved
1036          to cf_algorithm.cc
1037        * cf_algorithm.h: declarations of functions from cf_algorithm.cc
1038          moved from canonicalform.h to cf_algorithm.h
1039        * canonicalform.h: declarations of functions from cf_algorithm.cc
1040          moved to cf_algorithm.h.  In all files which refer to these
1041          functions #include of cf_algorithm.h added.
1042        * GNUmakefile.in (basefactorysrc): cf_algorithm.cc added to
1043          distribution
1044
1045        * cf_ops.cc (apply): bug fix.  In case f.inCoeffDomain() result is
1046          now initialized to f.
1047
1048Mon Sep  1 10:47:41 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1049
1050        * canonicalform.h (resultant): declaration moved to cf_algorithm.h
1051        * cf_algorithm.h (resultant): declaration moved from
1052          canonicalform.h to cf_algorithm.h
1053
1054        * cf_ops.cc (resultant): function moved to cf_resultant.cc
1055        * cf_resultant.cc (trivialResultant): new function
1056        * cf_resultant.cc (resultant): moved from cf_ops.cc to
1057          cf_resultant.cc.  Completely rewritten.
1058
1059        * cf_ops.cc (psr): returns f now if deg(f) < deg(g)
1060
1061        * cf_resultant.cc (subResChain): new function
1062        * cf_algorithm.h (subResChain): new declaration
1063
1064        * cf_factor.cc (factorize( CanonicalFormn, bool ), sqrFree):
1065          default argument initializer from definition removed
1066
1067Fri Aug 29 09:10:28 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1068
1069        * canonicalform.cc (degree( Variable )): slightly speeded up
1070          (deriv( Variable )): slightly speeded up
1071
1072        * canonicalform.h (deriv): doc fix
1073
1074        * canonicalform.cc (deriv( Variable )): assertion added
1075          (deriv( Variable )): bug fix
1076
1077        * cf_algorithm.h: declarations of functions from cf_linsys.cc
1078          moved from canonicalform.h to cf_algorithm.h
1079        * canonicalform.h: declarations of functions from cf_linsys.cc
1080          moved to cf_algorithm.h
1081
1082        * cf_factor.cc (sqrFree( CF )): removed
1083          (sqrFree( CF, bool )): default argument initializer added
1084          (factorize( CF, bool )): default argument initializer added
1085        * cf_algorithm.h  (sqrFree( CF )): declaration removed
1086          (sqrFree( CF, bool )): default argument initializer added to
1087          declaration
1088          (factorize( CF, bool )): default argument initializer added to
1089          declaration
1090
1091        * GNUmakefile.in (basefactorysrc): cf_resultant.cc added to
1092          distribution
1093
1094        * cf_algorithm.h: declarations from cf_factor.h moved to
1095          cf_algorithm.h
1096        * cf_factor.h: declarations moved to cf_algorithm.h.  cf_factor.h
1097          removed.  All #include statements changed.
1098        * GNUmakefile.in (basefactoryincl): cf_factor.h removed from
1099          distribution
1100        * canonicalform.h: declarations of functions from cf_factor.cc
1101          removed.  In all files which refer to these functions #include
1102          of cf_algorithm.h added.
1103
1104        * cf_algorithm.h: new file
1105        * cf_algorithm.h: declarations from cf_chinese.h moved to
1106          cf_algorithm.h
1107        * cf_chinese.h: declarations moved to cf_algorithm.h.
1108          cf_chinese.h removed.  All #include statements changed.
1109        * GNUmakefile.in (basefactoryincl): cf_chinese.h removed from
1110          distribution.  cf_algorithm.h added to distribution.
1111
1112Thu Aug 28 09:21:15 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1113
1114        * cf_map.h: superfluous '#include "templates/ftmpl_functions.h"'
1115          removed
1116
1117Mon Aug  4 16:57:27 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1118
1119        * canonicalform.cc (sqrt): doc fix
1120
1121Fri Aug  1 11:06:58 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1122
1123        * cf_map.cc (operator << ( ostream& s, const CFMap & m )):
1124          rewritten
1125
1126        * configure.in: checks for compiler characteristic are done with C
1127          instead of C++
1128
1129Thu Jul 31 14:59:07 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1130
1131        * fac_univar.cc (kBound): bound fixed
1132
1133        * canonicalform.h (sqrt): doc fix
1134
1135        * canonicalform.cc (sqrt): immediate case completely rewritten
1136
1137Wed Jul 30 09:40:08 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1138
1139        * cf_linsys.cc (bound): off by one errors fixed
1140        (linearSystemSolve): off by one errors fixed
1141
1142        * cf_linsys.cc (bound): debug output added
1143
1144        * cf_linsys.cc (bound): returns now bound + 1
1145
1146        * canonicalform.cc (sqrt): sqrt(0) works now
1147        (sqrt): assertion added
1148        (sqrt): 'int h' changed to 'long long h'.  Casts added.
1149
1150        * cf_defs.h (SW_RATIONAL, SW_QUOTIENT, SW_SYMMETRIC_FF,
1151          SW_BERLEKAMP, SW_FAC_USE_BIG_PRIMES, SW_FAC_QUADRATICLIFT,
1152          SW_USE_EZGCD, SW_USE_SPARSEMOD): #defines replaced by 'const
1153          int's
1154
1155        * canonicalform.cc (fillVarsRec, getNumVars, getVars): moved to
1156          cf_ops.cc
1157        * cf_ops.cc (fillVarsRec, getNumVars, getVars): moved from
1158          canonicalform.cc to cf_ops.cc
1159
1160        * cf_ops.cc: doc fix
1161
1162Thu Jul 24 12:44:46 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1163
1164        * GNUmakefile.in (distfiles): bin/folding.el and bin/fold-docu.el
1165          added
1166
1167Wed Jul 23 09:45:35 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1168
1169        * cf_map.h (class CFMap): references to List<CanonicalForm>
1170          replaced by CFList
1171
1172        * cf_map.cc (CFMap( CFList )): 'P.append()' replaced by 'P.insert()'
1173
1174        * cf_chinese.cc (chineseRemainder( CF, ... )): operator % replaced
1175          by function mod()
1176
1177        * README: doc fix
1178
1179Tue Jul 22 11:04:30 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1180
1181        * cf_map.cc (CFList, CFListIterator, MPListIterator): references to
1182          List<CanonicalForm>, ListIterator<CanonicalForm>, and
1183          ListIterator<MapPair> replaced by their respective typedefs
1184
1185        * canonicalform.cc (initCanonicalForm): initialization of switches
1186          removed since they are initialized by constructor
1187
1188        * bin/folding.el: new file
1189        * bin/fold-docu.el: new file
1190        * bin/fold-docu.el (fold-docu): works now for all fold marks
1191        * README: doc fix
1192
1193        * cf_switches.h (CFSwitchesMax): new constant
1194        * cf_switches.h (class CFSwitches): number of switches replaced by
1195          references to 'const int CFSwitchesMax'
1196        * cf_switches.cc (CFSwitches): number of switches replaced by
1197          references to 'const int CFSwitchesMax'
1198
1199
1200    **************** Factory Version 1.3a released ****************
1201
1202       
1203        * configure.in: doc fix
1204
1205        * INSTALL: doc fix
1206
1207        * NEWS: doc fix
1208
1209        * README: doc fix
1210
1211Mon Jul 21 12:58:04 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1212
1213        * sm_sparsemod.cc (internalSparsemod): sparsemod() renamed to
1214          internalSparsemod()
1215          (sparsemod): new function which is a simple wrapper around
1216          internalSparsemod()
1217
1218        * GNUmakefile.in (distfiles): NEWS and INSTALL added to
1219          distribution
1220
1221        * configure.in (factory_version): version number incremented
1222        * INSTALL: version number incremented
1223        * README: version number incremented
1224
1225        * configure.in: doc fix
1226
1227        * GNUmakefile.in (dist): changed suffix of distribution suffix
1228          (distclean): changed suffix of distribution suffix
1229
1230        * NEWS: doc fix
1231
1232        * INSTALL: doc fix
1233
1234        * INSTALL: new file
1235
1236        * README: doc fix
1237
1238        * GNUmakefile.in (installgftables): bug fixes undone
1239        (installgftables): completely rewritten
1240
1241Sat Jul 19 08:57:34 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1242
1243        * GNUmakefile.in (installgftables): bug fix
1244
1245        * GNUmakefile.in (dist): output is more beautyful now
1246
1247        * cf_gcd.cc (gcd_poly): call to sparsemod() added
1248
1249        * cf_ops.cc (resultant): assertion added
1250        (resultant): new variable flipFactor
1251        (resultant): handling of trivial cases fixed
1252        (resultant): some other minor bug fixes
1253
1254        * cf_ops.cc (resultant): doc fix
1255
1256        * README: doc fix
1257
1258        * NEWS: doc fix
1259
1260        * GNUmakefile.in (uninstallgftables): brute force ('rm -rf')
1261          replaced by a safer variant
1262
1263Thu Jul 17 11:05:04 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1264
1265        * sm_util.cc: doc fix
1266        (interpol): doc fix
1267
1268        * sm_util.h (REArray): bug fix
1269
1270        * sm_sparsemod.cc: new file
1271
1272        * GNUmakefile.in (basefactoryincl): files sm_util.h and
1273          sm_sparsemod.h added
1274          (basefactorysrc): files sm_util.cc and sm_sparsemod.cc added
1275
1276        * NEWS: new file
1277
1278Wed Jul 16 11:35:06 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1279
1280        * .cvsignore (config.cache): new entry
1281
1282        * canonicalform.cc (CanonicalForm::ilog2): new method
1283        * canonicalform.h (class CanonicalForm): new declaration of ilog2
1284        (ilog2): new function
1285        * int_cf.cc (InternalCF::ilog2): new method
1286        * int_cf.h (class InternalCF): new declaration of ilog2
1287        * int_int.cc (InternalInteger::ilog2): new method
1288        * int_int.h (class InternalInteger): new declaration of ilog2
1289        * fac_univar.cc (norm, dnorm): function dnorm replaced by norm
1290        (kBound): uses ilog2() and norm() now
1291
1292Tue Jul 15 14:47:53 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1293
1294        * sm_util.h (REArray): new typedef.  All references to
1295          Array<REvaluation> changed to REArray.
1296
1297        * sm_sparsemod.h: new file
1298
1299Mon Jul 14 10:00:59 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1300
1301        * sm_util.h: doc fix
1302
1303        * sm_util.h (dinterpol): bug fix of declaration
1304
1305        * sm_util.cc: doc fix
1306
1307        * sm_util.cc: new file
1308
1309        * sm_util.h: new file
1310
1311        * int_cf.h (OBJDEL): spurious macro OBJDEL removed
1312
1313        * README: new file
1314        * GNUmakefile.in (distfiles): README added to distribution
1315
1316        * canonicalform.cc (initCanonicalForm): initialization of
1317          SW_USE_SPARSEMOD added
1318
1319        * canonicalform.cc (CanonicalForm::degree( Variable )): doc fix
1320
1321        * configure.in: doc fix
1322
1323        * configure.in (libmem, headerfactory, factoryconf): output
1324          variables removed
1325
1326        * configure.in (templatedir): initialization fixed
1327
1328Fri Jul 11 09:48:26 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1329
1330        * canonicalform.cc (CanonicalForm::degree): doc fix
1331
1332        * GNUmakefile.in: dependencies checked
1333
1334        * GNUmakefile.in: doc fix
1335
1336        * GNUmakefile.in (.PHONY): phony targets updated
1337
1338        * GNUmakefile.in (clean): core and *~ will not be removed any
1339          longer
1340
1341        * GNUmakefile.in (depend): dependencies config.h and factoryconf.h
1342          removed
1343
1344        * GNUmakefile.in (dist): 'chmod 777' removed
1345
1346        * GNUmakefile.in (gengftables): dependency on 'all' replaced by
1347          dependency on $(libfactory) and libcfmem.a
1348
1349        * GNUmakefile.in (gengftables.o): dependency cf_util.h removed
1350        (gengftables.o): dependencies factoryconf.h and config.h added
1351
1352        * GNUmakefile.in (installcf, installgftables): bug fix
1353        (uninstallcf): bug fix
1354
1355        * GNUmakefile.in (libmem, headerfactory, factoryconf): variables
1356          removed.  All references changed (to 'libcfmem.a', 'factory.h',
1357          and 'factoryconf.h', resp.).
1358
1359        * GNUmakefile.in (realmaintainer-clean): target removed
1360
1361        * GNUmakefile.in (templatesrc, templateincl): file
1362          ftmpl_functions.h moved from $(templateincl) to $(templatesrc)
1363
1364        * GNUmakefile.in (TESTLDFLAGS): flag '-L.' moved to target
1365          gengftables
1366        (gengftables): '-L.' moved from $(TESTLDFLAGS) to command
1367
1368        * GNUmakefile.in (TESTCXXFLAGS): new variable
1369        (gengftables.o): references to $(LIBCXXFLAGS) replaced by
1370          references to $(TESTCXXFLAGS)
1371
1372Tue Jul  1 14:26:29 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1373
1374        * GNUmakefile.in (dist): use ln instead of cp to build
1375          distribution
1376
1377        * canonicalform.cc (initCanonicalForm, mmInit): initialize memory
1378          managment if compiled with Singular.  New declaration of
1379          mmInit().
1380
1381        * cf_random.cc (RandomGenerator): definitions of 'const long int'
1382          in class for mac removed.  Instead, they are initialized in the
1383          constructor.
1384
1385        * cf_random.h (factoryrandom, factoryseed): declarations marked as
1386          public
1387
1388Mon Jun 30 15:38:08 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1389
1390        * GNUmakefile.in (LIBCFLAGS, LIBCXXFLAGS, TMPLCXXFLAGS): option
1391          -Wall replaced by references to $(WARNFLAGS)
1392          (WARNFLAGS): new variable
1393
1394        * imm.h (MINIMMEDIATELL, MAXIMMEDIATELL): initialization for mac
1395          added which does not like a 'LL' suffix
1396
1397        * templates/ftmpl_matrix.cc: include paths for mac added
1398        * templates/ftmpl_list.cc: include paths for mac added
1399        * templates/ftmpl_factor.cc: include paths for mac added
1400        * templates/ftmpl_array.cc: include paths for mac added
1401        * factory.template: include paths for mac added
1402        * canonicalform.h: include paths for mac added
1403        * ftmpl_inst.cc: include paths for mac added
1404        * cf_gcd.cc: include paths for mac added
1405        * cf_map.cc: include paths for mac added
1406        * cf_map.h: include paths for mac added
1407        * fac_ezgcd.cc: include paths for mac added
1408
1409        * configure: checked into RCS
1410        * readcf.cc: checked into RCS
1411
1412Fri Jun 27 10:33:29 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1413
1414        * bin/makeheader: checked into RCS
1415        * bin/install-sh: checked into RCS
1416        * bin/mkinstalldirs: checked into RCS
1417
1418Thu Jun 26 16:06:39 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1419
1420        * GNUmakefile.in: doc fix
1421
1422Wed Jun 25 10:02:51 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1423
1424        * configure.in (enable_gmp): bug fix
1425        (CPPFLAGS, LDFLAGS): bug fix
1426
1427Tue Jun 24 11:15:25 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1428
1429        * configure.in (with_builtingmp): command line option
1430          --with-builtingmp removed.  All references to with_builtingmp
1431          and some additional code to deal with the command line options
1432          --with-gmp and --with-builtin-gmp removed, too.
1433
1434        * configure.in (enable_assertions): disabled by default
1435
1436        * configure.in (enable_gmp): with_gmp and with_builtin_gmp are set
1437          to '$(includedir)' if command line option --enable-gmp is given
1438
1439        * configure.in: fixes in configure's messages
1440
1441        * configure.in: doc fix
1442
1443Mon Jun 23 12:44:50 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1444
1445        * config.h.in: doc fix
1446
1447        * factory.template: doc fix
1448
1449        * factoryconf.template: doc fix
1450
1451Fri Jun 20 12:09:00 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1452
1453        * templates/: all files prefixed with 'ftmpl_'.  All #include
1454          statements changed.
1455        * GNUmakefile.in (templatesrc, templateincl): all files prefixed
1456          with 'ftmpl_'
1457
1458        * ftmpl_inst.cc, tmpl_inst.cc: tmpl_inst.cc renamed to
1459          ftmpl_inst.cc
1460        * GNUmakefile.in: all references to tmpl_inst replaced by
1461          references to ftmpl_inst
1462
1463Thu Jun 19 14:33:17 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1464
1465        * config.h.in: doc fix
1466
1467        * factoryconf.template: doc fix
1468
1469        * headers of almost all source files fixed
1470
1471Thu Jun 12 13:12:49 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1472
1473        * cf_globals.cc: doc fix
1474
1475Fri Jun  6 09:38:05 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1476
1477        * configure.in: some stupid warnings removed if "dangerous"
1478          combinations of with's/enable's are specified on commandline.
1479          Some other fixes in configure's messages.
1480
1481        * configure.in (enable_memdebug): code removed which sets
1482          enable_memdebug to 'normal' since this is really never tested
1483
1484        * configure.in (with_gmp, with_builtingmp): new command line
1485          options.  Rest of configure.in adapted to new scheme of
1486          specifying where gmp lives.
1487
1488        * configure.in: doc fix
1489
1490        * GNUmakefile.in (distsrc, clean): gengftables added to
1491          distribution
1492          (distfiles): ChangeLog added to distribution
1493
1494Thu Jun  5 15:03:48 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1495
1496        * configure.in (enable_debugoutput, enable_timing): dependency on
1497          with_Singular removed so '--with-Singular --enable-debugoutput'
1498          and '--with-Singular --enable-timing' are possible
1499
1500        * GNUmakefile.in (gengftables.o): check added which makes make
1501          complain if factory was not configured in the right way
1502
1503        * configure.in: checks on sizeof(int) == sizeof(void *) == 4
1504          removed
1505
1506        * debug.h: dependency on #define NDEBUG removed
1507
1508        * factoryconf.template: doc fix
1509
1510        * config.h.in: added to distribution as source file.  config.h.in
1511          is not created from acconfig.h any longer.
1512        * acconfig.h: removed from distribution
1513        * GNUmakefile.in: ($(srcdir)/config.h.in, $(srcdir)/stamp-h.in,
1514          realmaintainerclean, dist, distfiles): changed to reflect the
1515          changes described above
1516
1517        * config.h.in (INCL_CONFIG_H): new #define to prevent multiple
1518          inclusion of config.h
1519
1520        * GNUmakefile.in ($(srcdir)/configure): make will not complain
1521          about a missing autoconf any longer
1522
1523        * canonicalform.cc (operator>>): returns 0 again if #define
1524          SINGULAR and #define NOSTREAMIO are switched on
1525
1526Before Mon Jun  4 1997 Jens Schmidt <schmidt@mathematik.uni-kl.de>
1527
1528        This is a list of most of the changes I made after I took the
1529        responsibility for factory development and before I started to
1530        update the ChangeLog regularily.  It is unlikely to be complete.
1531
1532        Besides minor changes at "source code level" (bug fixes, new
1533        features) which are not really visible to the user in general
1534        there are quite a lot of changes at "organization level" (aka
1535        preprocessor level) and at "distribution level" (configure,
1536        Makefile).
1537
1538
1539        First, the changes at distribution level:
1540
1541        * bin: some useful/necessary scripts added to distribution
1542        * install-sh: moved to bin
1543
1544        * ChangeLog: added to distribution
1545
1546        * configure.in: totally rewritten
1547
1548        * config.h.in, conf.h.in: conf.h.in replaced by a totally
1549          rewritten config.h.in.  Furthermore, config.h is now explicitly
1550          included in allmost every source file of the distribution.
1551        * factoryconf.template: new file. factoyconf.h is included instead
1552          of config.h in all source files which are not translated but
1553          installed (e.g. templates).
1554
1555        * factory.template, factory.h: factory.h replaced by
1556          factory.template since makeheader is now included in
1557          the distribution
1558        * factory.template: rewritten to new makeheader syntax
1559
1560        * factory.template, singfactory.h: Singular stuff moved from
1561          singfactory.h to factory.template.  Wrapped by #ifdef
1562          SINGULAR.
1563        * singfactory.h: removed from distribution
1564
1565        * gengftables.cc: code for generating gftables added to
1566          distribution
1567
1568        * GNUmakefile.in, Makefile.in: Makefile.in replaced by a totally
1569          rewritten GNUmakefile.in
1570
1571        * INSTALL: removed from distribution since not up to date
1572
1573        * memman.h, mmalloc.c, mmallocs.c, mmheap.c, mmprivate.h,
1574          mmutil.c, mmallocb.c, mmblock.c, mminit.c, mmspec.c: new memory
1575          manager added to distribution
1576
1577        * mpext.cc, mpext.h, mpfactory.h: removed from distribution.  No
1578          more MP support.
1579        * config.h.in (MULTIPROTOCOL): #define MULTIPROTOCOL removed
1580        * int_int.h (class InternalInteger): declarations dependent on
1581          #define MULTIPROTOCOL removed
1582        * int_rat.h (class InternalRational): declarations dependent on
1583          #define MULTIPROTOCOL removed
1584
1585        * readcf.cc: added to distribution since not all users have
1586          bison available
1587
1588
1589        Now for the changes at organization level:
1590        If we refer to the "DEBOUT macros", the "ASSERT macros", or the
1591        "TIMING macros" we mean one (or more) of the macros defined in
1592        debug.h, assert.h, and timing.h, resp.
1593
1594        * assert.h (NOASSERT, NDEBUG): #define NDEBUG to switch off
1595          assertions replaced by #define NOASSERT.  For sake of backward
1596          compatibility NDEBUG works, too.
1597
1598        * assert.h (DEBINCLEVEL, DEBDECLEVEL, DEBOUTSL, DEBOUT, DEBOUTLN):
1599          DEBOUT macros moved to debug.h
1600        * assert.cc: renamed to debug.cc
1601        * debug.h, debug.cc: new files.  DEBOUT macros moved from
1602          assert.h/assert.cc to debug.h/debug.cc.  All source files which
1603          need these macros include debug.h.
1604
1605        * assert.h (PVIRT_VOID, PVIRT_INTCF, PVIRT_BOOL, PVIRT_INT,
1606          PVIRT_CHARCC): PVIRT_*-macros moved from int_cf.h to assert.h
1607        * int_cf.h (PVIRT_VOID, PVIRT_INTCF, PVIRT_BOOL, PVIRT_INT,
1608          PVIRT_CHARCC): PVIRT_*-macros moved to assert.h
1609
1610        * assert.h (__ASSERT, __STICKYASSERT): the preprocessor instead of
1611          fprintf() pastes the message into the format string now
1612
1613        * assert.h (__ASSERT1, ASSERT1, STICKYASSERT1): new macros
1614
1615        * assert.h (__WARN, WARN, STICKYWARN): new macros
1616
1617        * canonicalform.cc (operator>>): dependency on #define SINGULAR
1618          removed
1619
1620        * cf_defs.h (INCL_CF_DEFS_H, incl_cf_defs_H): #define
1621          incl_cf_defs_H renamed to #define INCL_CF_DEFS_H so
1622          cf_defs.h is included only once
1623
1624        * cf_factor.cc (factorize): dependency on #define MULTIFACTOR
1625          removed
1626
1627        * cf_factory.cc (CFFactory::basic( int, int )): error message
1628          changed to call of ASSERT macros
1629        * fac_util.cc: (crossprod): error message changed to call of
1630          ASSERT macros
1631        * int_cf.cc: several error messages changed to calls of ASSERT
1632          macros
1633        * int_cf.h (InternalCF::InternalCF( InternalCF& )): error message
1634          changed to call of ASSERT macros
1635        * int_poly.cc (InternalPoly::InternalPoly( InternalPoly& )): error
1636          message changed to call of ASSERT macros
1637        * templates/array.cc (Array<T>::operator[], Array<T>::operator+=):
1638          error messages changed to calls of ASSERT macros
1639        * templates/list.cc (List<T>::getFirst, List<T>::getLast,
1640          ListIterator<T>::getItem): error messages changed to calls of
1641          ASSERT macros
1642
1643        * cf_gcd.cc: debug output changed to calls of DEBOUT macros
1644        * cf_linsys.cc: debug output rewritten and changed to calls of
1645          DEBOUT macros
1646        * fac_berlekamp.cc (QPrintFF, QPrintGF): definition and calls of
1647          QPrintFF(), QPrintGF() wrapped by #ifdef DEBUGOUTPUT
1648        * fac_univar.cc: debug output rewritten
1649          (hprint): calls to hprint() wrapped by calls to #define
1650          DEBOUTHPRINT, which definition depends on #define DEBUGOUTPUT
1651          (instead of NDEBUG, as before).  All callers changed.
1652
1653        * cf_linsys.cc: superfluous #define TIMING removed
1654        * fac_distrib.cc: superfluous #undef DEBUGOUTPUT removed
1655        * fac_ezgcd.cc: some superfluous #defines (DEBUGOUTPUT, TIMING)
1656          and #includes removed
1657        * fac_multihensel.cc: some superfluous #defines (DEBUGOUTPUT, TIMING)
1658          removed
1659        * fac_multivar.cc: some superfluous #defines (DEBUGOUTPUT, TIMING)
1660          removed
1661        * fac_univar.cc: some superfluous #defines (DEBUGOUTPUT, TIMING)
1662          and #includes removed
1663
1664        * config.h.in (GFTABLEDIR): new #define
1665        * gfops.cc (gf_get_table): uses #define GFTABLEDIR to get path
1666          to the GF(q) tables
1667
1668        * config.h.in (MDEBUG, NOASSERT, TIMING, DEBUGOUTPUT): new
1669          #defines
1670
1671        * config.h.in (NOSTREAMIO): new #define NOSTREAMIO to switch off
1672          stream IO.  Operators <<, >>, and related stuff wrapped by
1673          #ifndef NOSTREAMIO.
1674
1675        * debug.cc (deb_level, level_msg, deb_inc_level):
1676          deb_inc_level()'s output made more pretty at time of first call
1677
1678        * debug.h (DEBOUT, DEBOUTLN): slightly modified so they print
1679          "objects" instead of only one "msg" and one "object".  All
1680          callers changed.
1681
1682        * debug.h (DEBUGOUTPUT): #define DEBUGOUTPUT is switched off now
1683          if #define NDEBUG is switched on
1684
1685        * fac_univar.cc (ZFactorizeUnivariate): timing stuff changed to
1686          calls of TIMING macros
1687
1688        * gmpext.h: references to #define INCL_GCDEXT_H replaced by
1689          references to #define INCL_GMPEXT_H
1690
1691        * initgmp.cc (initializeGMP): dependency on #define SINGULAR
1692          removed
1693
1694        * mmallocb.c (MM_TEST, TEST): references to #define TEST
1695          replaced by references to #define MM_TEST
1696
1697        * readcf.h: '#include <stdio.h>' replaced by '#include <iostream.h>'
1698
1699        * readcf.y: dependency on #define COMEAU removed
1700
1701        * templates/matrix.cc (ASSERT): definition of ASSERT macros
1702          replaced by inclusion of factoryconf.h
1703
1704        * timing.h (HZ): new #define to calculate ticks per second in a
1705          more portable way.  All references changed.
1706
1707        * timing.h (TIMING_DEFINE_PRINT, TIMING_END_AND_PRINT): stream IO
1708          changed to std IO
1709
1710        * timing.h (TIMING_END_AND_PRINT): new macro
1711
1712
1713        Last not least, changes at source code level:
1714
1715        * canonicalform.cc (mapinto): fixed mapping from int to GF(q)
1716
1717        * cf_factor.cc (sqrFree( CanonicalForm, boolean )): new
1718          function which sorts output if desired
1719        * cf_factor.cc (sqrFree( CanonicalForm )): changed to call new
1720          sqrFree()
1721        * canonicalform.h, cf_factor.h (sqrFree( CanonicalForm, boolean )):
1722          new declaration
1723        * fac_sqrfree.cc (compareFactors, sortCFFList): new functions used
1724          by new sqrFree()
1725        * fac_sqrfee.h (sortCFFList): new declaration
1726
1727        * cf_defs.h (SW_USE_SPARSEMOD): new switch
1728
1729        * cf_globals.cc (factoryVersion): new external
1730        * cf_globals.h (factoryVersion): new declaration
1731        * config.h.in (FACTORYVERSION): new #define
1732        * factory.template: '#include cf_globals.h' added because of
1733          version string
1734
1735        * cf_linsys.cc (linearSystemSolve, determinant, determinant2):
1736          typedef int_ptr added
1737          (linearSystemSolve, determinant, determinant2): 'new (int*)[..]'
1738          replaced by 'new int_ptr[..]'
1739        * templates/matrix.h (Matrix<T>::T_ptr): new typedef
1740        * templates/matrix.cc (Matrix<T>::Matrix( int, int ),
1741          Matrix<T>::Matrix( Matrix<T> ), Matrix<T>::operator=): 'new (T*)[..]'
1742          replaced by 'new T_ptr[..]'
1743
1744        * cf_iter.h: superfluous '#include <iostream.h>' removed
1745        * cf_factor.h: superfluous '#include <iostream.h>' removed
1746        * cf_reval.h: superfluous '#include <iostream.h>' removed
1747        * memutil.c: superfluous '#include <stdio.h>' removed
1748        * mmalloc.c: superfluous '#include <stdio.h>' removed
1749
1750        * cf_random.cc (RandomGenerator): new class
1751          (RanGen): new static
1752          (factoryrandom, factoryseed): calls to stdlib random generator
1753          replaced by methods of class RandomGenerator
1754
1755        * cf_switches.h (RATIONAL): superfluous #define RATIONAL removed
1756        * int_int.cc (IntInt): superfluous #define IntInt removed
1757        * int_pp.cc (IntPP): superfluous #define IntPP removed
1758
1759        * fac_univar.cc (initHG, ZFactorizeUnivariate): STICKYWARNings
1760          added because of some strange errors which occur in these
1761          functions
1762
1763        * fac_univar.cc (kBound): cast to double added in calculation of
1764          the bound
1765          (UnivariateQuadraticLift): cast to double added in calculation
1766          of no_iter
1767
1768        * fac_univar.cc (max_fp_fac, MAX_FP_FAC): '#define MAX_FP_FAC'
1769          replaced by 'const int max_fp_fac'.  All references changed.
1770
1771        * fac_univar.cc (ZFactorizeUnivariate): superfluous declaration of
1772          'CFFList G' removed.  Some trivial structural changes.  Test on
1773          'D != 0' (before deleting D) removed.
1774
1775        * gfops.h (gf_gf2ff, gf_isff): declarations marked as public for
1776          Singular
1777        * factory.template: '#include "gfops.h"' added
1778
1779        * gfops.cc (gf_get_table): gf_table[gf_q] is guaranteed to be 0
1780
1781        * gfops.cc (gf_get_table): rewritten.  Major changes: copies
1782          Singulars tables if these are present instead of reading from
1783          disk.  Uses standard IO instead of stream IO to read the tables.
1784        * singext.h (nfCharQ, nfM1, nfMinPoly, nfPlus1Table): declarations
1785          of Singular objects added to copy Singulars GF(q) tables
1786
1787        * gfops.cc (gf_get_table): length of temporary buffer replaced by
1788          'const int gf_maxbuffer'
1789
1790        * gfops.cc (gf_isff): rewritten
1791
1792        * gfops.cc (gf_maxtable, MAXTABLE): '#define MAXTABLE' replaced by
1793          'const int gf_maxtable'.  All references changed.
1794        * gfops.cc (gf_valid_combination): 'int m' replaced by references
1795          to gf_maxtable
1796
1797        * gfops.cc (intVec2CF): new function
1798
1799        * gfops.h (gf_mipo): new declaration
1800
1801        * imm.h (class InternalCF): superfluous declaration of class
1802          InternalCF removed
1803
1804        * imm.h (imm_intval): convertion from GF(q) to integer added
1805
1806        * int_int.cc (InternalInteger::genOne): Ruedigers last fryday
1807          afternoon fix
1808
1809        * variable.cc (Variable::name): casts to int added
1810
1811        * variable.cc (Variable::Variable( char ),
1812          Variable::Variable( int, char ), rootOf): 'delete ...' changed
1813          to 'delete [] ...' where necessary
Note: See TracBrowser for help on using the repository browser.