Project

General

Profile

Activity

From 20 Oct 2016 to 18 Nov 2016

18 Nov 2016

23:09 Feature #951 (Closed): New function: IsSqFree
John Abbott
22:39 Feature #955 (Closed): RandomUnimodularMat - random unimodular matrix (of integers)
John Abbott
22:37 Feature #910 (Closed): BigRat: read from a string in "decimal" format?
John Abbott
22:24 Bug #956 (Closed): determinant: fails for 0x0 matrix (SEGV)
John Abbott
22:23 Bug #938 (Closed): ReadExpr: misreads 2/3^4
John Abbott
22:22 Bug #936 (Closed): ReadExpr: cannot handle exponent which is not integer literal
John Abbott
21:58 Bug #971: CheckForInterrupt does not work in the expected way
I have now changed the call to @CheckForInterrupt@ in @TmpGReductor@ to the simple call that I had expected to see, a... John Abbott
18:54 Support #976 (In Progress): configure: auxiliary scripts should be consistent about error messages
Another possibile one-line format could put the script name in brackets somehow:
(first line is the current format)
...
John Abbott
18:44 Support #976: configure: auxiliary scripts should be consistent about error messages
One suggestion for the format of the error messages is to use 2 lines, perhaps like this:... John Abbott
18:39 Support #976: configure: auxiliary scripts should be consistent about error messages
While unformity is nice, it is not so important if the existing scripts work well enough ==> low priority.
I think...
John Abbott
18:34 Support #976 (Closed): configure: auxiliary scripts should be consistent about error messages
There are numerous auxiliary shell scripts (in directory @configuration/@).
They do not have a uniform way of commun...
John Abbott
18:28 Bug #975: configure: possibly ignore GMP compilation flags
If I recall well, with the @clang@ compiler there is a compile-time error with the platform-specific flags from the "... John Abbott
18:20 Bug #593 (Feedback): Temporary directories used during configuration
I have updated all the auxiliary scripts to use temp dirs in @/tmp@ following the naming convention suggested above. ... John Abbott
13:39 Bug #593: Temporary directories used during configuration
Also done the @gfan@ scripts (and fixed some more tiny problems in the @gmp@ scripts).
John Abbott
12:19 Bug #593: Temporary directories used during configuration
I have now adopted the following naming convention for the tmp dirs:
*@/tmp/CoCoALib-config-abbott-2016-11-18/gmp-cx...
John Abbott

17 Nov 2016

22:47 Bug #593: Temporary directories used during configuration
I have changed the @gmp-XYZ.sh@ scripts... configuration still works on my machine (I think).
John Abbott
22:04 Bug #593: Temporary directories used during configuration
Some scripts need to know where the *@ExternalLibs@* directory is located.
I think the simplest way to pass in this ...
John Abbott
21:34 Bug #593: Temporary directories used during configuration
Using @/tmp@ for temporary directories is very tempting, but must be done safely (_e.g._ cannot have two users trying... John Abbott
21:16 Bug #975 (In Progress): configure: possibly ignore GMP compilation flags
I have modified the script @gmp-cxx-flags.sh@. A quick test on my machine passed (well, the first few tests didn't p... John Abbott
19:25 Bug #975: configure: possibly ignore GMP compilation flags
I hope to resolve this while I'm here, and can see what happens on Gereon's cloud.
Of course, it is tedious having...
John Abbott
19:23 Bug #975 (Closed): configure: possibly ignore GMP compilation flags
Gereon had a strange problem. He was compiling on a cloud VM, and got strange error messages about the platform-spec... John Abbott
19:15 Feature #974: QIR/RealRootRefine: improve behaviour if input interval has "nasty" endpoints
This should really be under CoCoA-5, but I hope that @RealRoots@ will soon be migrated to C++ (see #440).
My curre...
John Abbott
19:07 Feature #974 (In Progress): QIR/RealRootRefine: improve behaviour if input interval has "nasty" endpoints
The fn @RealRoots@ lets a user specify an interval in which to look for real roots.
If the initial ends points are n...
John Abbott
19:03 Feature #678: Accumulator (like a geobucket)
Here is a possible design:
* user deals with a smart-pointer class (_e.g._ like ideal)
* internally there is an abs...
John Abbott
14:26 Feature #678 (In Progress): Accumulator (like a geobucket)
Here are some possible applications:
* converting polynomials to/from CoCoALib (_e.g._ other library may keep terms ...
John Abbott
14:12 Feature #678: Accumulator (like a geobucket)
Just adding some *keywords* to this issue (so it is easier to find via redmine search).
*Summation*, *summer*, *summ...
John Abbott
14:12 Feature #817: GenRepr in CoCoALib?
I will write GenRepr for poly/ideal leaving the marginal cases to cocoa-5 code.
Anna Maria Bigatti
13:25 Feature #817: GenRepr in CoCoALib?
Clearly it was not possible to have it by summer 2016 :-)
@Anna: would it be easy to add?
John Abbott
13:36 Feature #839: SparsePolyIter: make more compatible with STL
Here is a possible way to implement the idea in comment 2.
The "index" could be a pair of pointers: one pointer to...
John Abbott
13:21 Support #972: ex-PolyIterator
Since the feature being exhibited in the examples is called @SparsePolyIter@, it makes more sense that the files be c... John Abbott
13:17 Support #972 (New): ex-PolyIterator
There are examples for using @SparsePolyIter@; why are the files they are in called @ex-PolyIterator@?
@ex-PolyIte...
John Abbott

14 Nov 2016

21:53 Bug #971: CheckForInterrupt does not work in the expected way
Cane we have something more compact like this?... Anna Maria Bigatti
16:11 Bug #971: CheckForInterrupt does not work in the expected way
I have made some changes to @Interpreter.C@ (mostly adding catch commands for @InterruptReceived@).
I have not (ye...
John Abbott
13:07 Bug #971: CheckForInterrupt does not work in the expected way
In issue #714 I had guessed that the only place I needed to catch @InterruptReceived@ was around line 2678 of @Interp... John Abbott
13:03 Bug #971 (In Progress): CheckForInterrupt does not work in the expected way
As far as I can see, the CoCoA-5 interpreter needs to be modified so that it catches both @CoCoA::ErrorInfo@ and @CoC... John Abbott
11:10 Bug #971 (Closed): CheckForInterrupt does not work in the expected way
Looking at the call to @CheckForInterrupt@ in @GReductor::myReduceCurrentSPoly@ (around line 760 of @TmpGReductor.C@)... John Abbott

11 Nov 2016

15:49 Design #970 (In Progress): Weights in ElimMat?
I suggest proceeding with definition (a):
* it is already implemented
* it is easy to explain/describe
If we com...
John Abbott
15:35 Design #970: Weights in ElimMat?
I prefer (c) to (b) perhaps because it is sparser.
(a) and (c) clearly do not give the same term-ordering though t...
John Abbott
15:13 Design #970 (In Progress): Weights in ElimMat?
(similar for ElimHomogMat)
What should @ElimMat([2,3], mat([[1,5,2]]));@ return? (now it is (a))...
Anna Maria Bigatti
15:10 Slug #969 (In Progress): Output to bad stream (operator<< and myOutput): just return immediately
I have added the relevant line to all instances of @operator<<@ (for @ostream@, but not for OpenMath output fns).
...
John Abbott
15:02 Feature #962: General verbose mode?
I have just checked in a first impl of "verbose".... including doc and an example (but no test).
Perhaps we can tr...
John Abbott
11:23 Feature #962: General verbose mode?
With reference to comment 6, and the example there.
I now think it would be better to require that the programmer ...
John Abbott

10 Nov 2016

21:33 Slug #968: Slow NF example
I constructed the example in comment 5 by taking a sparse polynomial (in this case @z^30-1@) which has a factorizatio... John Abbott
21:09 Slug #968 (In Progress): Slow NF example
Here is another example which rather suggests that the problem is quite difficult in general:... John Abbott
17:09 Slug #968: Slow NF example
John Abbott wrote:
> This makes me think that it has effectively computed @(x+y+z+1)^498@ and then discovered that a...
Anna Maria Bigatti
17:03 Slug #968: Slow NF example
On the fixed linux box here it took about 210s to compute @NF(f,I)@.
This makes me think that it has effectively c...
John Abbott
16:42 Slug #968: Slow NF example
John Abbott wrote:
> When computing a @NF(x^999*y^999,I)@ we can use either GBasis element for the reduction.
> CoC...
Anna Maria Bigatti
16:16 Slug #968: Slow NF example
When computing a @NF(x^999*y^999,I)@ we can use either GBasis element for the reduction.
CoCoA ought to prefer reduc...
John Abbott
16:13 Slug #968 (In Progress): Slow NF example
Here is a silly example where NF takes longer than it should:... John Abbott
19:05 Feature #966: New function or explain: first and last for a vector?
John Abbott wrote:
> I am concerned that they may make wasteful copies of the elements of the list/vector.
Surely...
Anna Maria Bigatti
16:11 Feature #966: New function or explain: first and last for a vector?
I am not yet convinced that @first@ and @last@ are good ideas for C++.
What exactly are the hoped-for semantics? ...
John Abbott
09:06 Feature #966: New function or explain: first and last for a vector?
Equivalent to @first,last@:... Anna Maria Bigatti
08:43 Feature #966 (Closed): New function or explain: first and last for a vector?
In CoCoA-5 we often first and last for making sub-lists.
This is tedious to translate into C++.
Make good C++ docum...
Anna Maria Bigatti
18:16 Feature #962: General verbose mode?
I have tried a quick experiment, and can confirm that (on my computer) creating an @ofstream@ with a default ctor (_i... John Abbott
16:19 Feature #962: General verbose mode?
A reasonable development strategy could be to resolve #931 (verbose for GBasis) using the ideas suggested here.
When...
John Abbott
17:51 Feature #718: Insert calls to CheckForInterrupt
I tried interrupting a long gbasis computation (as part of one of Mario's long radical examples). The computation ha... John Abbott
17:01 Slug #967: Improve saturate
I see that there is an involutive saturation.
How does that work in general? should we use that instead of GBases?
Anna Maria Bigatti
16:54 Slug #967: Improve saturate
I have modified ComputeSaturation using the factorization (repeats saturation on the factors).
I don't know if that'...
Anna Maria Bigatti
11:59 Slug #967: Improve saturate
I implemented another naive algorithm (elim(h, I+(f*h-1))), but seems even worse. Anna Maria Bigatti
09:20 Slug #967 (Resolved): Improve saturate
saturate is slow (naive algorithm: repeated colon).
Improve it.
Anna Maria Bigatti
16:38 Slug #969: Output to bad stream (operator<< and myOutput): just return immediately
The motivation behind this issue is the idea of using an @ostream@ with its bad-bit set to simulate @/dev/null@.
T...
John Abbott
16:31 Slug #969 (Closed): Output to bad stream (operator<< and myOutput): just return immediately
Functions for outputting values should return immediately if the output stream is bad.
This is potentially important...
John Abbott
08:29 Feature #357 (Feedback): Constructor for vectors? CoCoAVector
This was done (up to 4 args): 2014/12/02 Anna Maria Bigatti

07 Nov 2016

18:23 Feature #962 (In Progress): General verbose mode?
Here is another idea (perhaps not so very KISS).
*NOTE* see my revision in note 10
At the start of a fn in whic...
John Abbott
15:07 Feature #962: General verbose mode?
I was thinking of having a *single* global variable for controlling verbosity, rather than many different names for d... John Abbott
14:50 Feature #962: General verbose mode?
For the specific case you mentioned:
in MinPoly.C set...
Anna Maria Bigatti
13:54 Feature #962: General verbose mode?
A possible design would be to have a global variable containing the verbosity level; so this would presumably be gove... John Abbott
13:38 Feature #962: General verbose mode?
Sometimes it could be helpful to have a verbose mode to understand what is happening inside a long computation (_e.g.... John Abbott
13:34 Feature #962 (Closed): General verbose mode?
Might it make sense to have a general "verbose" mechanism for CoCoALib?
(in addition to the specific one for Groebne...
John Abbott
17:53 Feature #958: New function: multiplicity and dim
What exactly does multiplicity do?
I made the mistake of trying to compute @multiplicity(I)@ instead of @multiplic...
John Abbott
16:04 Feature #951: New function: IsSqFree
Renamed @AreGensSquareFreeMonomial@ into @AreGensSqFreeMonomial@.
Added to CoCoA-5 (with doc) and to obsolescent.C...
Anna Maria Bigatti
12:31 Feature #951: New function: IsSqFree
I have renamed *@IsRadical@* (for @PPMonoidElem@)to *@IsSqFree@*. The old fn has been moved to @obsolescent.C@ (see ... John Abbott
13:31 Bug #790 (Closed): RingDistrMPolyInlFpPPImpl::mySummandPool frees ZERO PTR many times
This was resolved a year ago. I have just performed the test suggested in comment 1, and there are no warnings (the ... John Abbott

05 Nov 2016

17:39 Support #953: new file for old functions: obsolescent.C
Also added *@doc/txt/obsolescent.txt@* (with relevant changes to the index files).
Perhaps Anna could check what ...
John Abbott

04 Nov 2016

22:41 Support #953 (Feedback): new file for old functions: obsolescent.C
Added @test-obsolescent.C@, @ex-obsolescent.C@ and added doc to @GlobalManager.txt@.
John Abbott
21:46 Support #953: new file for old functions: obsolescent.C
Thanks, Anna! :-)
Checked in.
I did apparently lie slightly: the user has to add the include directive *and* a...
John Abbott
19:02 Support #953: new file for old functions: obsolescent.C
John Abbott wrote:
> Is it really too much to ask the user to add just one line to their file: *@#include "CoCoA/obs...
Anna Maria Bigatti
17:02 Support #953: new file for old functions: obsolescent.C
I really do not like the idea of including obsolescent fns by default: in what sense would they be obsolescent?
Is...
John Abbott
15:47 Support #953: new file for old functions: obsolescent.C
John Abbott wrote:
> Perhaps we do not need any preprocessor flag. What about the following approach?
>
> The fi...
Anna Maria Bigatti
10:43 Support #953: new file for old functions: obsolescent.C
Perhaps we do not need any preprocessor flag. What about the following approach?
The file *@library.H@* does not ...
John Abbott

03 Nov 2016

17:06 Support #953: new file for old functions: obsolescent.C
I prefer not to have so many preprocessor flags. We do need 1 to make the contents of @obsolescent.H@ visible/invisi... John Abbott
16:45 Support #953: new file for old functions: obsolescent.C
John Abbott wrote:
> My preference is that obsolescent fns remain invisible by default; the user must do something t...
Anna Maria Bigatti
16:28 Support #953: new file for old functions: obsolescent.C
I have checkedin the relevant files. The new files are called *@obsolescent.H@* and *@obsolescent.C@*.
CoCoALib i...
John Abbott
11:05 Support #953: new file for old functions: obsolescent.C
John Abbott wrote:
> I have a first implementation (but called the file @obsolete.C@ since I find "obsolete" easier ...
Anna Maria Bigatti
10:28 Support #953: new file for old functions: obsolescent.C
I have a first implementation (but called the file @obsolete.C@ since I find "obsolete" easier to type than "obsolesc... John Abbott
07:56 Support #953: new file for old functions: obsolescent.C
John Abbott wrote:
> Here are some ideas about how we might achieve a reasonable design:
> * obsolete/obsolescent f...
Anna Maria Bigatti
08:50 Feature #961 (Closed): New function: ReducedGBasis
Currently @ReducedGBasis@ is implemented in CoCoA_5.
Add it to CoCoALib, and add the flag @HasReducedGBasis@.
Suppo...
Anna Maria Bigatti

02 Nov 2016

22:15 Support #953 (In Progress): new file for old functions: obsolescent.C
Here are some ideas about how we might achieve a reasonable design:
* obsolete/obsolescent fns go into 2 files @obso...
John Abbott
20:58 Feature #951: New function: IsSqFree
John Abbott wrote:
> *NOTE* the special fn for PPs is still called *@IsRadical@*; should we rename it?
yes, pleas...
Anna Maria Bigatti
20:17 Feature #951: New function: IsSqFree
John Abbott wrote:
> I believe I have fixed the SEGV bug. Checked in new version of @DUPFp.C@. @Anna: could you ch...
Anna Maria Bigatti
18:58 Feature #951: New function: IsSqFree
I believe I have fixed the SEGV bug. Checked in new version of @DUPFp.C@. @Anna: could you check? :-)
*NOTE* p...
John Abbott
18:23 Feature #951: New function: IsSqFree
Reducing the example. These give segv:... Anna Maria Bigatti
18:17 Feature #951: New function: IsSqFree
While comparing various implementations of radical(0-dim) I found this, unexpected for me:
@IsSqFree@ is quite fast ...
Anna Maria Bigatti
18:38 Feature #958: New function: multiplicity and dim
John Abbott wrote:
> Do you plan to add @MultiplicityQuot@ and @DimQuot@ to CoCoA-5?
> If one computes @dim(P/I)@, ...
Anna Maria Bigatti
17:17 Feature #958 (Resolved): New function: multiplicity and dim
Do you plan to add @MultiplicityQuot@ and @DimQuot@ to CoCoA-5?
If one computes @dim(P/I)@, does that actually creat...
John Abbott
17:13 Feature #957 (In Progress): New function: HasGBasis
Even though I invented it, I do not much like the name *@TidyGens@*...
Also, it is not clear to me how to deal wit...
John Abbott
15:50 Feature #957: New function: HasGBasis
Also implemented the member function @IHaveGBasis@ Anna Maria Bigatti
15:45 Feature #957: New function: HasGBasis
I implemented it.
It took a remarkably long time mostly for choosing the name and deciding where to put it.
In fact...
Anna Maria Bigatti

27 Oct 2016

16:36 Feature #958: New function: multiplicity and dim
Done. Still need documentation. Anna Maria Bigatti
16:34 Feature #958 (Resolved): New function: multiplicity and dim
@multiplicity@ and @dim@ are implemented in cocoa-5.
Bring them to cocoalib.
The names should be *@MultiplicityQu...
Anna Maria Bigatti
16:26 Bug #956: determinant: fails for 0x0 matrix (SEGV)
I am still puzzled about how best to handle the trivial cases (0x0 and 1x1 matrices).
The relevant code is only 2 ...
John Abbott
14:16 Bug #956 (Resolved): determinant: fails for 0x0 matrix (SEGV)
The problem was simply that the generic Bariess code failed (on the very last line) when given a 0x0 matrix.
I hav...
John Abbott
14:13 Bug #956 (Closed): determinant: fails for 0x0 matrix (SEGV)
The following triggers a SEGV:... John Abbott
15:58 Feature #955: RandomUnimodularMat - random unimodular matrix (of integers)
I have added a test (which revealed issue #956).
I would check in, but EduRoam is being more than usually obstructiv...
John Abbott
13:17 Feature #955 (Feedback): RandomUnimodularMat - random unimodular matrix (of integers)
Perhaps the function is not that widely usable, but it was handy for something I was doing, so I made it publicly ava... John Abbott
13:12 Feature #955 (Closed): RandomUnimodularMat - random unimodular matrix (of integers)
Write a new function which produces random unimodular matrices of integers. John Abbott
14:42 Feature #957 (Closed): New function: HasGBasis
How to know if the GBasis has already been computed? there is a member flag (myGBasisIsValid), but we should have a ... Anna Maria Bigatti
13:59 Feature #11: Bareiss algorithm
What is the status of this issue?
I believe the code is there (and presumably has been active for some time).
John Abbott
11:22 Design #311 (Feedback): XelMat, StdDegRevLexMat, ... should be MatrixView
It make sense for the ordering matrices to be over @ZZ@; for @IdentityMat@ it is useful to be able to specify the rin... John Abbott

26 Oct 2016

17:44 Support #953 (Closed): new file for old functions: obsolescent.C
In CoCoA-5 we have @obsolescent.cpkg5@, a package with all the functions declared obsolescent, for example if they ha... Anna Maria Bigatti

25 Oct 2016

23:03 Slug #952 (Closed): GCD very slow
While testing @IsSqFree@ I observed that CoCoALib is very slow at computing @gcd(f,f')@ where @f = (x^2+1)*(x^27-x)@ ... John Abbott
23:01 Feature #951 (Feedback): New function: IsSqFree
I have checked in code for the new fn *@IsSqFree@* (incl. tests and doc).
It is not complete:
* currently gives e...
John Abbott

24 Oct 2016

17:51 Feature #951 (In Progress): New function: IsSqFree
A function which tests whether a value is square-free is probably going to be quite similar to a function which deter... John Abbott
17:29 Feature #951: New function: IsSqFree
Currently there is a function called @IsRadical(PP)@ for a PPMonoidElem.
Should it be called @IsSquareFree@?
"A n...
Anna Maria Bigatti
17:19 Feature #951 (Closed): New function: IsSqFree
Write function IsSquareFree (or IsSqFr, or IsSqFree) for a RingElem Anna Maria Bigatti
17:14 Feature #796: CoCoALib function for radical (or SqFree) of a polynomial
I like the idea of a fn @IsSqFree@; it certainly could be faster than testing equality with the radical (and also cle... John Abbott
16:54 Feature #796: CoCoALib function for radical (or SqFree) of a polynomial
After spending some time thinking and writing, I realized that we would need a
@IsSqFree(f)@ which could be consider...
Anna Maria Bigatti
15:32 Feature #838: Differential algebra
After some more reading, it seems that the usual structure is @QQ(x_1, x_2, ..., x_n)[u1, u2,...]@ where the expressi... John Abbott

21 Oct 2016

14:24 Feature #947: IsRadical for ideal?
I think there could be problems with removing indets by giving them values: if there is an embedded 0-dim component t... John Abbott
14:14 Design #950 (In Progress): factor and SmoothFactor for integers --> FactorINT, FactorINT_TrialDiv, FactorINT_PollardRho
Does that mean that you are in favour of offering the user the choice between a fast (and probably correct) answer, o... John Abbott
07:46 Design #950: factor and SmoothFactor for integers --> FactorINT, FactorINT_TrialDiv, FactorINT_PollardRho
@ProbSmoothFactor@?
or @SmoothFactor(n)@ and @SmoothFactor(n, "NoProb")@?
Anna Maria Bigatti

20 Oct 2016

20:10 Design #950 (Closed): factor and SmoothFactor for integers --> FactorINT, FactorINT_TrialDiv, FactorINT_PollardRho
I can make @factor@ and @SmoothFactor@ for integers faster in some cases by calling @IsProbPrime@.
The risk is that ...
John Abbott
20:08 Feature #796 (Resolved): CoCoALib function for radical (or SqFree) of a polynomial
Checked in the code. Also two new tests @test-NumTheory6@ and @test-SparsePolyRing3@.
No documentation yet.
Name...
John Abbott
16:10 Feature #796: CoCoALib function for radical (or SqFree) of a polynomial
John Abbott wrote:
> Currently I have used *@radical@* in CoCoALib, and *@rad@* in CoCoA-5 (to avoid a clash with th...
Anna Maria Bigatti
15:44 Feature #796: CoCoALib function for radical (or SqFree) of a polynomial
Before checking in which name should I use?
Currently I have used *@radical@* in CoCoALib, and *@rad@* in CoCoA-5 ...
John Abbott
13:30 Feature #796 (In Progress): CoCoALib function for radical (or SqFree) of a polynomial
I have an implementation in CoCoALib. It took so long because of a "mysterious bug" in @ContentFreeFactor@.
My cu...
John Abbott
16:32 Feature #838 (In Progress): Differential algebra
The ctor args for a @DifferentialAlgebra@ are the following:
* *@n@* number of "independent variables"
* *@k@* numb...
John Abbott
 

Also available in: Atom