Project

General

Profile

Design #1721

Verbose messages: print level?

Added by John Abbott over 1 year ago. Updated about 1 year ago.

Status:
Closed
Priority:
Normal
Category:
Improving
Target version:
Start date:
19 Jan 2023
Due date:
% Done:

100%

Estimated time:
Spent time:

Description

Discussion:
Should a verbose message indicate at what level it first appears?

Context:
SetVerbosityLevel(99); produced a lot more output than I wanted, but I am too
lazy to search through doc (or the source code) to find out what level triggers
the many messages I do not want. If the message indicated that it appears at or
above level 80 (say), then I can simply try level 79.

2023-03 Also added indentation for depth of call D see below: #1721.7


Related issues

Related to CoCoA-5 - Feature #1731: Verbosity level in CoCoA5In Progress2023-03-27

Related to CoCoALib - Design #1768: Limit indentation in verbose mesgs?Closed2023-11-19

History

#1 Updated by John Abbott about 1 year ago

Does anyone have any comments? Better ideas?

#2 Updated by Anna Maria Bigatti about 1 year ago

Yes!!! That's a great idea!
It would be impossibile to keep the documentation up to date... and tedious to read.

#3 Updated by Anna Maria Bigatti about 1 year ago

  • % Done changed from 0 to 20

Proposed look (invented numbers) [depth:level] space space

NewOrdvArith(ord)[3:40]  -- called --
MinPolyQuotDef[3:60]  time cycle: --> 7e-05
MinPolyQuotDef[3:50]  Total time --> 5.1e-05

intead of current [depth]: space
NewOrdvArith(ord)[3]: -- called --
MinPolyQuotDef[3]: time cycle: --> 7e-05
MinPolyQuotDef[3]: Total time --> 5.1e-05

#4 Updated by John Abbott about 1 year ago

  • Status changed from New to In Progress

I wonder whether the format you propose is too terse, but then making it longer perhaps produces too much output?
Not so convinced by the colon... perhaps I just need to get used to it. [3:40] looks like a time to me!

What about [depth @ level]? Then it would look like:

NewOrdvArith(ord)[3@40]  -- called --
MinPolyQuotDef[3@60]  time cycle: --> 7e-05
MinPolyQuotDef[3@50]  Total time --> 5.1e-05

Mmmm, not sure it is really any better. Other suggestions? Possibly [depth v level] e.g. [3v40]

Maybe using the "pipe" (vertical bar) symbol: [3|40] So it would look like this:

NewOrdvArith(ord)[3|40]  -- called --
MinPolyQuotDef[3|60]  time cycle: --> 7e-05
MinPolyQuotDef[3|50]  Total time --> 5.1e-05

Anna Any chance you could implement this change over the next week (while I'm absent)?

#5 Updated by Anna Maria Bigatti about 1 year ago

  • % Done changed from 20 to 30

John Abbott wrote:

What about D depth - L level e.g. D3-L40

NewOrdvArith(ord) D3-L40  -- called --
MinPolyQuotDef D3-L60  time cycle: --> 7e-05
MinPolyQuotDef D3-L50  Total time --> 5.1e-05

Anna Any chance you could implement this change over the next week (while I'm absent)?

I'll try tomorrow

#6 Updated by John Abbott about 1 year ago

I Tjink I might prefer to info to be inside (square?) brackets:
something like this:

NewOrdvArith(ord) [D3-L40]  -- called --
MinPolyQuotDef [D3-L60]  time cycle: --> 7e-05
MinPolyQuotDef [D3-L50]  Total time --> 5.1e-05

Or conceivably even like this:

[D3-L40] NewOrdvArith(ord)  -- called --
[D3-L60] MinPolyQuotDef  time cycle: --> 7e-05
[D3-L50] MinPolyQuotDef  Total time --> 5.1e-05

Try a few ideas and see what you think is nicest to read.

#7 Updated by Anna Maria Bigatti about 1 year ago

  • Status changed from In Progress to Feedback
  • Assignee set to Anna Maria Bigatti
  • % Done changed from 30 to 90

You insipired me: I chose this look because this is how I've always desired the indentation for depth!
Reference: file verbose.C, function VerboseLog::operator()(long level)

/**/ SetVerbosityLevel(95);
/**/ use R ::= QQ[x,y,z];
/**/ I := ideal(x^2-1, y^2-2, z^3);
/**/ IsRadical(I);

[D1,L20,myTestIsRadical_0dim] trying z
 [D2,L80,MinPolyModular] 1: prime is 1073741831
  [D3,L90,MinPolyQuotDef] time cycle: --> 7.4e-05
  [D3,L90,MinPolyQuotDef] Total time --> 5.7e-05
  time: p*f --> 6e-06
  time: NF --> 2.2e-05
  time: coefficients --> 1.1e-05
  time: LinDepMill --> 1.8e-05
Post-cycle --> 1.6e-05
 [D2,L80,MinPolyModular] 2: prime is 1073741833
  [D3,L90,MinPolyQuotDef] time cycle: --> 7e-05
  [D3,L90,MinPolyQuotDef] Total time --> 5.2e-05
  time: p*f --> 8e-06
  time: NF --> 2.1e-05
  time: coefficients --> 8e-06
  time: LinDepMill --> 1.5e-05
Post-cycle --> 1.5e-05
 [D2,L90,MinPolyModular] Reconstruction time: 3.8e-05
 [D2,L90,MinPolyModular] Verification-QQ time:7.7e-05
false

#8 Updated by John Abbott about 1 year ago

That looks nice! I have increased to two 2 spaces after the close square bracket.

#9 Updated by Anna Maria Bigatti about 1 year ago

#10 Updated by Anna Maria Bigatti about 1 year ago

  • Description updated (diff)

#11 Updated by Anna Maria Bigatti about 1 year ago

  • Description updated (diff)

#12 Updated by Anna Maria Bigatti about 1 year ago

  • Description updated (diff)

#13 Updated by Anna Maria Bigatti about 1 year ago

  • Status changed from Feedback to Closed
  • % Done changed from 90 to 100

#14 Updated by John Abbott 5 months ago

  • Related to Design #1768: Limit indentation in verbose mesgs? added

Also available in: Atom PDF