Open brianhuffman opened 4 years ago
Although it wouldn't help in logs, we could use ANSI control codes to replace certain status update lines in place as we go (in addition to the numbers @brianhuffman suggested).
The "Calling Yices to check sat
" and "Running check sat
" bits in particular arise from what4
. This is because we print out all log messages from what4
, regardless of their verbosity:
Note that the first argument to logger
is an Int
representing the verbosity. The "Calling Yices to check sat
" and "Running check sat
" have a verbosity of 2
, so we could tweak logger
to only print out logs with a matching SAW verbosity level if we wanted to.
When running the
bike_r2
proofs froms2n
, I get lots of output fromsaw
. Some of it looks like this:This is followed by many more copies of the last two lines, all identical. These should probably be suppressed at the default verbosity setting. And if we print them, these messages would be more useful if they were numbered, like 1/23, 2/23, ... 23/23. (We know how many SAW proof goals there are, after all; printing the current goal number with the total number would make this into a useful progress indicator for long-running proofs.)
Here's another repetitive bit:
The last three lines are then repeated several hundred more times.
We should not be generating such large amounts of repetitive output, at least not at the default verbosity setting. Applying an override is not so notable that it deserves to be called out with an exclamation point every time it happens (unless the user asks for more verbosity). Instead, after symbolic simulation we should print a summary showing how many times each override was used.