[6c5d86] | 1 | Thu Nov 7 11:31:58 MET 2002 Hans Schoenemann <hannes@mathematik.uni-kl.de> |
---|
| 2 | interface to NTL (optional, recommended): tested with NTL 5.2, 5.3 |
---|
| 3 | bug fixes for multivariate factorization |
---|
| 4 | |
---|
[ccf43d5] | 5 | Tue Apr 10 15:24:49 CEST 2001 Hans Schoenemann <hannes@mathematik.uni-kl.de> |
---|
| 6 | several small bugs fixed (mostly memory leaks) |
---|
| 7 | changed copyright to GPL |
---|
| 8 | |
---|
[fae4cb9] | 9 | Tue Oct 28 14:46:08 1997 Jens Schmidt <schmidt@mathematik.uni-kl.de> |
---|
| 10 | |
---|
| 11 | New features in Factory, version 1.3b: |
---|
| 12 | ====================================== |
---|
| 13 | Distribution and organization level: |
---|
| 14 | ------------------------------------ |
---|
| 15 | o The new external variable `factoryConfiguration' describes the |
---|
| 16 | configuration Factory has been translated with. |
---|
| 17 | o If configuring for cross compiling `configure' assumes that the target |
---|
| 18 | machine has arithmetic shift. |
---|
| 19 | o Parts of Factory are written using `folding-mode' for GNU Emacs. Since |
---|
| 20 | this is a really useful feature `folding.el' has been added to the |
---|
| 21 | distribution. |
---|
| 22 | o The new `make' target `installtest' in the top level `GNUmakefile' tests |
---|
| 23 | whether the installation has been successful. |
---|
| 24 | o The new directory `examples/' contains some example applications for |
---|
| 25 | Factory and a `GNUmakefile' to build them. |
---|
| 26 | |
---|
| 27 | Source code level: |
---|
| 28 | ------------------ |
---|
| 29 | o The main interface to Factory, the class `CanonicalForm' has been (almost |
---|
| 30 | completely) revised. During this process, a number of smaller bugs has |
---|
| 31 | been fixed (most of the bugs concerning some more or less exceptional |
---|
| 32 | cases). Furthermore, many of the methods became a little bit faster, |
---|
| 33 | some of them became a lot faster (e.g., the evaluation-`operator() ()' uses |
---|
| 34 | Horner's rule now, `degree( const & Variable )' and `deriv( const & |
---|
| 35 | Variable)' do not use expensive calls to `swapvar()' any longer). |
---|
| 36 | o In the same way, I have begun to revise the gcd calculations, but there is |
---|
| 37 | still is a lot of work to do. As a first result, gcd calculations over Z |
---|
| 38 | became faster (up to a factor of two for large examples). |
---|
| 39 | |
---|
| 40 | Other bug fixes: |
---|
| 41 | o A serious bug in `resultant()' has been fixed. |
---|
| 42 | o `gcd()' works correctly now for polynomials with rational coefficients. |
---|
| 43 | However, `factorize()' still does not, and you have to multiply with the |
---|
| 44 | common denominator before factorizing. |
---|
| 45 | o `psr( CF f, CF g, Var x )', `psq()', `psrq()' work correctly now if |
---|
| 46 | degree(f) < degree(g). However, they still do not work correctly if |
---|
| 47 | either in divisor or dividend occur variables with level higher than |
---|
| 48 | x's level. |
---|
| 49 | o A bug in `CanonicalForm::sqrt()' has been fixed which in some cases made |
---|
| 50 | `factorize()' crash. |
---|
| 51 | |
---|
| 52 | Changes: |
---|
| 53 | o If CO has not a denominator `CanonicalForm::den()' returns now the unity |
---|
| 54 | from the current domain, not the unity from the domain of CO. |
---|
| 55 | o `chineseRemainder()' works now for polynomials over Z instead for elements |
---|
| 56 | of Z only. |
---|
| 57 | o `cden()' computes the common denominator with respect to algebraic |
---|
| 58 | variables, too, so multiplying with `cden()' in any case results in an |
---|
| 59 | object with integral coefficients |
---|
| 60 | |
---|
| 61 | New features: |
---|
| 62 | o The new function `subResChain()' returns the extended subresultant chain |
---|
| 63 | of two polynomials. |
---|
| 64 | o The new function `replacevar()' replaces one variable with another. In |
---|
| 65 | contrast to `swapvar()', this works for algebraic variables, too. |
---|
| 66 | o The new function `size()' returns the number of monomials occuring in a |
---|
| 67 | `CanonicalForm'. |
---|
| 68 | o The new method `CanonicalForm::Lc()' returns the leading coefficient of |
---|
| 69 | CO, where elements from an algebraic extension are considered |
---|
| 70 | coefficients, and not polynomials. |
---|
| 71 | |
---|
[4f5901] | 72 | Thu Jul 17 10:15:59 1997 Jens Schmidt <schmidt@mathematik.uni-kl.de> |
---|
| 73 | |
---|
| 74 | New features in Factory, version 1.3a: |
---|
| 75 | ====================================== |
---|
[fae4cb9] | 76 | Besides minor changes at "source code level" (bug fixes, new features) |
---|
[4f5901] | 77 | which are not really visible to the user in general there are quite a lot |
---|
[fae4cb9] | 78 | of changes at "organization level" (aka "preprocessor level") and at |
---|
| 79 | "distribution level" (`configure', `GNUmakefile'). |
---|
[4f5901] | 80 | |
---|
| 81 | |
---|
| 82 | Source code level: |
---|
| 83 | ------------------ |
---|
| 84 | o Serious bug in univariate factorization in characterstic 0 fixed (by |
---|
[e9fb31] | 85 | Ruediger Stobbe). |
---|
[4f5901] | 86 | |
---|
[e9fb31] | 87 | o New gcd algorithm (sparse modular), not fully tested by now (contributed |
---|
[fae4cb9] | 88 | by Marion Bruder). Switch on with `SW_USE_SPARSEMOD'. |
---|
[4f5901] | 89 | |
---|
| 90 | o Various minor bug fixes. |
---|
| 91 | |
---|
| 92 | |
---|
| 93 | Organization level: |
---|
| 94 | ------------------- |
---|
[88f1ee3] | 95 | o Factory translates now on Macintosh with Metroworks |
---|
[4f5901] | 96 | CodeWarrior Academic Pro 11 (changes by Wilfred Pohl) |
---|
| 97 | |
---|
[fae4cb9] | 98 | o So called "new" memory manager (written by Ruediger Stobbe) added to |
---|
[e9fb31] | 99 | distribution. So far no timigs available which memory manager is faster. |
---|
[4f5901] | 100 | |
---|
[fae4cb9] | 101 | o "ASSERT", "DEBOUT", "TIMING macros" streamlined |
---|
[4f5901] | 102 | |
---|
| 103 | o Factory's IO completely re-organized (that was a mess!). It is now |
---|
| 104 | possible to switch off everything which is related to stream IO (use |
---|
[fae4cb9] | 105 | `--disbale-streamio' option to `configure'). This way it is possible to |
---|
| 106 | link Factory without `libg++.a' or `libiostream.a'. Changes include: |
---|
[4f5901] | 107 | |
---|
[fae4cb9] | 108 | - everything related to stream IO wrapped by `#ifndef NOSTREAMIO' |
---|
[e9fb31] | 109 | - all error messages/debug output messages rewritten so that they use the |
---|
[fae4cb9] | 110 | "ASSERT" and "DEBOUT macros" |
---|
[4f5901] | 111 | - furthermore, it was necessary to change the way the GF(q) tables are |
---|
| 112 | read. As a consequence, the format of the GF(q) tables slightly |
---|
| 113 | changed, too. You have to generate/get them from net by new. |
---|
| 114 | |
---|
| 115 | |
---|
| 116 | Distribution level: |
---|
| 117 | ------------------- |
---|
| 118 | o The organization of the distribution as well as the compile/install |
---|
[fae4cb9] | 119 | procedure totally changed. It is now more GNU-like. See the `INSTALL' |
---|
| 120 | file and the `README' file for more information. |
---|
[4f5901] | 121 | |
---|
| 122 | o The file names of the template sources changed. To make them less |
---|
[fae4cb9] | 123 | canonical, all names are prefixed with `ftmpl_' ("Factory template") now. |
---|
[4f5901] | 124 | |
---|
| 125 | o The installation target directories and their structure changed a little |
---|
[fae4cb9] | 126 | bit. See the `INSTALL' file for more information. |
---|
[4f5901] | 127 | |
---|
| 128 | |
---|
[88f1ee3] | 129 | |
---|
[4f5901] | 130 | Before May 3 1997 Jens Schmidt <schmidt@mathematik.uni-kl.de> |
---|
| 131 | |
---|
| 132 | New features in Factory, version 1.2c: |
---|
| 133 | ====================================== |
---|
| 134 | Version 1.2c is a more or less inofficial version distributed with |
---|
[88f1ee3] | 135 | Singular 1.0. I hope it does not distribute too far... The description of |
---|
[4f5901] | 136 | new features to version 1.3a cope the description of new features to this |
---|
| 137 | version. |
---|