Project

General

Profile

Activity

From 29 Sep 2020 to 28 Oct 2020

28 Oct 2020

23:17 Bug #1331 (Closed): adj: for matrices 7x7 and bigger
John Abbott

27 Oct 2020

19:17 Feature #645 (In Progress): Automatic mapping of RingElem: user selectable at run-time (GlobalManager?)
At the moment all fns which allow automatic promotion of ringelems call the function *@AutomaticConversionHom@*.
I...
John Abbott
18:01 Design #1515 (Rejected): Indets in coeffring are ringelems in coeffring?
*I am rejecting this because of the example in comment 3 above.*
I have also rejected the duplicate issue #636.
John Abbott
15:56 Slug #1518: SLUG: Printing PPs with many indets
I have just tried again but with @SmallExponent_t@ being @unsigned short@ (previously it was @unsigned int@).
Printi...
John Abbott
15:21 Slug #1518: SLUG: Printing PPs with many indets
I have just repeated the experiment, but in CoCoALib. This is the test program:... John Abbott
15:26 Design #1085: Fns with "OUT" args: should they give ERR::MixedRings?
This issue is a generalized version of issue #1500 (which itself is concerned with the example in comment 1 of this i... John Abbott
10:34 Feature #142: Improve threadsafety
I changed @SmartPtrIRC@ so that an @std::atomic<std::size_t>@ is used for the ref count instead of @std::size_t@.
I ...
John Abbott

26 Oct 2020

21:38 Feature #1483 (Closed): IsPowerOf2 for rationals
John Abbott
21:37 Feature #1457 (Closed): Make SmoothFactor interruptible
John Abbott
20:20 Slug #1518: SLUG: Printing PPs with many indets
I have just tried modifying the impl (@PPMonoid.C@ around lines 215--230, @PPMonoidBase::myOutput@).
The modified ve...
John Abbott
20:06 Slug #1518: SLUG: Printing PPs with many indets
Here is a reference test:... John Abbott
16:59 Slug #1518 (In Progress): SLUG: Printing PPs with many indets
I propose the following revision to the design:
* *(A)* each @PPMonoid@ has a fn which says whether it can handle on...
John Abbott
19:49 Bug #1522: SEGV: avoid long linked lists of loaves in MemPools
I now think it is probably a good idea to abandon the current design with explicit "NextLoaf" pointers (currently @s... John Abbott
17:07 Bug #1522: SEGV: avoid long linked lists of loaves in MemPools
I think I have found the cause... it is in "invisible code" written by the compiler. The invisible code is correct, ... John Abbott
14:38 Bug #1522: SEGV: avoid long linked lists of loaves in MemPools
Ahhh! Perhaps I should have guessed: @valgrind@ reports that the problem is *@stack overflow@*.
Now, why are we usi...
John Abbott
13:53 Bug #1522: SEGV: avoid long linked lists of loaves in MemPools
I got a SEGV with debugging on and MemPool disabled. Let's see what valgrind says...
BTW it was even slightly faste...
John Abbott
13:08 Bug #1522 (In Progress): SEGV: avoid long linked lists of loaves in MemPools
Triggered by the example from issue #1514.
The SEGV seems to arise during destruction at the end of the program!
...
John Abbott
13:00 Bug #1522 (Closed): SEGV: avoid long linked lists of loaves in MemPools
See comment 4 below, where I understand the root cause.
Original report:
I get a SEGV reading about 4500 random l...
John Abbott
19:45 Feature #142: Improve threadsafety
I now think that it is probably better to default to threadsafe code; the user must configure with "not threadsafe" t... John Abbott
19:41 Design #1523: Input fns: action when when istream is in bad state?
If we do follow this recommendation, which files must be considered?
* @RingElemInput@
* @BigInt@ and @BigRat@?
* ...
John Abbott
14:35 Design #1523: Input fns: action when when istream is in bad state?
At the moment my preference is to recommend (strongly) that input fns immediately check whether the @istream@ is not ... John Abbott
14:31 Design #1523 (Closed): Input fns: action when when istream is in bad state?
Output fns in CoCoALib check whether the @ostream@ is in a bad state, and if so, return without doing anything more.
...
John Abbott
12:26 Support #1499 (Closed): factorization: allow zero as exponent?
*FINAL DECISION:*
* do not allow 0 multiplicity (will throw an exception)
* do not allow factorization objects over...
John Abbott
12:06 Slug #1521: Unexpectedly slow example with larger types for SmallExponent_t
See note 5 in issue #1514.
John Abbott
12:05 Slug #1521 (New): Unexpectedly slow example with larger types for SmallExponent_t
I tried Julian's example from issue #1514 using smaller types for @SmallExponent_t@, and found that it was significan... John Abbott
10:38 Bug #1473: isystem not working as expected
I have done a little checking.
*The GMP header is automatically C++ safe:* it contains all necessary @extern "C"@ ...
John Abbott

23 Oct 2020

16:36 Slug #1518: SLUG: Printing PPs with many indets
According to the profiler: printing 250 polys each with about 500 terms (@RandomLinearForm@ from polyring with 1000 i... John Abbott
16:32 Slug #1518 (In Progress): SLUG: Printing PPs with many indets
It seems that printing polys in polyrings with many indets is slower than I would like: the example from issue #1514 ... John Abbott
16:22 Slug #1517: RandomLinearForm
It could be that the problem is simply copying lots of PPs (each occupying 4000 bytes).
Could the memory manager be ...
John Abbott
16:21 Slug #1517 (Closed): RandomLinearForm
The profiler tells me that @RandomLinearForm@ spends most (almost all!) of its time in @operator+=@.
If the indets...
John Abbott
10:57 Design #1500 (Closed): IsDivisible in a field?
John Abbott
10:31 Bug #1473: isystem not working as expected
I wonder if we should be using @extern "C"@ when including the gmp header (but not the gmpxx header). -- *NO!!* (see ... John Abbott
10:07 Bug #1473: isystem not working as expected
Still problematic... Anna Maria Bigatti
09:01 Design #1515 (In Progress): Indets in coeffring are ringelems in coeffring?
*I am increasingly convinced that this is not a good idea.* The example in comment 3 is already fairly convincing.
...
John Abbott

22 Oct 2020

17:32 Design #1515: Indets in coeffring are ringelems in coeffring?
This is almost a duplicate of issue #636. John Abbott
17:29 Design #1515: Indets in coeffring are ringelems in coeffring?
The proposed change might be inconvenient in view of issue #637: the equality test @x = a@ would throw a @MixedRings... John Abbott
17:23 Design #1515 (Rejected): Indets in coeffring are ringelems in coeffring?
A suggestion (but maybe not a good one).
Now that we have some degree of automatic ringelem conversion, we could say...
John Abbott
16:55 Feature #222: Printing polynomials - spaces between terms
Idle for more than 6 years: perhaps because there is no clear answer, and implementation might be tricky :-/
John Abbott
16:48 Support #256: Improve doc about ordering/grading for poly rings
I have just added to @SparsePolyRing.txt@ that the default term ordering is @StdDegRevLex@ (should we give an explic... John Abbott

21 Oct 2020

13:38 Slug #897: SimplestBigRatBetween: why is it so slow?
I replaced used of @BigRat@ (field @myFrac@) inside @ContFracIter@ by a pair of @BigInt@ values (@myNum@ & @myDen@).
...
John Abbott

20 Oct 2020

12:59 Slug #897: SimplestBigRatBetween: why is it so slow?
Here is the speed test I used:... John Abbott
11:39 Slug #897: SimplestBigRatBetween: why is it so slow?
I have now put special handling in for reciprocals, and the code runs a bit faster.
Probably the best solution wou...
John Abbott

19 Oct 2020

17:38 Slug #897 (In Progress): SimplestBigRatBetween: why is it so slow?
The profiler suggests that the reciprocal @1/(myFrac-myQuot)@ is surprisingly costly.
I shall modify @operator/@ to ...
John Abbott
15:22 Slug #897: SimplestBigRatBetween: why is it so slow?
Why did I give no examples to test this on?
After reading #860, a possible test might be...
John Abbott
14:48 Feature #1513 (New): Better test for univariate-ness (and better conversion)
Issue #1118 exhibits a slug due to "stupid" conversion from a sparse multivariate poly to a dense univariate poly.
...
John Abbott
12:33 Slug #1118 (In Progress): SLUG: factorization of x^9999
The quadratic behaviour derives from the GCD computation being between *dense* univariate polynomials.
A solution ...
John Abbott
12:05 Slug #1118: SLUG: factorization of x^9999
I confirm that computation time increases quadratically (why?)
Also current (2020-10-19) speed is about the same as ...
John Abbott

14 Oct 2020

21:51 Design #1511 (Closed): Use C++14 constexpr
Scott Meyers recommends using @constexpr@ where (reasonably) possible.
John Abbott
21:49 Feature #1488: BuiltIn Interreduce-Function
I have commented out @interreduce@.
I have renamed the files to @SparsePolyOps-interreduced@.
*NOT YET DOCUMENTED...
John Abbott
21:48 Support #1510 (New): Documentation for SparsePolyOps?
Where should the doc for fns in @SparsePolyOps-*@ files go?
The current organization is inconsistent :-(
John Abbott
21:38 Support #1499 (Resolved): factorization: allow zero as exponent?
I have implemented as decided (_i.e._ mults must be positive)... effectively we are rejecting the original proposal.
...
John Abbott
11:17 Support #1499: factorization: allow zero as exponent?
I now prefer not to allow 0 as a multiplicity because it could be confusing: _e.g._ someone might call @myAppend(fac,... John Abbott
21:21 Design #1500 (Feedback): IsDivisible in a field?
There are now 20 different @IsDivisible@ functions (half of them are actually @IsDivisible_AllowFields@).
I have m...
John Abbott
20:21 Design #1500: IsDivisible in a field?
Oh wow! There are a lot more @IsDivisible@ finctions than I thought... :-(
*SERIOUS QUESTION*
What should the fo...
John Abbott
10:59 Design #1500: IsDivisible in a field?
Today my preference is for *@IsDivisible@* and *@IsDivisible_AllowFields@*.
I think these names are fairly clear, an...
John Abbott
15:40 Design #1446 (In Progress): Start using C++14 "move" capability
Here are some fns to consider changing:
* @myCharacteristic@
* others???
John Abbott
15:35 Feature #24 (Rejected): object files collected in one directory
What we have currenyl works well enough (most of the time), and has been stable for quite a while (at least 3 years).... John Abbott
12:03 Feature #24: object files collected in one directory
Do we really want to overhaul the current @Makefile@ structure?
I do not recall any problems lately, and am loath to...
John Abbott
14:22 Design #1391: RingElems: syntax with [ and ] ?
Note that we have @CoeffVecWRT@ and @CoeffListWRT@. So it would be reasonable to call the CoCoALib fn *@RingElemVec@*. John Abbott
11:54 Design #1391: RingElems: syntax with [ and ] ?
Should *@RingElemList@* be ported into CoCoALib? (perhaps with a different name?)
If so, what should it be called?
...
John Abbott
14:06 Design #1462 (Closed): Change CoCoA_ERROR into CoCoA_THROW_ERROR
Effectively removed old macro *@CoCoA_ERROR@* (still exists, but triggers compile-time error saying to use @CoCoA_TH... John Abbott
13:26 Design #950: factor and SmoothFactor for integers --> FactorINT, FactorINT_TrialDiv, FactorINT_PollardRho
I have just checked what the code currently does: if many primes have been tried without finding a factor *and* if t... John Abbott
12:52 Bug #15: Adjoint of a non-invertible matrix
This now works (since when?).
Surely the impl for @adj@ can be improved; there are several later issues about adj to...
John Abbott

12 Oct 2020

20:52 Design #1500: IsDivisible in a field?
I still like the idea of a 3rd param (or perhaps two fns with similar names).
My preference is that a call like @IsD...
John Abbott

09 Oct 2020

21:19 Design #1500: IsDivisible in a field?
Also @ex-RingElem1@ fails...
John Abbott
20:06 Design #1500: IsDivisible in a field?
A comment about the code excerpt in comment 4. The call to @IsZeroDivisor@ is superfluous; perhaps it was put there ... John Abbott
11:03 Design #1500: IsDivisible in a field?
I have tried implementing the change (_i.e._ @IsDivisibile@ throws if given args in field).
Two tests fail: @test-Is...
John Abbott
09:19 Design #1500: IsDivisible in a field?
This is a bit less clear than I had previously thought. In the file @ring.C@ the function @IsDivisible@ (with 3 args... John Abbott
14:16 Support #1452 (Closed): Release CoCoALib-0.99710
Anna Maria Bigatti
14:12 Feature #1395 (Closed): SHA checksum for released code
Anna Maria Bigatti
13:54 Design #1221 (Closed): Reconsider design for accessing headers and libs of external libraries
Closing because the current design seems to work well (and has not changed for many months).
Surely the recorded t...
John Abbott
13:27 Support #1499: factorization: allow zero as exponent?
John Abbott wrote:
> My current feeling is that I should simply change the error mesg, and leave the rest as is: nam...
Anna Maria Bigatti
11:11 Support #1499: factorization: allow zero as exponent?
If we allow 0 as a multiplicity when calling @myAppend@ then it should also be allowed in the ctor call which accepts... John Abbott

08 Oct 2020

12:35 Design #1500 (In Progress): IsDivisible in a field?
I am becoming increasingly convinced that it is better to throw an error if the args are in a field (since it makes l... John Abbott

07 Oct 2020

22:11 Slug #722 (Closed): valuation slow for large inputs
The current impl is "good enough" for the moment. If a specific application comes up where more speed is needed then... John Abbott

06 Oct 2020

15:42 Design #855: Copyright and authorship?
We should do this in an orderly manner. Many files have already been done. It would be nice to finish this for 0.99... John Abbott
15:39 Design #1242: C++14: Use type auto where appropriate
I suggest we work through the source file systematically, and note which ones we have updated to use *@auto@* (and wh... John Abbott
15:35 Bug #1473: isystem not working as expected
*Anna?* is this better for you now?
I'm pretty sure I must have checked in the change mentioned here. Do you still...
John Abbott
15:20 Design #1279 (Resolved): Tidy up code for matrix determinant
Main dispatch fn is *@ConstMatrixViewBase::myDet@* around @matrix.C:221@
The code has already been considerably c...
John Abbott
15:16 Design #1460 (Feedback): Name of TensorMat; change to KroneckerProd?
This has already been done.
@TensorMat@ is now in @obsolete.C@
Was this already in 0.99710?
John Abbott
14:57 Design #1221 (In Progress): Reconsider design for accessing headers and libs of external libraries
I wonder exactly what I had in mind when creating this issue.
The current situation is as follows: in @ExternalLib...
John Abbott
14:41 Feature #1485: Simple syntax for making a quotient ring?
As this is not urgent, I'm postponing it.
I also expect it to be trivial to implement should we decide to do so.
John Abbott
12:24 Design #710 (In Progress): Update normaliz interface?
The current version of CoCoALib compiles fine with normaliz-3.8.9.
It is no longer clear me to what exactly this i...
John Abbott
12:21 Bug #1280: Determinant & Inverse of matrix over non integral domain
This question clearly needs more work -- postponing.
John Abbott
12:20 Bug #1280: Determinant & Inverse of matrix over non integral domain
Now @det@ of a matrix over @ZZ/(6)@ work also for larger matrices, but it is horribly slow :-(... John Abbott
12:11 Feature #743: Better errors: give supplementary info about the error
I am postponing even though this is urgent. I need a quiet period to be able to think about the problem, and to find... John Abbott
12:08 Design #1414: Make class RingElemVector?
I am postponing, but also increasing priority.
I think this idea will be quite useful, but we need more time to th...
John Abbott
11:35 Design #1391: RingElems: syntax with [ and ] ?
I have changed *@RingElemList@* (in @NotBuiltin.cpkg5@).
I have added a new test @test-RingElems.cocoa5@ with the te...
John Abbott
10:22 Support #1499: factorization: allow zero as exponent?
The current interface for @FactorMultiplicity@ does not use a @factorization@.
Even if an alternative interface (lik...
John Abbott
09:53 Feature #1490 (Rejected): New function: MinusOneToPower
*REJECTED*
There is no need for *@MinusOneToPower@*; it can be achieved by *@SmallPower@* (if we want to avoid @Bi...
John Abbott

05 Oct 2020

14:39 Feature #1436 (Feedback): Flatten for a matrix
I have added a test to @test-matrix4.C@
John Abbott
14:32 Design #1500: IsDivisible in a field?
This might be a bit like computing gcd: strictly we can define it for a field, but we opted instead to give an error.... John Abbott
14:29 Design #1500 (Closed): IsDivisible in a field?
What should @IsDivisible(a,b)@ do with arguments in a field?
Currently it returns the same as @not(b = 0)@.
This ...
John Abbott
13:26 Support #1499 (In Progress): factorization: allow zero as exponent?
My current feeling is that I should simply change the error mesg, and leave the rest as is: namely, multiplicities mu... John Abbott
13:23 Support #1499 (Closed): factorization: allow zero as exponent?
A factorization object in CoCoALib contains a list factor-multiplicity pairs.
According to the doc the factors must ...
John Abbott
13:08 Feature #664: Impl small non-prime finite fields (using logs)
I'd like to have the time to finish this, but that seems very unlikely in the immediate future. :-(
Postponing (yet...
John Abbott
13:03 Design #1391: RingElems: syntax with [ and ] ?
I would like to see a minor improvement: allow whitespace before the initial *@[@* and after the final *@]@*.
It wil...
John Abbott
11:58 Design #1463 (Feedback): SmoothFactor: use FactorMultiplicity
Now I think it is better not to make *@DivideOutMaxPower@* public; we can wait until there is actual demand for it.
...
John Abbott
11:40 Feature #1490: New function: MinusOneToPower
Now I am having doubts about this function...
The normal @power@ function just calls @mpz_power@, and I fully expe...
John Abbott

03 Oct 2020

17:41 Feature #1490 (Resolved): New function: MinusOneToPower
I have implemented *@PowerOfMinusOne@* (for both @MachineInt@ and @BigInt@ exponents).
Currently they are not inline...
John Abbott
17:27 Feature #1488 (Resolved): BuiltIn Interreduce-Function
The function is called *@interreduced@*: it returns an interreduced *copy* of the original list (which is not changed... John Abbott

02 Oct 2020

21:46 Feature #1405 (Closed): New fn: interreduction
Closed because this is a duplicate of #1488 John Abbott
20:56 Feature #1436: Flatten for a matrix
I have checked in the code.
The fn names are *@FlattenByRows@* and *@FlattenByCols@*; it seems unnecessary to have @...
John Abbott
17:03 Feature #1436 (Resolved): Flatten for a matrix
I have written a first impl (in @MatrixOps-flatten.C@).
Added doc.
No tests yet.
John Abbott
20:32 Support #1497 (New): Doc for normaliz fns
We need some doc for the normaliz functions!
John Abbott
20:30 Support #1494 (Resolved): Normaliz 3.8.9
I have refreshed the script @normaliz-version.sh@ and updated @configure@ to use it and check that the version is at ... John Abbott

30 Sep 2020

14:08 Support #1494: Normaliz 3.8.9
Now it compiles for me. But I did not find any doc about which functions CoCoALib/CoCoA-5 make available when Normal... John Abbott
11:57 Support #1494 (In Progress): Normaliz 3.8.9
I have made the change, and CoCoALib now compiles, but I do not know whether it really does what people might expect.... John Abbott
11:14 Support #1494: Normaliz 3.8.9
I have changed the include directives to include only *@libnormaliz/libnormaliz.h@* which includes all Normaliz heade... John Abbott
11:09 Support #1494 (Closed): Normaliz 3.8.9
At the moment CoCoALib is *not compatible* with Normaliz 3.8.9 (recently released, late Sept 2020).
Making it comp...
John Abbott

29 Sep 2020

13:19 Feature #562: Subrings
Which sorts of subring would we like to represent?
* *(A)* in a polyring a subring generated by a subset of the inde...
John Abbott
13:12 Feature #1468 (In Progress): Adjoin indets to a poly ring
What should new indets be called? Should they be "new symbols"? Advantage is that there could be no problems with n... John Abbott
 

Also available in: Atom