tiny.smt.SolveStats
Defined in sat.types.
Counts of the work one solve did.
API (10)
Fields and members
Public fields and members.
conflictsdecisionsevicted_clauseslearned_clausesmax_decision_levelphase_saved_decisionsproof_stepspropagationsrestartsroot_conflicts
Source
Source: lib/smt/src/sat/types.zig:63
zig
/// Counts of the work one solve did. A caller reads them from `Solver.lastSolveStats` to report how/// much work a solve took. The solver sets every count to zero when a solve starts. The counts/// cover the main search: the extra solves of core minimization change only `proof_steps`, which/// takes the certified trace's length.pub const SolveStats = struct { /// Decisions the search made, each giving an unassigned variable a value. decisions: usize = 0, /// Decisions that gave the variable the value it last held, in this solve or an earlier one, /// counted within `decisions`. phase_saved_decisions: usize = 0, /// Literals the search assigned because every other literal of a clause was false. Unit clauses /// of the formula and assumptions sit outside the count. propagations: usize = 0, /// Times the main search found a clause with every literal false. `Solver.conflict_budget` /// limits this count. conflicts: usize = 0, /// Clauses the search learned from conflicts in this solve. learned_clauses: usize = 0, /// Learned clauses the solver removed to stay within `Solver.max_learned_clauses`, removals at /// the start of the solve included. evicted_clauses: usize = 0, /// Steps in the proof trace at the end of the solve: one per learned clause, plus the final /// empty clause after an unsatisfiable answer. After core minimization certified a smaller /// core, the count is the certifying solve's step count. proof_steps: usize = 0, /// Times the search went back to the first decision, on the restart schedule or to remove /// learned clauses. restarts: usize = 0, /// The largest number of decisions in force at once during the solve. max_decision_level: u32 = 0, /// Conflicts found at decision level zero, counted within `conflicts`. Assumptions sit below /// every decision, so a conflict among the assumptions counts here. root_conflicts: usize = 0,};Source: lib/smt/src/root.zig:108
zig
pub const SolveStats = sat.SolveStats;Also reachable as
sat.SolveStats, sat.solver.SolveStats.
Audit
| Definitions | 1 |
|---|---|
| Public names | 4 |
| Members | 10 |
| Version | 26.7.0 |
| Revision | daab053ee433 |