Skip to content

Disabling persistent verbose pb solver log messages #6107

Closed
@noajshu

Description

I have been trying for some time to eliminate all Z3 logging output from my C++ program. The undesired output looks like the following:

binary 199@15
167
binary -100@15
antecedent -100 is above consequent in stack
100
(100@15 98@15 -106@11 104@15)
-98
(-98@15 -118@15 -116@15 104@15)
antecedent -118 is above consequent in stack
-119
...

I found the "is above consequent in stack" string in pb_solver.cpp. I read the source code in that file to find the relevant tags to call Z3_disable_trace(tag), as a suggested here. I tried disabling these tags:

Z3_disable_trace("pb");
Z3_disable_trace("pb_verbose");
Z3_disable_trace("ba");
Z3_disable_trace("ba_verbose");
Z3_disable_trace("sat");
Z3_disable_trace("sat_verbose");

This does not silence the output above.

This issue seems related. In both cases the verbosity was 0. The solution then was to increase verbosity to 1, although no example problem instance was provided to reproduce the issue (let me know if a smtlib example would be helpful).

Is this a bug or is there a way to disable this log output using the z3 API? Thank you very much.

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions