Project

General

Profile

Activity

From 10 Nov 2015 to 09 Dec 2015

09 Dec 2015

22:08 CoCoALib Bug #834 (In Progress): Fix test failures (after revising MatrixForOrdering)
First bug trapped:
IsPositiveOrd wants @rk(M) == NumRows(M)@.
This function is called when making a term ordering o...
Anna Maria Bigatti
13:41 CoCoALib Bug #834: Fix test failures (after revising MatrixForOrdering)
JAA believes the root cause is the check that a grading is strictly positive when weakly positive is sufficient. John Abbott
13:40 CoCoALib Bug #834 (Closed): Fix test failures (after revising MatrixForOrdering)
The current CVS produces 3 failed CoCoALib tests:
@test-MatrixForOrdering1, test-RingWeyl1, test-SparsePolyRing1@
a...
John Abbott
17:02 CoCoALib Feature #664: Impl small non-prime finite fields (using logs)
JAA will try to implement this before xmas (2015!)
But first some Gluehwein ;-)
John Abbott
17:00 CoCoALib Feature #142: Improve threadsafety
I wonder whether @CoCoA_THREADSAFE@ is to be just a temporary measure. Presumably at some point practically all comp... John Abbott
13:09 CoCoALib Feature #142: Improve threadsafety
I spoke to Mario this morning about threadsafety in CoCoALib (also thinking about Mario's new code which has just bee... John Abbott
16:55 CoCoALib Bug #784 (In Progress): threadsafety: Scott Meyers's advice about cached values
Bearing in mind the suggestion in issue #142 about using a compile-time switch to indicate whether we want threadsafe... John Abbott
16:48 CoCoALib Feature #835: Make Mario's new code threadsafe
See the examples in issue #784; I think this should cover many cases. John Abbott
14:03 CoCoALib Feature #835 (New): Make Mario's new code threadsafe
Adapt Mario's new code so that it is threadsafe (when @CoCoA_THEADSAFE@ is set). John Abbott
13:54 CoCoALib Feature #828: MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
Currently a @MachineInt@ is converted to a @long@ using the function @AsSignedLong@ which includes a check for overfl... John Abbott

08 Dec 2015

15:06 CoCoALib Bug #833: UIBC: need include file in RingWeyl.C
The fact that UIBC needs to be visible in @RingWeyl.C@ is "unfortunate". John and Mario think this may be a symptom ... John Abbott
15:04 CoCoALib Bug #833 (New): UIBC: need include file in RingWeyl.C
With Mario's new code the file @RingWeyl.C@ must include @TmpUIBC.H@ otherwise it does not compile.
This is likely...
John Abbott
14:01 CoCoALib Design #824: Fn names: LexMat or MatLex; StdDegRevLexMat or MatStdDegRevLex etc
I have renamed the fns and changed all calls -- well, everything compiles.
Will check doc, then check-in.
John Abbott
13:03 CoCoALib Feature #665: Integrate Janet/Pommaret basis code
A simple interface is: a function which forces computation of a GBasis (without copying the result), and a function w... John Abbott
12:32 CoCoALib Feature #665: Integrate Janet/Pommaret basis code
Here is a brief "one-way discussion" about some function interfaces: I shall consider just @IsMonomial@, but it is a ... John Abbott
11:42 CoCoALib Feature #665 (In Progress): Integrate Janet/Pommaret basis code
With Mario's help we have integrated his code into (my copy of) the CoCoA sources.
Some questions have arisen whic...
John Abbott

04 Dec 2015

15:18 CoCoALib Design #824: Fn names: LexMat or MatLex; StdDegRevLexMat or MatStdDegRevLex etc
After skype with Anna: we prefer the nicer sounding names.
So I'll change the names in CoCoALib so that *@Mat@* is a ...
John Abbott
15:11 CoCoALib Bug #820: NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
John Abbott wrote:
> Perhaps @MakeTermOrd@ or @MakePositiveTermOrdering@, or something similar?
@MakeTermOrd@!
Anna Maria Bigatti
15:03 CoCoALib Bug #820: NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
I do not much like the names @CompleteToOrd@ and @NewMatCompleteOrd@.
Perhaps @MakeTermOrd@ or @MakePositiveTermO...
John Abbott
15:08 CoCoALib Design #832 (New): Generalize grading matrix
Currently matrices for gradings must be full rank and have no negative entries.
In princicple we could accept negati...
Anna Maria Bigatti

03 Dec 2015

13:18 CoCoA-5 Slug #798 (Resolved): use poly ring with many variables is too slow
The CoCoA-5 tests pass as they did before; and the speed test with 20000 indets seemed to go OK. So marking as resol... John Abbott
11:44 CoCoA-5 Slug #798: use poly ring with many variables is too slow
I didn't sleep so well this last night (ate something which didn't agree with me), so today's a good day to hack away... John Abbott
11:10 CoCoA-5 Slug #798: use poly ring with many variables is too slow
One possible approach is to devise a hash for @symbol@ then just comparing hashes will probably show quickly that the... John Abbott
10:09 CoCoALib Feature #664: Impl small non-prime finite fields (using logs)
Given the cost of converting between a "compressed" format and a "vector" format, it is probably better to represent ... John Abbott

02 Dec 2015

18:24 CoCoALib Feature #826: Sparse matrices
I had a quick look on Wikipedia for information about sparse matrices. There they distinguished between representati... John Abbott
17:17 CoCoALib Feature #664: Impl small non-prime finite fields (using logs)
A very simple speed test: compute the order of the field/group generator by naive repeated multiplication.
Prototype ...
John Abbott
15:50 CoCoALib Feature #664: Impl small non-prime finite fields (using logs)
Here are some options for implementing extensions of (prime) finite fields:
* *(A)* use a CoCoALib quotient ring
* ...
John Abbott
15:13 CoCoALib Feature #664: Impl small non-prime finite fields (using logs)
I have just tried a simplistic speed test (on the "new" computer here in Kassel). The aim was to see how costly it i... John Abbott
15:08 CoCoALib Feature #664: Impl small non-prime finite fields (using logs)
Certainly an explicit quotient ring which is a finite field will be isomorphic to one of "my" finite fields. It migh... John Abbott
15:01 CoCoALib Feature #797: SmallFpImpl: make it faster
Some (more or less) obvious comments:
* the advantage of having log/exp tables is that some computations can be noti...
John Abbott
14:55 CoCoALib Bug #804 (Feedback): ZeroMat and IdentityMat should produce a matrix not a ConstMatrixView
@IdentityMat@ and @ZeroMat@ are now in @matrix.H@ -- Anna's suggestion.
The args are now @MachineInt@ instead of jus...
John Abbott

01 Dec 2015

22:39 CoCoALib Bug #831: primary.cocoa5
I did remember doing something like this.
This was because of a problem in cocoa 4 about 0 in the first row.
I th...
Anna Maria Bigatti
19:00 CoCoALib Bug #831: primary.cocoa5
I have put this under CoCoALib even though the example comes from the C5 tests, because I think that te real problem ... John Abbott
18:59 CoCoALib Bug #831 (Closed): primary.cocoa5
The C5 test @primary.cocoa5@ fails because it calls @CompleteToOrd@ on the following matrix:... John Abbott
15:39 CoCoALib Bug #814: PPOrdering: matrix ordering, what rings are allowed.
Refering to comment 4: I have now removed the signature with 3 args (after speaking to Anna about it).
John Abbott
15:34 CoCoALib Bug #820: NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
I shall shortly try to implement the semantics given in comment 4 above.
After speaking to Anna, the idea is that ...
John Abbott
15:29 CoCoALib Feature #828: MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
I'm mostly interested in a solution which will make most code easy to read (without significant run-time overhead).
...
John Abbott
15:26 CoCoALib Feature #828: MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
I've just spoken to Mario about this issue (even though he wasn't on the watchers list).
He made some suggestions:
*...
John Abbott
11:28 CoCoALib Feature #828: MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
It might make sense to allow other types of "condition":
@RangeCheck(arg, PositiveLong)@ or perhaps simply @RangeCh...
John Abbott
11:25 CoCoALib Feature #828: MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
Mmm, I guess Scott Meyers would not be impressed by a fn @IsInRange@ which takes 3 integer args -- one could guess th... John Abbott
14:31 CoCoALib Design #822: Should ElimMat return a ConstMatrix
Checked in the updated code.
Still need: decide fn names, write proper doc!
John Abbott
14:29 CoCoALib Design #822: Should ElimMat return a ConstMatrix
The documentation for @ElimMat@ and @HomogElimMat@ is largely missing; and the names given in the doc are different f... John Abbott
14:19 CoCoALib Design #822: Should ElimMat return a ConstMatrix
I suppose strictly the fns should be called @ElimOrdMat@ and @HomogElimOrdMat@.
Is that a good idea or a not-so-good...
John Abbott
14:09 CoCoALib Design #822: Should ElimMat return a ConstMatrix
Anna suggested change the arg order for @ElimMat@ and @HomogElimMat@ so that the list of indets to elim is the first ... John Abbott
14:04 CoCoALib Design #829: PPOrderingCtor: name of mem fn which actually constructs?
There are two ways to create a "lex" ordering for @N@ indets:
@NewLexOrdering(N)@ or @lex(N)@.
I wonder whether...
John Abbott
13:55 CoCoALib Design #829 (Resolved): PPOrderingCtor: name of mem fn which actually constructs?
I've made the change (plus some very minor cleaning), incl changing the arg names!
Also made the analogous chang...
John Abbott
13:14 CoCoALib Bug #830 (Resolved): Use MachineInt instead of long for params to ZeroMat, IdentityMat, MatByCols, MatByRows
Implemented. No need to change doc (I believe).
A few minor consequential changes.
Will check in shortly.
John Abbott
11:08 CoCoALib Bug #830: Use MachineInt instead of long for params to ZeroMat, IdentityMat, MatByCols, MatByRows
The same applies to @SetEntry@, @SwapRows@, @SwapCols@, @DeleteRow@, @DeleteCol@.
John Abbott
11:07 CoCoALib Bug #830 (Closed): Use MachineInt instead of long for params to ZeroMat, IdentityMat, MatByCols, MatByRows
The pseudo-ctors @ZeroMat@, @IdentityMat@, @MatByCols@, @MatByRows@ have params of type @long@; these should be of ty... John Abbott
11:01 CoCoALib Design #806 (Resolved): AssignZero for matrix
Since the fn @AssignZero@ (for matrices) was no longer used anywhere, and especially since its semantics were rather ... John Abbott
10:41 CoCoALib Design #824: Fn names: LexMat or MatLex; StdDegRevLexMat or MatStdDegRevLex etc
Here are some other names.
With *SUFFIX* @Mat@:
@ZeroMat@, @IdentityMat@, @BlockMat@, @DiagMat@, @ColMat@, @RowMa...
John Abbott

30 Nov 2015

18:54 CoCoALib Feature #828: MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
@IsGreaterThan@?
Or just overwrite @operator>@?
Anna Maria Bigatti
18:50 CoCoALib Feature #828: MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
Ok, for the Check function (with the function name).
But I 'd rather have (n, lo, hi)... Am I too late to notice ...
Anna Maria Bigatti
18:12 CoCoALib Feature #828: MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
In prima battuta farei solo @MaxLong@ perche' voglio "scoraggiare" l'uso di @unsigned long@.
Non ti viene i mente ...
John Abbott
17:56 CoCoALib Feature #828: MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
John Abbott wrote:
> Perhaps the existing @IsInRange@ is not too far from what I want; the real hitch is that an upp...
Anna Maria Bigatti
17:42 CoCoALib Feature #828 (In Progress): MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
Perhaps the existing @IsInRange@ is not too far from what I want; the real hitch is that an upperbound has to be spec... John Abbott
17:38 CoCoALib Feature #828 (In Progress): MachineInt: function for checking that value is greater than some lower limit (and below MAXLONG)
Many fns accepting a @MachineInt@ actually want a positive (or non-negative) value.
There is a fn called @IsInRang...
John Abbott
18:27 CoCoALib Design #829: PPOrderingCtor: name of mem fn which actually constructs?
Ok, good for operator()!
Still I 'd call the variable @OrdCtor@ ;-)
Anna Maria Bigatti
18:23 CoCoALib Design #829: PPOrderingCtor: name of mem fn which actually constructs?
Yes, it should be possible to write @lex(NumIndets)@, but normally it would be enough to write just @lex@ and let the... John Abbott
18:06 CoCoALib Design #829: PPOrderingCtor: name of mem fn which actually constructs?
Would it be possible to write @PPOrdering O = lex(NumIndets);@?
If not, I fear it might be more confusing.
In fact...
Anna Maria Bigatti
17:52 CoCoALib Design #829: PPOrderingCtor: name of mem fn which actually constructs?
We could also have both, but I do not usually like to offer two ways of achieving the same thing... a user might be p... John Abbott
17:48 CoCoALib Design #829 (Closed): PPOrderingCtor: name of mem fn which actually constructs?
Currently @PPOrderingCtor@ has a mem fn called @myCtor@ which accepts an integer arg and returns the ordering for tha... John Abbott
14:54 CoCoALib Design #819: GradingMat: does anyone need it?
John Abbott wrote:
> @GradingMat@ is used in @hp.cpkg5@ but just for testing whether the grading is "standard"; Ann...
Anna Maria Bigatti
11:40 CoCoALib Bug #821: IsTermOrdering
John Abbott wrote:
> Does the 0x0 matrix define a term-ordering?
> Do we want to allow users to make a term-orderin...
Anna Maria Bigatti
11:20 CoCoALib Bug #821: IsTermOrdering
Does the 0x0 matrix define a term-ordering?
Do we want to allow users to make a term-ordering on 0 indets?
JAA think...
John Abbott

27 Nov 2015

17:47 CoCoALib Feature #802: DivMask: extend interface?
Maybe I can do this next week? John Abbott
17:41 CoCoALib Feature #817: GenRepr in CoCoALib?
Would it be possible to have this by summer 2016?
John Abbott
17:03 CoCoALib Bug #804: ZeroMat and IdentityMat should produce a matrix not a ConstMatrixView
Just spoken to Anna (via Skype) about the idea of non specifying the ring.
It seems safer for @IdentityMat@ and @Z...
John Abbott
16:27 CoCoALib Design #819: GradingMat: does anyone need it?
@GradingMat@ is used in @hp.cpkg5@ but just for testing whether the grading is "standard"; Anna can you fix this?
John Abbott
16:06 CoCoALib Design #809: FastCmp for degree -- useful?
I suggest that you try with @degree@ objects containing just a single component, that way the saving as a percentage ... John Abbott
13:15 CoCoALib Design #822: Should ElimMat return a ConstMatrix
I note that @test-RingWeyl1.C@ tries to create a an elim mat for no indets. Why? Is that really what it should do?
John Abbott
13:07 CoCoALib Design #822 (In Progress): Should ElimMat return a ConstMatrix
What should the @ElimMat@ function do in these two limit cases?
* elim no indets
* elim all indets
Note that the...
John Abbott

26 Nov 2015

19:10 CoCoALib Design #827: NewPositiveMat also for matrices over QQ? Also NewIntegerOrdMat. (now called MakeTermOrd)
If there truly is a need to convert a matrix of rationals into a matrix of integers defining the same term ordering, ... John Abbott
19:04 CoCoALib Design #827: NewPositiveMat also for matrices over QQ? Also NewIntegerOrdMat. (now called MakeTermOrd)
Also converting a (non-neg?) matrix of rationals into a matrix of integers defining an equivalent ordering allows for... John Abbott
18:53 CoCoALib Design #827: NewPositiveMat also for matrices over QQ? Also NewIntegerOrdMat. (now called MakeTermOrd)
Perhaps the first question should be: do people who build order matrices really start from matrices with rational (no... John Abbott
18:45 CoCoALib Design #827 (Closed): NewPositiveMat also for matrices over QQ? Also NewIntegerOrdMat. (now called MakeTermOrd)
In @test-MatrixForOrdering1.C@ the function @NewPositiveMat@ is called with a matrix containing rational (non-integer... John Abbott
18:40 CoCoALib Bug #820: NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
I am pretty convinced that @ZZ@ is the right ring for order matrices in CoCoALib.
That said, I am making sure that...
John Abbott
18:09 CoCoALib Bug #820: NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
John Abbott wrote:
> The CoCoALib name is @NewMatCompleteToOrd@ while in CoCoA-5 it is @CompleteToOrd@.
> Is this w...
Anna Maria Bigatti
18:06 CoCoALib Bug #820: NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
John Abbott wrote:
> I suggest that the semantics of @NewMatCompleteToOrd@ be the following:
yes, I agree.
I'm j...
Anna Maria Bigatti
15:07 CoCoALib Bug #820: NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
I suggest that the semantics of @NewMatCompleteToOrd@ be the following:
* expect as input a matrix @M@ (over ring of...
John Abbott
14:58 CoCoALib Bug #820: NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
The CoCoALib name is @NewMatCompleteToOrd@ while in CoCoA-5 it is @CompleteToOrd@.
Is this what we want?
John Abbott
14:53 CoCoALib Bug #820: NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
What exactly should @NewMatCompleteOrd@ do?
What does its expect as input? And what does it give as output? When d...
John Abbott
14:14 CoCoALib Bug #820 (In Progress): NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
I have hacked the code: assuming all matrices are over @ZZ@ makes the code a lot simpler. I have added a fn which cr... John Abbott
18:20 CoCoALib Support #810 (Feedback): ILogBase: change name?
Putting into Feedback now that Anna is happy with the C5 manual entry.
I'll add @ILogBase@ to @obsolescent.cpkg5@.
John Abbott
18:10 CoCoALib Support #810 (In Progress): ILogBase: change name?
John Abbott wrote:
> I'm still happy with the single combined page for @FloorLog2@, @FloorLog10@, and @FloorLogBase@...
Anna Maria Bigatti
18:17 CoCoALib Design #809: FastCmp for degree -- useful?
I think it is useful. I'll investigate and document it Anna Maria Bigatti
18:17 CoCoALib Design #806: AssignZero for matrix
John Abbott wrote:
> In some ways it would be nice to have a default impl of @AssignZero@; presumably as the mem fn ...
Anna Maria Bigatti
18:04 CoCoALib Design #825: IsPositiveGrading -- really need 2 signatures?
John Abbott wrote:
> Just to clarify the semantics:
> * @IsPositiveGrading@ accepts a matrix of integers (error if ...
Lorenzo Robbiano
17:47 CoCoALib Design #825: IsPositiveGrading -- really need 2 signatures?
Just to clarify the semantics:
* @IsPositiveGrading@ accepts a matrix of integers (error if entries are not integers...
John Abbott
17:01 CoCoALib Design #825: IsPositiveGrading -- really need 2 signatures?
John Abbott wrote:
> What is the difference between @IsTermOrdering@ and @IsPositiveGrading@?
>
> One allows a ze...
Lorenzo Robbiano
16:38 CoCoALib Design #825 (In Progress): IsPositiveGrading -- really need 2 signatures?
What is the difference between @IsTermOrdering@ and @IsPositiveGrading@?
One allows a zero-column, the other not?
John Abbott
14:32 CoCoALib Design #825 (Closed): IsPositiveGrading -- really need 2 signatures?
The fn @IsPositiveGrading@ has 2 signatures:
@IsPositiveGrading(M)@ and
@IsPositiveGrading(M,GrDim)@
Do we reall...
John Abbott
15:27 CoCoALib Feature #826 (New): Sparse matrices
Mario now thinks he wants sparse matrices.
We need a clear description of the requirements.
John Abbott
14:21 CoCoALib Design #824 (In Progress): Fn names: LexMat or MatLex; StdDegRevLexMat or MatStdDegRevLex etc
JAA thinks that names such as @StdDegRevLexMat@ read more easily than @MatStdDegRevLex@, but the names @MatXYZ@ all a... John Abbott
14:18 CoCoALib Design #824 (Closed): Fn names: LexMat or MatLex; StdDegRevLexMat or MatStdDegRevLex etc
There is an incompatibility between the names in CoCoALib and in CoCoA-5 for the pseudo-ctors for matrices for orderi... John Abbott
14:02 CoCoALib Bug #821 (In Progress): IsTermOrdering
Following the principle of "no nasty surprises", I think that @IsTermOrdering@ should do a complete check (incl. corr... John Abbott
13:30 CoCoALib Design #602 (In Progress): OrdMat: should it be a reference to a MatrixView in all PPOrderings?
JAA is now convinced that having @OrdMat@ return a "reference" (namely a @ConstMatrixView@) is correct: it was relati... John Abbott
13:14 CoCoALib Bug #814: PPOrdering: matrix ordering, what rings are allowed.
Could it be useful to have a pseudo-ctor which accepts just the "grading matrix"? The pseudo-ctor would then "auto-c... John Abbott
13:08 CoCoALib Bug #814: PPOrdering: matrix ordering, what rings are allowed.
Now I wonder why there is the first version of the pseudo-ctor:... John Abbott
11:20 CoCoA-5 Feature #823: NewPolyRing with weights -- better interface?
An alternative would be to accept a @record@ as an argument, but this does make the input longer: for instance... John Abbott
11:16 CoCoA-5 Feature #823 (Closed): NewPolyRing with weights -- better interface?
According to the C5 manual, if we want to create a new poly ring with given weights then we must supply a complete or... John Abbott
11:10 CoCoA-5 Feature #673: Error message: I was expecting...
The original report did not contain an example of input which produces the unhelpful error message. I think the foll... John Abbott

25 Nov 2015

17:06 CoCoALib Design #822: Should ElimMat return a ConstMatrix
I really feel I have opened Pandora's box :-(
I'll keep plodding on... this is all very frustrating :-(
John Abbott
17:05 CoCoALib Design #822 (Closed): Should ElimMat return a ConstMatrix
In my new implementation the fixed order matrices return @ConstMatrix@.
At the moment @ElimMat@ returns a @matrix@; ...
John Abbott
16:46 CoCoALib Bug #821: IsTermOrdering
These matrices for ordering really seem to be a minefield :-(
Who uses @NewIntegerOrdMat@?
Unfortunately I need...
John Abbott
16:43 CoCoALib Bug #821 (Closed): IsTermOrdering
@MatrixForOrdering@ offers a fn called @IsTermOrdering@.
The doc says its tests whether the matrix defines a term or...
John Abbott
15:45 CoCoALib Bug #820 (Closed): NewMatMinimize, NewMatCompleteOrd - a godforsaken mess!
JAA really thinks that order matrices should be over @ZZ@ rather than @QQ@ since we insist that the entries be intege... John Abbott
14:32 CoCoALib Bug #814: PPOrdering: matrix ordering, what rings are allowed.
There are 2 pseudo-ctors for @NewMatrixOrdering@:... John Abbott
14:30 CoCoALib Bug #814: PPOrdering: matrix ordering, what rings are allowed.
I have added the check to the ctor for @MatrixOrderingImpl@, and also added a new test @test-bug5.C@. I'll check the... John Abbott
13:37 CoCoALib Bug #814 (In Progress): PPOrdering: matrix ordering, what rings are allowed.
If the input matrix does not have integer entries then the pseudo-ctor should give error (it may delegate the task to... John Abbott
13:34 CoCoALib Bug #814: PPOrdering: matrix ordering, what rings are allowed.
The following example compiles and runs, and prints out a matrix with rational entries.... John Abbott
14:14 CoCoALib Design #819 (In Progress): GradingMat: does anyone need it?
I am getting ready to check in the changes I have made, and a few oversights are coming up :-(
Now each concrete @...
John Abbott
14:10 CoCoALib Design #819 (Closed): GradingMat: does anyone need it?
The function @GradingMat@ bothers me a bit. Is it actually useful?
(yes)
Can it be removed?
(no)
John Abbott

24 Nov 2015

22:07 CoCoALib Bug #804: ZeroMat and IdentityMat should produce a matrix not a ConstMatrixView
I have another doubt/question.
The pseudo-ctors for matrices for orderings do not accept a ring as an arg; the mat...
John Abbott
22:05 CoCoALib Bug #804: ZeroMat and IdentityMat should produce a matrix not a ConstMatrixView
I am unsure where the put the new defns of @ZeroMat@ and @IdentityMat@.
They should not be in @MatrixView.C@ since...
John Abbott
22:00 CoCoALib Bug #804: ZeroMat and IdentityMat should produce a matrix not a ConstMatrixView
I now think that the old code was "safe" (_i.e._ no risk of slicing etc). However it was definitely confusing that t... John Abbott
21:55 CoCoALib Design #805: New type for "constant" matrices?
I have found a reasonable way to circumvent the problem of passing a @ZeroMat@ (of type @ConstMatrix@) to @BlockMat2x... John Abbott
19:04 CoCoALib Feature #802: DivMask: extend interface?
I think we should implement *(B)* with the "LCM" meaning from comment 4.
I can do this after checking in the curre...
John Abbott
18:16 CoCoALib Feature #812: PPMonoid pseudo-ctor without explicit ordering
John Abbott wrote:
> A (minor) disadvantage of having to pass in a vector of @symbol@ when creating a @PPMonoid@ is ...
Anna Maria Bigatti
15:30 CoCoALib Feature #812: PPMonoid pseudo-ctor without explicit ordering
A (minor) disadvantage of having to pass in a vector of @symbol@ when creating a @PPMonoid@ is that the monoid is obl... John Abbott
17:28 CoCoALib Feature #800: PPMonoidSparse: impl of sparse PPs
Should the @NewPolyRing@ fns automatically choose @PPMonoidSparse@ if there are "lots of" indets? If so, how many ar... John Abbott
17:26 CoCoALib Feature #800: PPMonoidSparse: impl of sparse PPs
Cleaned the @PPMonoidSparse@ code; there were still a couple of incomplete fns.
John Abbott
15:15 CoCoALib Feature #800: PPMonoidSparse: impl of sparse PPs
I have a first (complete) version which seems to work OK -- just simple tests.
I even managed to create a sparse pol...
John Abbott
15:13 CoCoALib Design #816: Rename isqrt to FloorSqrt (following ilog renaming to FloorLog)
What is the difference between @BackwardCompatible.cpkg5@ and @obsolescent.cpkg5@?
John Abbott
15:04 CoCoALib Design #816: Rename isqrt to FloorSqrt (following ilog renaming to FloorLog)
Anna, do you mean "yes" to both proposals?
John Abbott
14:54 CoCoALib Design #816: Rename isqrt to FloorSqrt (following ilog renaming to FloorLog)
John Abbott wrote:
> Should there be a function @isqrt@ in the obsolescent package?
> I note that @Isqrt@ is in @Ba...
Anna Maria Bigatti
14:14 CoCoALib Design #816: Rename isqrt to FloorSqrt (following ilog renaming to FloorLog)
Should there be a function @isqrt@ in the obsolescent package?
I note that @Isqrt@ is in @BackwardCompatible.cpkg5@;...
John Abbott
13:49 CoCoALib Design #816: Rename isqrt to FloorSqrt (following ilog renaming to FloorLog)
I have now checked in the changes. Anna, could you verify? Thanks! John Abbott
13:40 CoCoALib Design #816 (Feedback): Rename isqrt to FloorSqrt (following ilog renaming to FloorLog)
Not too hard. Renamed @isqrt@ to @FloorSqrt@ (in both CoCoALib and CoCoA-5); changed tests, examples, doc.
Status...
John Abbott
14:30 CoCoALib Support #810: ILogBase: change name?
I'm still happy with the single combined page for @FloorLog2@, @FloorLog10@, and @FloorLogBase@. But if you can conv... John Abbott
14:22 CoCoALib Design #815: GlobalManager: Imminent disaster should be a proper error
The message "Imminent disaster" is entertaining but not so useful to the user (especially if the message has not been... John Abbott
10:11 CoCoALib Bug #818: F5 with 3 args?
I awoke this morning with a plausible explanation of the problems with @test-F5@.
The problem is that the dtor for...
John Abbott

23 Nov 2015

22:18 CoCoALib Bug #818: F5 with 3 args?
Arri's life is getting shorter by the minute -- grrr!
There is a 3 arg definition in @TmpF5Mat.C:867@, but the 3rd a...
John Abbott
21:57 CoCoALib Bug #818: F5 with 3 args?
With 3rd formal arg commented out, it compiles and runs fine, but produces a different answer from before... :-/ At ... John Abbott
21:34 CoCoALib Bug #818 (In Progress): F5 with 3 args?
So why did this problem not appear earlier? And why did it appear now?
John Abbott
21:31 CoCoALib Bug #818: F5 with 3 args?
An easy workaround is just to comment out the 3rd arg in the declaration.
Since no one ever calls it with a 3rd arg ...
John Abbott
21:28 CoCoALib Bug #818: F5 with 3 args?
If Arri comes my way I'll shorten his life by at least 2 hours -- the time I've wasted tracking this bug down. Grrr!... John Abbott
21:26 CoCoALib Bug #818 (In Progress): F5 with 3 args?
In @TmpF5.H@ two fns called @F5@ are declared: one (inline) with 2 args, and one with 3 args (3rd arg has a default v... John Abbott
19:25 CoCoALib Support #810 (Resolved): ILogBase: change name?
Checked in the renaming @ILogBase@ to @FloorLogBase@.
Currently the C5 manual page is single; it's what I'd done, an...
John Abbott
15:03 CoCoALib Support #810: ILogBase: change name?
Same should be for @isqrt@! @FloorSqRt@? @FloorSqrt@?
Anna Maria Bigatti
14:56 CoCoALib Support #810: ILogBase: change name?
John Abbott wrote:
> Should the CoCoA-5 manual pages for @FloorLog2@ and @FloorLog10@ be separate from that for @Flo...
Anna Maria Bigatti
14:37 CoCoALib Support #810 (In Progress): ILogBase: change name?
I've almost finished making the changes. I think @FloorLog2@ and @FloorLog10@ do improve readability of the code whe... John Abbott
11:19 CoCoALib Support #810: ILogBase: change name?
John Abbott wrote:
> Personally I think that *@FloorLogBase@* is too long. Anyway, the fn should expect two args (o...
Anna Maria Bigatti
19:05 CoCoALib Feature #817 (New): GenRepr in CoCoALib?
At the Dagstuhl meeting last week some people were interested in having @GenRepr@ available in CoCoALib. I said it w... John Abbott
15:09 CoCoALib Design #816 (Closed): Rename isqrt to FloorSqrt (following ilog renaming to FloorLog)
Rename isqrt to FloorSqrt (following ilog renaming to FloorLog) John Abbott
14:48 CoCoALib Feature #812: PPMonoid pseudo-ctor without explicit ordering
John Abbott wrote:
> What about @NewPPMonoid("x", 10)@ as a shorthand for @NewPPMonoid(SymbolRange("x",0,10-1), StdD...
Anna Maria Bigatti
13:19 CoCoALib Feature #812: PPMonoid pseudo-ctor without explicit ordering
What about @NewPPMonoid("x", 10)@ as a shorthand for @NewPPMonoid(SymbolRange("x",0,10-1), StdDegRevLex)@?
Or should...
John Abbott
10:50 CoCoALib Feature #812: PPMonoid pseudo-ctor without explicit ordering
John Abbott wrote:
> We could slightly modify Mario's request:
> have new pseudo-ctors which do not need the orderi...
Anna Maria Bigatti
10:35 CoCoALib Feature #812: PPMonoid pseudo-ctor without explicit ordering
I note that in issue #320 the main reason for rejection is that J and A disagreed about what symbol names should be u... John Abbott
10:29 CoCoALib Feature #812 (New): PPMonoid pseudo-ctor without explicit ordering
Mario asked about having an easy way to create a @PPMonoid@ without specifying explicitly the ordering (or even the n... John Abbott
14:40 CoCoALib Design #815: GlobalManager: Imminent disaster should be a proper error
I have put the lines into a separate (static member) function. What should it be called?
Currently I have called ...
John Abbott
14:04 CoCoALib Design #815 (In Progress): GlobalManager: Imminent disaster should be a proper error
The real problem with @terminate@ is that it gives the program no chance to handle the situation; in fact the only "b... John Abbott
13:57 CoCoALib Design #815: GlobalManager: Imminent disaster should be a proper error
The real problem is that the check for still-existing @RingElem@ values occurs inside the dtor for @GlobalManager@, a... John Abbott
13:25 CoCoALib Design #815: GlobalManager: Imminent disaster should be a proper error
I've just made some big changes to matrices for orderings: everything compiles, but @test-F5@ produces "imminent disa... John Abbott
13:23 CoCoALib Design #815 (Closed): GlobalManager: Imminent disaster should be a proper error
During destruction @GlobalManager@ checks the ref counts of @RingQQ@ and @RingZZ@; if they are too large then "Immine... John Abbott
13:08 CoCoALib Design #311: XelMat, StdDegRevLexMat, ... should be MatrixView
I notice only now that these pseudo-ctors take only the dimension as arg; *what should the ring of the matrix be?*
...
John Abbott
11:49 CoCoALib Bug #814 (Closed): PPOrdering: matrix ordering, what rings are allowed.
I think that @NewMatrixOrdering@ does not check the ring of the matrix handed to it.
Check if I am right; anyway, ...
John Abbott
11:39 CoCoALib Feature #813 (Feedback): Implement "elim" in CoCoALib
In CoCoALib we have member function @myElim@.
Choose and implement the "proper" function.
Anna Maria Bigatti
11:13 CoCoALib Feature #811: Add new fn SimplestBinaryRatBetween
John Abbott wrote:
> Checked in. Should be OK, but I do have some other files "pending", so it is possible I missed...
Anna Maria Bigatti
10:41 CoCoALib Design #786: MemPool: review min and max loaf sizes
John Abbott wrote:
> Did you also try tests which create lots of ring elements? Maybe a non-trivial GBasis?
I tr...
Anna Maria Bigatti
10:23 CoCoALib Support #774: Rename file PPMonoidEvZZ
We could simply merge the code in @PPMonoidEvZZ@ into @PPMonoidEv@.
What do you think?
Are they similar enough th...
John Abbott

21 Nov 2015

20:19 CoCoALib Feature #811: Add new fn SimplestBinaryRatBetween
Checked in. Should be OK, but I do have some other files "pending", so it is possible I missed something -- can you ... John Abbott
14:49 CoCoALib Feature #811 (Feedback): Add new fn SimplestBinaryRatBetween
Implemented; documented (also C5); added test (NumTheory3)
John Abbott
14:48 CoCoALib Feature #811 (Closed): Add new fn SimplestBinaryRatBetween
In some applications it is helpful to use "binary rationals" (denom is a power of 2).
Add a new fn *@SimplestBinaryR...
John Abbott
15:09 CoCoALib Feature #440: Port RealRoots to C++
After the SC^2 meeting it is clear that several people would like @RealRoots@ to be ported into C++. If the project ... John Abbott
11:27 CoCoALib Design #786 (In Progress): MemPool: review min and max loaf sizes
Did you also try tests which create lots of ring elements? Maybe a non-trivial GBasis? John Abbott

20 Nov 2015

17:26 CoCoALib Design #786: MemPool: review min and max loaf sizes
John Abbott wrote:
> Change @MinLoafBytes@ to 4*1024. Maybe you could also try 1024.
> Change @MaxLoafBytes@ to 64...
Anna Maria Bigatti
15:01 CoCoALib Design #786: MemPool: review min and max loaf sizes
John Abbott wrote:
> Are the problems my fault? Or some problem with the interface of @MemPool@? :-(
no, my pro...
Anna Maria Bigatti
14:38 CoCoALib Design #786: MemPool: review min and max loaf sizes
Are the problems my fault? Or some problem with the interface of @MemPool@? :-(
John Abbott
14:36 CoCoALib Support #810: ILogBase: change name?
Personally I think that *@FloorLogBase@* is too long. Anyway, the fn should expect two args (of which the second is ... John Abbott
14:34 CoCoALib Support #810 (Closed): ILogBase: change name?
I was wondering about using a better name for @ILogbase@.
I used it recently in a new function, and couldn't remembe...
John Abbott

19 Nov 2015

15:06 CoCoALib Design #786: MemPool: review min and max loaf sizes
about to try..
(some compilation problems...)
Anna Maria Bigatti
06:50 CoCoALib Design #809 (New): FastCmp for degree -- useful?
Is the function @FastCmp@ for @degree@ actually useful?
Check whether it is perceptibly faster than @cmp@; if so, ...
John Abbott

18 Nov 2015

23:29 CoCoALib Bug #808: Alg Extn by non-zero dim ideal
The following variant works OK:... John Abbott
23:28 CoCoALib Bug #808 (New): Alg Extn by non-zero dim ideal
The following produces an NYI error for the reciprocal:... John Abbott

14 Nov 2015

22:14 CoCoALib Design #592: Review design of ConstMatrixView
I've still got problems with the new (internal) design for @BlockMat2x2@. While investigating I was quite surprised ... John Abbott
20:34 CoCoALib Bug #807: DiagMat: mySetEntry checks the entry is writable only if debugging active
As a general rule we say that mem fns do not perform arg sanity checks because such checks are the responsibility of ... John Abbott
20:28 CoCoALib Bug #807 (Rejected): DiagMat: mySetEntry checks the entry is writable only if debugging active
The mem fn @mySetEntry@ for @DiagMat@ checks that the indices indicate a diagonal element only if @CoCoA_DEBUG@ has b... John Abbott
20:24 CoCoALib Design #806: AssignZero for matrix
In some ways it would be nice to have a default impl of @AssignZero@; presumably as the mem fn @MatrixView::myAssignZ... John Abbott
20:16 CoCoALib Design #806 (In Progress): AssignZero for matrix
Before spending too much time deciding the exact semantics, we should also decide if the procedure is even useful -- ... John Abbott
20:08 CoCoALib Design #806 (Closed): AssignZero for matrix
There is a procedure @AssignZero@ for a matrix; it calls the mem fn @myAssignZero@.
What should these fns do?
John Abbott
14:50 CoCoALib Design #311: XelMat, StdDegRevLexMat, ... should be MatrixView
I've implemented the other defn of @StdDegRevLexMat@; we can decide later which impl will remain "active".
John Abbott

13 Nov 2015

14:51 CoCoALib Design #805: New type for "constant" matrices?
As predicted in comment 1, there is a problem with @BlockMat2x2@. Not yet sure how to deal with it :-/
John Abbott
13:45 CoCoALib Design #805: New type for "constant" matrices?
In principle the concrete classes for @IdentityMat@ and so on could derive from @matrix@ but then they have to impl l... John Abbott
11:19 CoCoALib Design #805 (In Progress): New type for "constant" matrices?
I believe that @ConstMatrixView@ is not the right type, because a matrix "view" is a way of looking at another object... John Abbott
10:49 CoCoALib Design #805 (Closed): New type for "constant" matrices?
I believe that implementing @IdentityMat@, @StdDegRevLexMat@ and so on as objects of type @ConstMatrixView@ is not co... John Abbott
13:01 CoCoALib Design #311: XelMat, StdDegRevLexMat, ... should be MatrixView
What do we want the @StdDegRevLexMat@ to be?
There are two obvious candidiates: here are 3x3 instances...
John Abbott

12 Nov 2015

14:51 CoCoALib Bug #804 (In Progress): ZeroMat and IdentityMat should produce a matrix not a ConstMatrixView
Rather to my surprise I have failed to create an example where @ZeroMat@ (or @IdentityMat@) misbehaves -- no idea why... John Abbott
14:22 CoCoALib Bug #804 (Closed): ZeroMat and IdentityMat should produce a matrix not a ConstMatrixView
I think that @ZeroMat@ and @IdentityMat@ should produce a result of type @matrix@ and not one of type @ConstMatrixVie... John Abbott

11 Nov 2015

18:19 CoCoALib Design #311: XelMat, StdDegRevLexMat, ... should be MatrixView
After some hasty cut-and-paste work I have some code which compiles :-)
I'm not so foolish as to try running it... t...
John Abbott
17:30 CoCoALib Design #311: XelMat, StdDegRevLexMat, ... should be MatrixView
JAA is convinced that this is a good idea.
To get it finished quickly I shall ignore issue #592; it probably shoul...
John Abbott
16:35 CoCoALib Design #602: OrdMat: should it be a reference to a MatrixView in all PPOrderings?
JAA now thinks that there is an example (see issue #803) where it could be useful to have the order matrix(view) quic... John Abbott
13:35 CoCoALib Design #602: OrdMat: should it be a reference to a MatrixView in all PPOrderings?
How important is it that @OrdMat@ is fast? Is there a good example where we would want to compute repeatedly the @Or... John Abbott
14:19 CoCoALib Feature #803 (In Progress): PPOrdering: use it to compute WDeg?
The main task I want to simplify is that of implementing @myWDeg@, @myCmpWDeg@ and @myCmpWDegPartial@ for @PPMonoidSp... John Abbott
13:43 CoCoALib Feature #803 (In Progress): PPOrdering: use it to compute WDeg?
Should objects of type @PPOrdering@ be able to compute WDeg vectors and/or individual components of WDeg vectors?
...
John Abbott
13:47 CoCoALib Slug #799: vector of "indets" in each PPMonoid?
I have lowered the priority of this issue because it will take some time to complete, and the resulting improvement w... John Abbott
10:01 CoCoALib Slug #799 (In Progress): vector of "indets" in each PPMonoid?
As far as I can tell @PPMonoidBase::myIndets@ is used only once, in the (inefficient) fn @PPMonoidBase::mySymbolValue... John Abbott
12:15 CoCoALib Feature #802: DivMask: extend interface?
John Abbott wrote:
> I think updating would mean replacing the div-mask with that for the LCM of the old value and t...
Anna Maria Bigatti

10 Nov 2015

18:39 CoCoALib Feature #800: PPMonoidSparse: impl of sparse PPs
John Abbott wrote:
> Might it be important to store the @StdDeg@ along with the list of (index, exp) pairs? If it i...
Anna Maria Bigatti
16:45 CoCoALib Feature #800: PPMonoidSparse: impl of sparse PPs
For @Wdeg@ I am inclined to compute it "on the fly" every time it is needed. If someone reports poor execution speed... John Abbott
15:16 CoCoALib Feature #800: PPMonoidSparse: impl of sparse PPs
The currently missing functions are: @myCmp@, @myWDeg@ and @myCmpWDeg@ (& a partial version). Also @myComputeDivMask... John Abbott
14:49 CoCoALib Feature #800 (In Progress): PPMonoidSparse: impl of sparse PPs
There was a very incomplete impl in @PPMonoidSparse.C@, which was already recognized by @Makefile@.
Apparently the...
John Abbott
18:38 CoCoALib Feature #802: DivMask: extend interface?
I think updating would mean replacing the div-mask with that for the LCM of the old value and the new indet-power. T... John Abbott
18:33 CoCoALib Feature #802: DivMask: extend interface?
John Abbott wrote:
> If we do extend the interface of @DivMask@ to accommodate the sparse repr, what should the exte...
Anna Maria Bigatti
16:15 CoCoALib Feature #802: DivMask: extend interface?
If we do extend the interface of @DivMask@ to accommodate the sparse repr, what should the extended interface expect:... John Abbott
16:09 CoCoALib Feature #802 (In Progress): DivMask: extend interface?
Currently the only way to make a (non-trivial) @DivMask@ is to use the function @myAssignFromExpv@ which clearly suit... John Abbott
15:57 CoCoALib Feature #802 (In Progress): DivMask: extend interface?
The new @PPMonoidSparse@ impl needs to supply a @myComputeDivMask@ mem fn.
The current interface is well suited to...
John Abbott
10:17 CoCoALib Feature #747: New function for making list of symbols (indeterminate names)
That's fine by me -- less work for me :-)
Indeed @symbols("x[1..3,2..5]")@ is not really that much more readable tha...
John Abbott
 

Also available in: Atom