source: git/factory/ChangeLog @ abc625

spielwiese
Last change on this file since abc625 was abc625, checked in by Rüdiger Stobbe <stobbe@…>, 26 years ago
* ChangeLog: Well ... git-svn-id: file:///usr/local/Singular/svn/trunk@1138 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 43.3 KB
Line 
1Mon Feb  9 15:57:07 1998  Ruediger Stobbe  <rstobbe@de.oracle.com>
2
3        * cf_factor.cc (factorize): factorize now handles characteristic
4          0 correct, e.g. rational coefficients and SW_RATIONAL = ON.
5
6Thu Jan 22 10:38:34 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
7
8        * int_cf.cc, int_int.cc int_rat.cc (bgcdsame, bgcdcoeff,
9          bextgcdsame, bextgcdcoeff): new methods.  Declarations added.
10
11        * GNUmakefile.in (ftestm4src): `bgcd.m4' and `bextgcd.m4' added to
12          distribution
13
14        * canonicalform.h (mvar): bug fix.  Declared as `Variable mvar
15          (...)'.
16
17        * canonicalform.cc (bgcd, bextgcd): new functions.  Declarations
18          added.
19
20Fri Jan 16 09:08:17 1998  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
21
22        * cf_switches.h: doc fix
23
24        * cf_algorithm.h (divides): declaration moved from canonicalform.h
25          to cf_algorithm.h
26
27        * cf_switches.cc: doc fix
28
29Tue Jan 13 14:56:42 1998  Olaf Bachmann  <obachman@mathematik.uni-kl.de>
30
31        * configure.in: changed order of library checks (-lm before
32          -lgmp); check for atof in -lm check, to work around a bug on
33          some linux machines.
34
35Wed Dec 17 09:56:25 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
36
37        * canonicalform.cc (operator ==, operator !=): rewritten and
38          speeded up
39          (operator >): slightly speeded up
40
41        * int_cf.h (class InternalCF): `sign()' declared as const
42
43        * int_poly.cc (comparesame): doc and assertion fix
44
45        * int_int.cc (sqrt, ilog2): assertion fixes
46
47        * int_pp.cc (comparecoeff): assertion fix
48
49        * int_rat.cc (comparesame): doc fix
50
51        * int_cf.cc (InternalCF::sign): method made pure virtual.
52          Declaration adapted.
53
54        * int_cf.cc (taildegree): bug fix.  Did not check whether CO is
55          zero.
56
57        * imm.h (imm_cmp): doc fix
58
59        * canonicalform.cc (CanonicalForm::gcd): method removed.
60          Declaration adapted.
61
62        * canonicalform.cc (degree, taildegree): one more time slightly
63          speeded up.  Hopefully for the last time.
64
65Fri Dec 12 10:06:33 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
66
67        * imm.h (imm_cmp_p, imm_cmp_gf): comparisons fulfill law of
68          trichitomy
69
70        * readcf.y (yylex): parser reads generator from GF(q) correctly
71
72Tue Dec  9 10:03:07 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
73
74        * GNUmakefile.in (.PHONY): dependencies `$(srcdir)/winnt/factory.h'
75          and `$(srcdir)/winnt/factoryconf.h' added
76
77        * winnt/factory.h:  automatically created from `factory.template'
78          using `makeheader'
79
80        * winnt/factoryconf.h: automatically created from
81          `factoryconf.template' using `makeheader'
82
83        * GNUmakefile.in (dist): dependencies `$(srcdir)/winnt/factory.h'
84          and `$(srcdir)/winnt/factoryconf.h' added
85          ($(srcdir)/winnt/factory.h): new target
86          ($(srcdir)/winnt/factoryconf.h): new target
87
88        * GNUmakefile.in (distntfile): new variable
89          (distfiles): `$distntfiles' added to distribution
90          (dist): creates directory `winnt/'
91          (distfiles): `bin/makeheader.pl' added to distribution
92
93        * config.h.in (INT64): new define
94
95        * bin/makeheader.pl: new file
96
97        * int_poly.cc (comparecoeff): unused argument `acoeff' removed
98
99Mon Dec  8 18:56:39 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
100
101        * INSTALL, README: doc fixes for the Windows NT port
102
103Thu Nov 27 21:00:00 1997  Ruediger Stobbe  <rstobbe@de.oracle.com>
104
105        * winnt: new directory containing configuration files for
106          Microsoft Windows NT port using MS Visual C++ 5.0
107
108        * winnt/INSTALL.nt: new file that describes the make process on
109          Windows NT
110
111        * winnt/nt.mak: Makefile for Windoes NT
112
113        * winnt/config.h: preconfigured file for Windows NT
114
115        * winnt/factoryconf.h: for the first time this file is a hand-made
116          version of factoryconf.h for Windows NT
117
118        * winnt/factory.h: for the first time this file is a hand-made
119          version of factory.h for Windows NT
120
121        * config.h.in: new typedef INT64 for 64 bit integer type of various
122          platforms (currently 'long long int' for gcc and '__int64' for
123          MS VC++)
124
125        * readcf.y: malloc.h and memory.h are included in the case of WINNT
126          to have prototypes for alloca and memcpy
127
128        * ffops.h: now uses INT64 instead of long long int
129
130        * ffops.cc: now uses INT64 instead of long long int
131
132        * imm.h: now uses INT64 instead of long long int
133
134        * int_poly.cc: includes strstrea.h instead of strstream.h in the
135          case of WINNT (a typical Microsoft 8.3 problem - its a pity)
136
137        * cf_random.cc: the way const data members were used was not
138          conforming to the C++ standard. Now there is a version of
139          RandomGenerator that should run the same way on gcc as well as on
140          CodeWarrior (mac) and MS VC++ (nt) and every other compiler
141          conforming to the C++ standard
142
143        * fac_iterfor.cc: fixed assertion that refers to a variable that
144          was not in the scope. Wondering why gcc compiled it
145
146        * fac_sqrfree.cc: isSqrFreeZ now returns a bool, as declared in
147          the prototype. Again wondering about gcc's behaviour
148
149        * sm_sparsemod.cc: array declaration of varf, varg and schnitt on
150          on the heap instead on the stack because the array size is not
151          a constant. delete [] is called at a suitable place
152
153        * fac_cantzass.h: MS VC++ does not like a default value for a
154          parameter that is a reference (in some sense this is good behaviour)
155          Therefore there are now no default values for the parameter list
156          of FpFactorizeUnivariateCZ
157
158        * fac_cantzass.cc: No reference parameters for FpFactorizeUnivariateCZ
159
160        * cf_factor.cc: FpFactorizeUnivariateCZ is called with full parameter
161          list
162
163        * fac_univar.cc: FpFactorizeUnivariateCZ is called with full parameter
164          list
165
166        * ftmpl_inst.cc: MS VC++ does not like to explicitly instantiate
167          template functions - tmax and tmin are therefore not instatiated in
168          the case of WINNT
169          Anyway it is not clear if this file is needed when using MS VC++
170          since the handling of templates in MS VC++ done in the spirit of
171          AT&T's Cfront compilers which do a more automatic job
172
173        * templates/ftmpl_list.h: MS VC++ wants a forward declaration of
174          template class List<T> and template class ListIterator<T>. This
175          should be no problem for gcc
176
177        * timing.h: changes in the case of WINNT
178
179Fri Nov 21 15:25:27 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
180
181        * canonicalform.h (class CanonicalForm): inline method hasGcd()
182          removed.
183
184        * int_poly.cc (coeff): explicit cast to CanonicalForm added
185          (coeff): cosmetic change
186
187        * int_rat.cc (comparecoeff): bug fix.  Did not calculate dummy
188          correctly.
189          (comparecoeff): assertion moved into `if' branch
190
191        * int_pp.cc (comparesame): assertion added
192
193        * int_int.cc (comparesame): assertion added
194
195        * int_cf.cc (coeff): explicit cast to CanonicalForm added
196
197        * int_cf.cc (comparecoeff): function made pure virtual.
198          Declarations adapted.
199        * int_cf.h (class InternalCF): new pure virtual function
200          comparecoeff()
201
202        * imm.h: doc fix
203
204        * GNUmakefile.in (ftestm4src): fbinops.m4 added to distribution
205
206Thu Nov 20 16:21:51 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
207
208        * imm.h: functions rereordered
209
210Wed Nov 19 12:21:27 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
211
212        * gfops.h: functions reordered
213
214        * imm.h (imm_sign): doc fix
215
216        * imm.h: functions reordered
217
218Thu Nov 13 09:10:53 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
219
220        * cf_chinese.cc (chineseRemainder): `const CF' in arguments
221          changed to `const CF &'.  Declaration adapted.
222
223        * configure.in: doc fix
224
225        * GNUmakefile.in (ftestall): new target
226          (.PHONY): dependencies `ftestall' `ftestclean' `ftestdistclean'
227          added
228
229        * GNUmakefile.in (%.d): dependency generation uses temporary files
230          (clean): removes these temporary files
231
232        * GNUmakefile.in ($(ftestexec)): dependecy `factoryconf.h' added
233
234Wed Nov 12 18:08:51 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
235
236        * configure.in: check for `GetOpt.h' removed
237
238Thu Nov  6 16:43:17 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
239
240        * configure.in: check for `libg++.a' commented out
241
242Wed Nov  5 14:48:46 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
243
244        * GNUmakefile.in (conftest): new target
245          ($(ftestexec), gengftables.o): dependency `conftest' added
246
247        * GNUmakefile.in (gengftables.o): some dependencies removed
248          (gengftables): dependencies slightly changed
249
250        * configure.in: exits with error on absence of libgmp.a or libm.a
251
252        * configure.in: check for `unistd.h' added
253
254        * configure.in: check for `libg++.a' added
255
256Wed Oct 29 12:41:04 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
257
258        * configure.in: check for `ln -s' added
259
260        * configure.in: checks for header files necessary for the FTE
261          added
262
263        * GNUmakefile.in (LN_S): new variable
264
265        * GNUmakefile.in ($(ftestexec)): new target
266
267        * GNUmakefile.in (ftestsrc, ftestincl, ftestm4src, ftestdistfiles,
268          ftestexec): new variables
269          (distsrc, distincl, distfiles, dist): FTE added to distribution
270          (ftestclean, ftestdistclean): new targets
271          (clean, distclean): dependencies ftestclean and ftestdistclean,
272          resp., added
273
274        * GNUmakefile.in (ftest/GNUmakefile): new target
275
276        * GNUmakefile.in (gengftables): rule slightly simplified
277
278        * test_install.cc (main): calls to `operator<<()' replaced by
279          calls to `printf()'
280
281        * configure.in (M4FLAGS): new output variable
282        * configure.in (M4): check for `m4' added
283
284        * configure.in: creates `ftest/GNUmakefile'
285
286Tue Oct 28 14:46:08 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
287
288
289    **************** Factory Version 1.3b released ****************
290
291       
292        * NEWS: updated to 1.3b
293
294        * README: doc fix.  Updated to 1.3b.
295
296        * INSTALL: doc fix.  Updated to 1.3b.
297
298        * configure.in (factory_version): updated to 1.3b
299
300        * examples/GNUmakefile: doc fix
301
302        * configure.in (factory_configuration): new variable
303        * config.h.in (FACTORYCONFIGURATION): new #define
304
305        * configure.in (ac_cv_shift): set to `yes' in case of cross
306          compiling
307
308        * examples/application.cc (main): check on existence of GF(q)
309          tables removed
310
311Mon Oct 27 15:14:19 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
312
313        * examples, examples/GNUmakefile, examples/application.cc,
314          examples/gcd.cc, examples/factorize.cc: new files
315        * GNUmakefile.in (distfiles, dist): `examples/' and `examples/*'
316          added to distribution
317
318        * canonicalform.cc (operator >, operator <): bug fix.  Calls
319          `comparecoeff()' in the right way.
320
321Fri Oct 24 18:44:37 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
322
323        * GNUmakefile.in (TMPLCXXFLAGS): set to `$(LIBCXXFLAGS)'
324
325        * cf_gcd.cc (gcd): bug fix.  Handles polynomials with rational
326          coefficients correctly
327
328Thu Oct 23 14:13:42 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
329
330        * ftmpl_inst.cc: implicit instantiations of `ListItem<T>' changed
331          to explicit instantiations
332
333        * factory.template, factoryconf.template, gengftables.cc,
334          ftmpl_inst.cc: doc fix
335
336        * cf_globals.cc (factoryConfiguration): new external variable.
337          Declaration added.
338        * test_install.cc (main): prints factoryConfiguration
339
340Wed Oct 22 15:41:30 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
341
342        * configure.in: doc fixes
343
344        * canonicalform.cc (operator ()): speeded up
345
346        * cf_random.cc (factoryrandom): returns a random number without
347          calculating any remainder if n equals zero
348
349        * ffops.cc (ff_setprime): does not clear table of primes if the
350          prime number used last time equals new one
351
352Tue Oct 21 13:24:48 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
353
354        * test_install.cc: new file
355        * GNUmakefile.in (distsrc): distribution file test_install.cc
356          added
357          (installtest, test_install, iftmpl_inst.o, test_install.o): new
358          targets
359          (clean): removes test_install
360          (.PHONY): phony target installtest added
361
362Wed Oct 15 16:31:53 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
363
364        * canonicalform.cc (taildegree): slightly speeded up
365
366        * canonicalform.cc (operator []): assertion added.  Bug fix (did
367          not work for immediates).
368
369        * canonicalform.cc (den, deriv, operator []): explicit casts to
370          CanonicalForm added
371          (sqrt): explicit calls to CFFactory::basic removed
372
373Tue Oct 14 16:47:28 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
374
375        * canonicalform.cc (mvar, degree): slightly speeded up
376
377Fri Oct 10 10:19:07 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
378
379        * gfops.cc (gf_get_table): casts to 'char *' added to avoid
380          warnings
381
382        * int_pp.cc: superfluous arguments removed
383
384        * int_int.cc: doc fix
385
386        * int_cf.cc: doc fix
387
388        * int_rat.cc: doc fix
389
390        * int_cf.cc (den): returns 'CFFactory::basic( 1 )' instead of
391          'genOne()'
392
393        * canonicalform.cc (LC, degree( v ), tailcoeff, deriv): slightly
394          speeded up
395
396        * canonicalform.cc (Lc): new method.  Declaration added.
397        * int_cf.cc (Lc): new method.  Declaration added.
398        * int_poly.cc (Lc): new method.  Declaration added.
399
400Thu Oct  9 10:20:56 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
401
402        * cf_algorithm.cc (divides): moved from canonicalform.cc to
403          cf_algorithm.cc.  Declaration moved, too.  In all files which
404          refer to this function #include of cf_algorithm.h added.
405          (divides): doc fix
406        * canonicalform.cc (divides): moved to cf_algorithm.cc.
407          Declaration moved, too.
408
409        * canonicalform.h (Lc): new function
410
411Wed Oct  1 14:21:53 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
412
413        * cf_random.h: (factoryrandom): n defaults to zero
414
415        * cf_random.cc (factoryrandom): checks for n = zero added
416
417Tue Sep 30 10:22:43 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
418
419        * GNUmakefile.in (%.d): order of dependencies changed
420
421Mon Sep 29 08:11:42 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
422
423        * GNUmakefile.in (%.d): `factoryconf.h' added as dependency
424
425        * canonicalform.h: doc fix
426
427        * cf_ops.cc (size( CF ), size( CF, Var )): new functions.
428          Declarations added.
429
430        * fac_univar.cc: doc fix
431
432        * cf_chinese.cc: doc fix
433
434        * cf_resultant.cc: doc fix
435
436        * cf_gcd.cc (maxnorm): spurious variable `h' removed
437
438        * cf_gcd.cc (balance): slightly speeded up
439
440Fri Sep 26 12:54:41 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
441
442        * assert.h: prints the function now where the assrtion occured if
443          we are translating with gcc
444
445Thu Sep 25 13:51:01 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
446
447        * cf_gcd.cc (chinesePoly): function removed
448          (gcd_poly_univar0): slightly speeded up
449
450        * cf_gcd.cc (lcm): bug fix.  Returns zero now if f or g equals
451          zero.
452
453        * cf_gcd.cc (gcd_poly): does not call sparsemod on univariate
454          polynomials an longer
455
456        * cf_gcd.cc (vcontent): assertion added.
457
458        * cf_gcd.cc (content( CF, Variable )): slightly speeded up.
459          Assertion added.
460
461Wed Sep 24 12:35:40 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
462
463        * canonicalform.cc (deriv): speeded up
464
465Tue Sep 23 17:24:24 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
466
467        * int_int.cc: doc fix
468
469        * canonicalform.cc: doc fix
470
471Fri Sep 12 17:25:14 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
472
473        * cf_gcd.cc (isqrt): function removed
474
475        * canonicalform.cc: doc fix
476
477Wed Sep 10 15:36:15 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
478
479        * int_cf.cc (InternalCF::sign): assertion added
480
481        * int_rat.cc (InternalRational::sign): call to mpz_cmp_si()
482          replaced by call to mpz_sgn()
483        * int_pp.cc (InternalPrimePower::sign): call to mpz_cmp_si()
484          replaced by call to mpz_sgn()
485        * int_int.cc (InternalInteger::sign): call to mpz_cmp_si()
486          replaced by call to mpz_sgn()
487
488        * int_pp.cc, int_int.cc, int_rat.cc, int_poly.cc, int_cf.cc,
489          canonicalform.cc (sign): doc fix
490
491        * imm.h (imm_sign): bug fix.  imm_sign() returned 0 for sign(1)
492          when calculating in GF(q).
493        * imm.h (imm_sign): bug bug fix
494
495        * gfops.h (gf_sign): doc fix
496
497        * configure.in (expl_datadir): initialization fixed.  If
498          $expl_datadir is relative we prepend the current working
499          directory now.
500
501        * cf_gcd.cc (isqrt): function removed
502
503Tue Sep  9 09:06:17 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
504
505        * README: doc fix
506
507        * INSTALL: doc fix
508
509        * cf_globals.h: doc checked
510       
511        * cf_globals.h: doc fix
512
513        * cf_globals.cc: doc checked
514
515        * cf_globals.cc: #include fix, doc fix
516
517        * cf_primes.cc, fac_cantzass.cc, int_pp.cc, int_rat.cc: #include
518          fix
519
520        * cf_factor.cc: #include fix
521          (factorize): cf_glob_switches.isOn() replaced by isOn() for
522          sake of uniformity
523
524        * cf_ops.cc (swapvar_between): arguments to operator * swapped
525
526        * cf_ops.cc (swapvar_between, swapvar_rec): functions reordered
527          and declarations removed
528
529        * cf_ops.cc (swapvar_between1, swapvar_rec1, swapvar1): new
530          experimental functions, to be removed in future
531
532        * cf_chinese.cc: doc fix
533
534        * fac_multihensel.cc: #include fix
535
536        * fac_berlekamp.cc: #include fix
537
538        * cf_util.cc: #include fix
539
540        * ffops.h: #include fix
541
542Mon Sep  8 12:39:09 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
543
544        * cf_algorithm.cc: doc checked
545
546        * cf_algorithm.cc (psr, psq, psqr): assertions added
547
548        * cf_algorithm.cc (psq, psqr): return correct values now if deg(f)
549          < deg(g)
550          (psr, psq, psqr): return correct values now if f = 0
551
552        * cf_algorithm.cc (cden): recursion terminates now for f in base
553          domain instead for f in coefficient domain
554
555        * cf_map.h: doc fix
556
557        * cf_map.cc: doc fix
558
559        * cf_algorithm.h: doc fix
560
561        * cf_switches.h: doc fix
562
563        * cf_switches.cc: doc fix
564
565Thu Sep  4 10:19:25 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
566
567        * cf_ops.cc: doc checked
568
569        * cf_ops.cc: (replacevar, replacevar_between): new functions
570        * canonicalform.h (replacevar): new declaration
571
572        * cf_algorithm.cc: doc fix
573
574        * cf_resultant.cc: doc fix
575
576        * cf_algorithm.cc: new file
577          (psr, psq, psqr, cden, common_den): functions moved from
578          cf_ops.cc to cf_algorithm.cc
579        * cf_ops.cc (psr, psq, psqr, cden, common_den): functions moved
580          to cf_algorithm.cc
581        * cf_algorithm.h: declarations of functions from cf_algorithm.cc
582          moved from canonicalform.h to cf_algorithm.h
583        * canonicalform.h: declarations of functions from cf_algorithm.cc
584          moved to cf_algorithm.h.  In all files which refer to these
585          functions #include of cf_algorithm.h added.
586        * GNUmakefile.in (basefactorysrc): cf_algorithm.cc added to
587          distribution
588
589        * cf_ops.cc (apply): bug fix.  In case f.inCoeffDomain() result is
590          now initialized to f.
591
592Mon Sep  1 10:47:41 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
593
594        * cf_algorithm.h: doc checked
595
596        * cf_resultant.cc: doc checked
597
598        * canonicalform.h (resultant): declaration moved to cf_algorithm.h
599        * cf_algorithm.h (resultant): declaration moved from
600          canonicalform.h to cf_algorithm.h
601
602        * cf_ops.cc (resultant): function moved to cf_resultant.cc
603        * cf_resultant.cc (trivialResultant): new function
604        * cf_resultant.cc (resultant): moved from cf_ops.cc to
605          cf_resultant.cc.  Completely rewritten.
606
607        * cf_ops.cc (psr): returns f now if deg(f) < deg(g)
608
609        * cf_resultant.cc (subResChain): new function
610        * cf_algorithm.h (subResChain): new declaration
611
612        * cf_factor.cc (factorize( CanonicalFormn, bool ), sqrFree):
613          default argument initializer from definition removed
614
615Fri Aug 29 09:10:28 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
616
617        * canonicalform.cc (degree( Variable )): slightly speeded up
618          (deriv( Variable )): slightly speeded up
619
620        * canonicalform.h (deriv): doc fix
621
622        * canonicalform.cc (deriv( Variable )): assertion added
623          (deriv( Variable )): bug fix
624
625        * cf_algorithm.h: declarations of functions from cf_linsys.cc
626          moved from canonicalform.h to cf_algorithm.h
627        * canonicalform.h: declarations of functions from cf_linsys.cc
628          moved to cf_algorithm.h
629
630        * cf_factor.cc (sqrFree( CF )): removed
631          (sqrFree( CF, bool )): default argument initializer added
632          (factorize( CF, bool )): default argument initializer added
633        * cf_algorithm.h  (sqrFree( CF )): declaration removed
634          (sqrFree( CF, bool )): default argument initializer added to
635          declaration
636          (factorize( CF, bool )): default argument initializer added to
637          declaration
638
639        * GNUmakefile.in (basefactorysrc): cf_resultant.cc added to
640          distribution
641
642        * cf_algorithm.h: declarations from cf_factor.h moved to
643          cf_algorithm.h
644        * cf_factor.h: declarations moved to cf_algorithm.h.  cf_factor.h
645          removed.  All #include statements changed.
646        * GNUmakefile.in (basefactoryincl): cf_factor.h removed from
647          distribution
648        * canonicalform.h: declarations of functions from cf_factor.cc
649          removed.  In all files which refer to these functions #include
650          of cf_algorithm.h added.
651
652        * cf_algorithm.h: new file
653        * cf_algorithm.h: declarations from cf_chinese.h moved to
654          cf_algorithm.h
655        * cf_chinese.h: declarations moved to cf_algorithm.h.
656          cf_chinese.h removed.  All #include statements changed.
657        * GNUmakefile.in (basefactoryincl): cf_chinese.h removed from
658          distribution.  cf_algorithm.h added to distribution.
659
660Thu Aug 28 09:21:15 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
661
662        * cf_map.h: superfluous '#include "templates/ftmpl_functions.h"'
663          removed
664
665Mon Aug  4 16:57:27 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
666
667        * canonicalform.cc (sqrt): doc fix
668
669Fri Aug  1 11:06:58 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
670
671        * cf_map.cc (operator << ( ostream& s, const CFMap & m )):
672          rewritten
673
674        * configure.in: checks for compiler characteristic are done with C
675          instead of C++
676
677Thu Jul 31 14:59:07 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
678
679        * fac_univar.cc (kBound): bound fixed
680
681        * canonicalform.h (sqrt): doc fix
682
683        * canonicalform.cc (sqrt): immediate case completely rewritten
684
685Wed Jul 30 09:40:08 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
686
687        * cf_linsys.cc (bound): off by one errors fixed
688        (linearSystemSolve): off by one errors fixed
689
690        * cf_linsys.cc (bound): debug output added
691
692        * cf_linsys.cc (bound): returns now bound + 1
693
694        * canonicalform.cc (sqrt): sqrt(0) works now
695        (sqrt): assertion added
696        (sqrt): 'int h' changed to 'long long h'.  Casts added.
697
698        * cf_defs.h (SW_RATIONAL, SW_QUOTIENT, SW_SYMMETRIC_FF,
699          SW_BERLEKAMP, SW_FAC_USE_BIG_PRIMES, SW_FAC_QUADRATICLIFT,
700          SW_USE_EZGCD, SW_USE_SPARSEMOD): #defines replaced by 'const
701          int's
702
703        * canonicalform.cc (fillVarsRec, getNumVars, getVars): moved to
704          cf_ops.cc
705        * cf_ops.cc (fillVarsRec, getNumVars, getVars): moved from
706          canonicalform.cc to cf_ops.cc
707
708        * cf_ops.cc: doc fix
709
710Thu Jul 24 12:44:46 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
711
712        * GNUmakefile.in (distfiles): bin/folding.el and bin/fold-docu.el
713          added
714
715Wed Jul 23 09:45:35 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
716
717        * cf_map.h: doc checked
718
719        * cf_map.h (class CFMap): references to List<CanonicalForm>
720          replaced by CFList
721
722        * cf_map.cc: doc checked
723
724        * cf_map.cc (CFMap( CFList )): 'P.append()' replaced by 'P.insert()'
725
726        * cf_chinese.cc (chineseRemainder( CF, ... )): operator % replaced
727          by function mod()
728
729        * README: doc fix
730
731Tue Jul 22 11:04:30 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
732
733        * cf_map.cc (CFList, CFListIterator, MPListIterator): references to
734          List<CanonicalForm>, ListIterator<CanonicalForm>, and
735          ListIterator<MapPair> replaced by their respective typedefs
736
737        * canonicalform.cc (initCanonicalForm): initialization of switches
738          removed since they are initialized by constructor
739
740        * bin/folding.el: doc checked
741
742        * bin/fold-docu.el: doc checked
743
744        * bin/folding.el: new file
745        * bin/fold-docu.el: new file
746        * bin/fold-docu.el (fold-docu): works now for all fold marks
747        * README: doc fix
748
749        * cf_switches.h: doc checked
750
751        * cf_switches.cc: doc checked
752
753        * cf_switches.h (CFSwitchesMax): new constant
754        * cf_switches.h (class CFSwitches): number of switches replaced by
755          references to 'const int CFSwitchesMax'
756        * cf_switches.cc (CFSwitches): number of switches replaced by
757          references to 'const int CFSwitchesMax'
758
759        * cf_util.h: doc checked
760
761        * cf_util.cc: doc checked
762
763
764    **************** Factory Version 1.3a released ****************
765
766       
767        * configure.in: doc fix
768
769        * INSTALL: doc fix
770
771        * NEWS: doc fix
772
773        * README: doc fix
774
775Mon Jul 21 12:58:04 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
776
777        * sm_sparsemod.cc (internalSparsemod): sparsemod() renamed to
778          internalSparsemod()
779          (sparsemod): new function which is a simple wrapper around
780          internalSparsemod()
781
782        * GNUmakefile.in (distfiles): NEWS and INSTALL added to
783          distribution
784
785        * configure.in (factory_version): version number incremented
786        * INSTALL: version number incremented
787        * README: version number incremented
788
789        * configure.in: doc fix
790
791        * GNUmakefile.in (dist): changed suffix of distribution suffix
792          (distclean): changed suffix of distribution suffix
793
794        * NEWS: doc fix
795
796        * INSTALL: doc fix
797
798        * INSTALL: new file
799
800        * README: doc fix
801
802        * GNUmakefile.in (installgftables): bug fixes undone
803        (installgftables): completely rewritten
804
805Sat Jul 19 08:57:34 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
806
807        * GNUmakefile.in (installgftables): bug fix
808
809        * GNUmakefile.in (dist): output is more beautyful now
810
811        * cf_gcd.cc (gcd_poly): call to sparsemod() added
812
813        * cf_ops.cc (resultant): assertion added
814        (resultant): new variable flipFactor
815        (resultant): handling of trivial cases fixed
816        (resultant): some other minor bug fixes
817
818        * cf_ops.cc (resultant): doc fix
819
820        * README: doc fix
821
822        * NEWS: doc fix
823
824        * GNUmakefile.in (uninstallgftables): brute force ('rm -rf')
825          replaced by a safer variant
826
827Thu Jul 17 11:05:04 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
828
829        * sm_util.cc: doc fix
830        (interpol): doc fix
831
832        * sm_util.h (REArray): bug fix
833
834        * sm_sparsemod.cc: new file
835
836        * GNUmakefile.in (basefactoryincl): files sm_util.h and
837          sm_sparsemod.h added
838          (basefactorysrc): files sm_util.cc and sm_sparsemod.cc added
839
840        * NEWS: new file
841
842Wed Jul 16 11:35:06 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
843
844        * cf_chinese.cc: doc checked
845
846        * cf_chinese.h: doc checked
847
848        * .cvsignore (config.cache): new entry
849
850        * canonicalform.cc (CanonicalForm::ilog2): new method
851        * canonicalform.h (class CanonicalForm): new declaration of ilog2
852        (ilog2): new function
853        * int_cf.cc (InternalCF::ilog2): new method
854        * int_cf.h (class InternalCF): new declaration of ilog2
855        * int_int.cc (InternalInteger::ilog2): new method
856        * int_int.h (class InternalInteger): new declaration of ilog2
857        * fac_univar.cc (norm, dnorm): function dnorm replaced by norm
858        (kBound): uses ilog2() and norm() now
859
860Tue Jul 15 14:47:53 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
861
862        * sm_util.h (REArray): new typedef.  All references to
863          Array<REvaluation> changed to REArray.
864
865        * sm_util.h: doc checked
866
867        * sm_sparsemod.h: doc checked
868
869        * sm_sparsemod.h: new file
870
871Mon Jul 14 10:00:59 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
872
873        * sm_util.h: doc fix
874
875        * sm_util.h (dinterpol): bug fix of declaration
876
877        * sm_util.cc: doc fix
878
879        * sm_util.cc: new file
880
881        * sm_util.h: new file
882
883        * int_cf.h (OBJDEL): spurious macro OBJDEL removed
884
885        * README: new file
886        * GNUmakefile.in (distfiles): README added to distribution
887
888        * canonicalform.cc (initCanonicalForm): initialization of
889          SW_USE_SPARSEMOD added
890
891        * canonicalform.cc (CanonicalForm::degree( Variable )): doc fix
892
893        * configure.in: doc fix
894
895        * configure.in (libmem, headerfactory, factoryconf): output
896          variables removed
897
898        * configure.in (templatedir): initialization fixed
899
900Fri Jul 11 09:48:26 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
901
902        * canonicalform.cc (CanonicalForm::degree): doc fix
903
904        * GNUmakefile.in: dependencies checked
905
906        * GNUmakefile.in: doc fix
907
908        * GNUmakefile.in (.PHONY): phony targets updated
909
910        * GNUmakefile.in (clean): core and *~ will not be removed any
911          longer
912
913        * GNUmakefile.in (depend): dependencies config.h and factoryconf.h
914          removed
915
916        * GNUmakefile.in (dist): 'chmod 777' removed
917
918        * GNUmakefile.in (gengftables): dependency on 'all' replaced by
919          dependency on $(libfactory) and libcfmem.a
920
921        * GNUmakefile.in (gengftables.o): dependency cf_util.h removed
922        (gengftables.o): dependencies factoryconf.h and config.h added
923
924        * GNUmakefile.in (installcf, installgftables): bug fix
925        (uninstallcf): bug fix
926
927        * GNUmakefile.in (libmem, headerfactory, factoryconf): variables
928          removed.  All references changed (to 'libcfmem.a', 'factory.h',
929          and 'factoryconf.h', resp.).
930
931        * GNUmakefile.in (realmaintainer-clean): target removed
932
933        * GNUmakefile.in (templatesrc, templateincl): file
934          ftmpl_functions.h moved from $(templateincl) to $(templatesrc)
935
936        * GNUmakefile.in (TESTLDFLAGS): flag '-L.' moved to target
937          gengftables
938        (gengftables): '-L.' moved from $(TESTLDFLAGS) to command
939
940        * GNUmakefile.in (TESTCXXFLAGS): new variable
941        (gengftables.o): references to $(LIBCXXFLAGS) replaced by
942          references to $(TESTCXXFLAGS)
943
944Tue Jul  1 14:26:29 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
945
946        * GNUmakefile.in (dist): use ln instead of cp to build
947          distribution
948
949        * canonicalform.cc (initCanonicalForm, mmInit): initialize memory
950          managment if compiled with Singular.  New declaration of
951          mmInit().
952
953        * cf_random.cc (RandomGenerator): definitions of 'const long int'
954          in class for mac removed.  Instead, they are initialized in the
955          constructor.
956
957        * cf_random.h (factoryrandom, factoryseed): declarations marked as
958          public
959
960Mon Jun 30 15:38:08 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
961
962        * GNUmakefile.in (LIBCFLAGS, LIBCXXFLAGS, TMPLCXXFLAGS): option
963          -Wall replaced by references to $(WARNFLAGS)
964          (WARNFLAGS): new variable
965
966        * imm.h (MINIMMEDIATELL, MAXIMMEDIATELL): initialization for mac
967          added which does not like a 'LL' suffix
968
969        * templates/ftmpl_matrix.cc: include paths for mac added
970        * templates/ftmpl_list.cc: include paths for mac added
971        * templates/ftmpl_factor.cc: include paths for mac added
972        * templates/ftmpl_array.cc: include paths for mac added
973        * factory.template: include paths for mac added
974        * canonicalform.h: include paths for mac added
975        * ftmpl_inst.cc: include paths for mac added
976        * cf_gcd.cc: include paths for mac added
977        * cf_map.cc: include paths for mac added
978        * cf_map.h: include paths for mac added
979        * fac_ezgcd.cc: include paths for mac added
980
981        * configure: checked into RCS
982        * readcf.cc: checked into RCS
983
984Fri Jun 27 10:33:29 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
985
986        * bin/makeheader: doc checked
987        * bin/install-sh: doc checked
988        * bin/mkinstalldirs: doc checked
989
990        * bin/makeheader: checked into RCS
991        * bin/install-sh: checked into RCS
992        * bin/mkinstalldirs: checked into RCS
993
994Thu Jun 26 16:06:39 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
995
996        * GNUmakefile.in: doc checked
997
998        * GNUmakefile.in: doc fix
999
1000Wed Jun 25 10:02:51 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1001
1002        * configure.in (enable_gmp): bug fix
1003        (CPPFLAGS, LDFLAGS): bug fix
1004
1005Tue Jun 24 11:15:25 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1006
1007        * configure.in: doc checked
1008
1009        * configure.in (with_builtingmp): command line option
1010          --with-builtingmp removed.  All references to with_builtingmp
1011          and some additional code to deal with the command line options
1012          --with-gmp and --with-builtin-gmp removed, too.
1013
1014        * configure.in (enable_assertions): disabled by default
1015
1016        * configure.in (enable_gmp): with_gmp and with_builtin_gmp are set
1017          to '$(includedir)' if command line option --enable-gmp is given
1018
1019        * configure.in: fixes in configure's messages
1020
1021        * configure.in: doc fix
1022
1023Mon Jun 23 12:44:50 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1024
1025        * config.h.in: doc checked
1026        * factory.template: doc checked
1027        * factoryconf.template: doc checked
1028        * gengftables.cc: doc checked
1029
1030        * config.h.in: doc fix
1031
1032        * factory.template: doc fix
1033
1034        * factoryconf.template: doc fix
1035
1036Fri Jun 20 12:09:00 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1037
1038        * templates/: all files prefixed with 'ftmpl_'.  All #include
1039          statements changed.
1040        * GNUmakefile.in (templatesrc, templateincl): all files prefixed
1041          with 'ftmpl_'
1042
1043        * ftmpl_inst.cc, tmpl_inst.cc: tmpl_inst.cc renamed to
1044          ftmpl_inst.cc
1045        * GNUmakefile.in: all references to tmpl_inst replaced by
1046          references to ftmpl_inst
1047
1048Thu Jun 19 14:33:17 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1049
1050        * config.h.in: doc fix
1051
1052        * factoryconf.template: doc fix
1053
1054        * headers of almost all source files fixed
1055
1056Thu Jun 12 13:12:49 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1057
1058        * cf_globals.cc: doc fix
1059
1060Fri Jun  6 09:38:05 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1061
1062        * configure.in: some stupid warnings removed if "dangerous"
1063          combinations of with's/enable's are specified on commandline.
1064          Some other fixes in configure's messages.
1065
1066        * configure.in (enable_memdebug): code removed which sets
1067          enable_memdebug to 'normal' since this is really never tested
1068
1069        * configure.in (with_gmp, with_builtingmp): new command line
1070          options.  Rest of configure.in adapted to new scheme of
1071          specifying where gmp lives.
1072
1073        * configure.in: doc fix
1074
1075        * GNUmakefile.in (distsrc, clean): gengftables added to
1076          distribution
1077          (distfiles): ChangeLog added to distribution
1078
1079Thu Jun  5 15:03:48 1997  Jens Schmidt  <schmidt@mathematik.uni-kl.de>
1080
1081        * configure.in (enable_debugoutput, enable_timing): dependency on
1082          with_Singular removed so '--with-Singular --enable-debugoutput'
1083          and '--with-Singular --enable-timing' are possible
1084
1085        * GNUmakefile.in (gengftables.o): check added which makes make
1086          complain if factory was not configured in the right way
1087
1088        * configure.in: checks on sizeof(int) == sizeof(void *) == 4
1089          removed
1090
1091        * debug.h: dependency on #define NDEBUG removed
1092
1093        * factoryconf.template: doc fix
1094
1095        * config.h.in: added to distribution as source file.  config.h.in
1096          is not created from acconfig.h any longer.
1097        * acconfig.h: removed from distribution
1098        * GNUmakefile.in: ($(srcdir)/config.h.in, $(srcdir)/stamp-h.in,
1099          realmaintainerclean, dist, distfiles): changed to reflect the
1100          changes described above
1101
1102        * config.h.in (INCL_CONFIG_H): new #define to prevent multiple
1103          inclusion of config.h
1104
1105        * GNUmakefile.in ($(srcdir)/configure): make will not complain
1106          about a missing autoconf any longer
1107
1108        * canonicalform.cc (operator>>): returns 0 again if #define
1109          SINGULAR and #define NOSTREAMIO are switched on
1110
1111Before Mon Jun  4 1997 Jens Schmidt <schmidt@mathematik.uni-kl.de>
1112
1113        This is a list of most of the changes I made after I took the
1114        responsibility for factory development and before I started to
1115        update the ChangeLog regularily.  It is unlikely to be complete.
1116
1117        Besides minor changes at "source code level" (bug fixes, new
1118        features) which are not really visible to the user in general
1119        there are quite a lot of changes at "organization level" (aka
1120        preprocessor level) and at "distribution level" (configure,
1121        Makefile).
1122
1123
1124        First, the changes at distribution level:
1125
1126        * bin: some useful/necessary scripts added to distribution
1127        * install-sh: moved to bin
1128
1129        * ChangeLog: added to distribution
1130
1131        * configure.in: totally rewritten
1132
1133        * config.h.in, conf.h.in: conf.h.in replaced by a totally
1134          rewritten config.h.in.  Furthermore, config.h is now explicitly
1135          included in allmost every source file of the distribution.
1136        * factoryconf.template: new file. factoyconf.h is included instead
1137          of config.h in all source files which are not translated but
1138          installed (e.g. templates).
1139
1140        * factory.template, factory.h: factory.h replaced by
1141          factory.template since makeheader is now included in
1142          the distribution
1143        * factory.template: rewritten to new makeheader syntax
1144
1145        * factory.template, singfactory.h: Singular stuff moved from
1146          singfactory.h to factory.template.  Wrapped by #ifdef
1147          SINGULAR.
1148        * singfactory.h: removed from distribution
1149
1150        * gengftables.cc: code for generating gftables added to
1151          distribution
1152
1153        * GNUmakefile.in, Makefile.in: Makefile.in replaced by a totally
1154          rewritten GNUmakefile.in
1155
1156        * INSTALL: removed from distribution since not up to date
1157
1158        * memman.h, mmalloc.c, mmallocs.c, mmheap.c, mmprivate.h,
1159          mmutil.c, mmallocb.c, mmblock.c, mminit.c, mmspec.c: new memory
1160          manager added to distribution
1161
1162        * mpext.cc, mpext.h, mpfactory.h: removed from distribution.  No
1163          more MP support.
1164        * config.h.in (MULTIPROTOCOL): #define MULTIPROTOCOL removed
1165        * int_int.h (class InternalInteger): declarations dependent on
1166          #define MULTIPROTOCOL removed
1167        * int_rat.h (class InternalRational): declarations dependent on
1168          #define MULTIPROTOCOL removed
1169
1170        * readcf.cc: added to distribution since not all users have
1171          bison available
1172
1173
1174        Now for the changes at organization level:
1175        If we refer to the "DEBOUT macros", the "ASSERT macros", or the
1176        "TIMING macros" we mean one (or more) of the macros defined in
1177        debug.h, assert.h, and timing.h, resp.
1178
1179        * assert.h (NOASSERT, NDEBUG): #define NDEBUG to switch off
1180          assertions replaced by #define NOASSERT.  For sake of backward
1181          compatibility NDEBUG works, too.
1182
1183        * assert.h (DEBINCLEVEL, DEBDECLEVEL, DEBOUTSL, DEBOUT, DEBOUTLN):
1184          DEBOUT macros moved to debug.h
1185        * assert.cc: renamed to debug.cc
1186        * debug.h, debug.cc: new files.  DEBOUT macros moved from
1187          assert.h/assert.cc to debug.h/debug.cc.  All source files which
1188          need these macros include debug.h.
1189
1190        * assert.h (PVIRT_VOID, PVIRT_INTCF, PVIRT_BOOL, PVIRT_INT,
1191          PVIRT_CHARCC): PVIRT_*-macros moved from int_cf.h to assert.h
1192        * int_cf.h (PVIRT_VOID, PVIRT_INTCF, PVIRT_BOOL, PVIRT_INT,
1193          PVIRT_CHARCC): PVIRT_*-macros moved to assert.h
1194
1195        * assert.h (__ASSERT, __STICKYASSERT): the preprocessor instead of
1196          fprintf() pastes the message into the format string now
1197
1198        * assert.h (__ASSERT1, ASSERT1, STICKYASSERT1): new macros
1199
1200        * assert.h (__WARN, WARN, STICKYWARN): new macros
1201
1202        * canonicalform.cc (operator>>): dependency on #define SINGULAR
1203          removed
1204
1205        * cf_defs.h (INCL_CF_DEFS_H, incl_cf_defs_H): #define
1206          incl_cf_defs_H renamed to #define INCL_CF_DEFS_H so
1207          cf_defs.h is included only once
1208
1209        * cf_factor.cc (factorize): dependency on #define MULTIFACTOR
1210          removed
1211
1212        * cf_factory.cc (CFFactory::basic( int, int )): error message
1213          changed to call of ASSERT macros
1214        * fac_util.cc: (crossprod): error message changed to call of
1215          ASSERT macros
1216        * int_cf.cc: several error messages changed to calls of ASSERT
1217          macros
1218        * int_cf.h (InternalCF::InternalCF( InternalCF& )): error message
1219          changed to call of ASSERT macros
1220        * int_poly.cc (InternalPoly::InternalPoly( InternalPoly& )): error
1221          message changed to call of ASSERT macros
1222        * templates/array.cc (Array<T>::operator[], Array<T>::operator+=):
1223          error messages changed to calls of ASSERT macros
1224        * templates/list.cc (List<T>::getFirst, List<T>::getLast,
1225          ListIterator<T>::getItem): error messages changed to calls of
1226          ASSERT macros
1227
1228        * cf_gcd.cc: debug output changed to calls of DEBOUT macros
1229        * cf_linsys.cc: debug output rewritten and changed to calls of
1230          DEBOUT macros
1231        * fac_berlekamp.cc (QPrintFF, QPrintGF): definition and calls of
1232          QPrintFF(), QPrintGF() wrapped by #ifdef DEBUGOUTPUT
1233        * fac_univar.cc: debug output rewritten
1234          (hprint): calls to hprint() wrapped by calls to #define
1235          DEBOUTHPRINT, which definition depends on #define DEBUGOUTPUT
1236          (instead of NDEBUG, as before).  All callers changed.
1237
1238        * cf_linsys.cc: superfluous #define TIMING removed
1239        * fac_distrib.cc: superfluous #undef DEBUGOUTPUT removed
1240        * fac_ezgcd.cc: some superfluous #defines (DEBUGOUTPUT, TIMING)
1241          and #includes removed
1242        * fac_multihensel.cc: some superfluous #defines (DEBUGOUTPUT, TIMING)
1243          removed
1244        * fac_multivar.cc: some superfluous #defines (DEBUGOUTPUT, TIMING)
1245          removed
1246        * fac_univar.cc: some superfluous #defines (DEBUGOUTPUT, TIMING)
1247          and #includes removed
1248
1249        * config.h.in (GFTABLEDIR): new #define
1250        * gfops.cc (gf_get_table): uses #define GFTABLEDIR to get path
1251          to the GF(q) tables
1252
1253        * config.h.in (MDEBUG, NOASSERT, TIMING, DEBUGOUTPUT): new
1254          #defines
1255
1256        * config.h.in (NOSTREAMIO): new #define NOSTREAMIO to switch off
1257          stream IO.  Operators <<, >>, and related stuff wrapped by
1258          #ifndef NOSTREAMIO.
1259
1260        * debug.cc (deb_level, level_msg, deb_inc_level):
1261          deb_inc_level()'s output made more pretty at time of first call
1262
1263        * debug.h (DEBOUT, DEBOUTLN): slightly modified so they print
1264          "objects" instead of only one "msg" and one "object".  All
1265          callers changed.
1266
1267        * debug.h (DEBUGOUTPUT): #define DEBUGOUTPUT is switched off now
1268          if #define NDEBUG is switched on
1269
1270        * fac_univar.cc (ZFactorizeUnivariate): timing stuff changed to
1271          calls of TIMING macros
1272
1273        * gmpext.h: references to #define INCL_GCDEXT_H replaced by
1274          references to #define INCL_GMPEXT_H
1275
1276        * initgmp.cc (initializeGMP): dependency on #define SINGULAR
1277          removed
1278
1279        * mmallocb.c (MM_TEST, TEST): references to #define TEST
1280          replaced by references to #define MM_TEST
1281
1282        * readcf.h: '#include <stdio.h>' replaced by '#include <iostream.h>'
1283
1284        * readcf.y: dependency on #define COMEAU removed
1285
1286        * templates/matrix.cc (ASSERT): definition of ASSERT macros
1287          replaced by inclusion of factoryconf.h
1288
1289        * timing.h (HZ): new #define to calculate ticks per second in a
1290          more portable way.  All references changed.
1291
1292        * timing.h (TIMING_DEFINE_PRINT, TIMING_END_AND_PRINT): stream IO
1293          changed to std IO
1294
1295        * timing.h (TIMING_END_AND_PRINT): new macro
1296
1297
1298        Last not least, changes at source code level:
1299
1300        * canonicalform.cc (mapinto): fixed mapping from int to GF(q)
1301
1302        * cf_factor.cc (sqrFree( CanonicalForm, boolean )): new
1303          function which sorts output if desired
1304        * cf_factor.cc (sqrFree( CanonicalForm )): changed to call new
1305          sqrFree()
1306        * canonicalform.h, cf_factor.h (sqrFree( CanonicalForm, boolean )):
1307          new declaration
1308        * fac_sqrfree.cc (compareFactors, sortCFFList): new functions used
1309          by new sqrFree()
1310        * fac_sqrfee.h (sortCFFList): new declaration
1311
1312        * cf_defs.h (SW_USE_SPARSEMOD): new switch
1313
1314        * cf_globals.cc (factoryVersion): new external
1315        * cf_globals.h (factoryVersion): new declaration
1316        * config.h.in (FACTORYVERSION): new #define
1317        * factory.template: '#include cf_globals.h' added because of
1318          version string
1319
1320        * cf_linsys.cc (linearSystemSolve, determinant, determinant2):
1321          typedef int_ptr added
1322          (linearSystemSolve, determinant, determinant2): 'new (int*)[..]'
1323          replaced by 'new int_ptr[..]'
1324        * templates/matrix.h (Matrix<T>::T_ptr): new typedef
1325        * templates/matrix.cc (Matrix<T>::Matrix( int, int ),
1326          Matrix<T>::Matrix( Matrix<T> ), Matrix<T>::operator=): 'new (T*)[..]'
1327          replaced by 'new T_ptr[..]'
1328
1329        * cf_iter.h: superfluous '#include <iostream.h>' removed
1330        * cf_factor.h: superfluous '#include <iostream.h>' removed
1331        * cf_reval.h: superfluous '#include <iostream.h>' removed
1332        * memutil.c: superfluous '#include <stdio.h>' removed
1333        * mmalloc.c: superfluous '#include <stdio.h>' removed
1334
1335        * cf_random.cc (RandomGenerator): new class
1336          (RanGen): new static
1337          (factoryrandom, factoryseed): calls to stdlib random generator
1338          replaced by methods of class RandomGenerator
1339
1340        * cf_switches.h (RATIONAL): superfluous #define RATIONAL removed
1341        * int_int.cc (IntInt): superfluous #define IntInt removed
1342        * int_pp.cc (IntPP): superfluous #define IntPP removed
1343
1344        * fac_univar.cc (initHG, ZFactorizeUnivariate): STICKYWARNings
1345          added because of some strange errors which occur in these
1346          functions
1347
1348        * fac_univar.cc (kBound): cast to double added in calculation of
1349          the bound
1350          (UnivariateQuadraticLift): cast to double added in calculation
1351          of no_iter
1352
1353        * fac_univar.cc (max_fp_fac, MAX_FP_FAC): '#define MAX_FP_FAC'
1354          replaced by 'const int max_fp_fac'.  All references changed.
1355
1356        * fac_univar.cc (ZFactorizeUnivariate): superfluous declaration of
1357          'CFFList G' removed.  Some trivial structural changes.  Test on
1358          'D != 0' (before deleting D) removed.
1359
1360        * gfops.h (gf_gf2ff, gf_isff): declarations marked as public for
1361          Singular
1362        * factory.template: '#include "gfops.h"' added
1363
1364        * gfops.cc (gf_get_table): gf_table[gf_q] is guaranteed to be 0
1365
1366        * gfops.cc (gf_get_table): rewritten.  Major changes: copies
1367          Singulars tables if these are present instead of reading from
1368          disk.  Uses standard IO instead of stream IO to read the tables.
1369        * singext.h (nfCharQ, nfM1, nfMinPoly, nfPlus1Table): declarations
1370          of Singular objects added to copy Singulars GF(q) tables
1371
1372        * gfops.cc (gf_get_table): length of temporary buffer replaced by
1373          'const int gf_maxbuffer'
1374
1375        * gfops.cc (gf_isff): rewritten
1376
1377        * gfops.cc (gf_maxtable, MAXTABLE): '#define MAXTABLE' replaced by
1378          'const int gf_maxtable'.  All references changed.
1379        * gfops.cc (gf_valid_combination): 'int m' replaced by references
1380          to gf_maxtable
1381
1382        * gfops.cc (intVec2CF): new function
1383
1384        * gfops.h (gf_mipo): new declaration
1385
1386        * imm.h (class InternalCF): superfluous declaration of class
1387          InternalCF removed
1388
1389        * imm.h (imm_intval): convertion from GF(q) to integer added
1390
1391        * int_int.cc (InternalInteger::genOne): Ruedigers last fryday
1392          afternoon fix
1393
1394        * variable.cc (Variable::name): casts to int added
1395
1396        * variable.cc (Variable::Variable( char ),
1397          Variable::Variable( int, char ), rootOf): 'delete ...' changed
1398          to 'delete [] ...' where necessary
Note: See TracBrowser for help on using the repository browser.