source: git/factory/ChangeLog @ 469bce

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