source: git/factory/ChangeLog @ 9189ab6

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