Skip to documentation
SLOP

tiny.smt.SolveStats

Reference tiny.smt SolveStats

Defined in sat.types.

Counts of the work one solve did.

API (10)

Fields and members

Public fields and members.

No direct callersNo direct callssat.typesSolveStats
Static calls · unresolved targets: unknown · external targets: unknown.

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

Definitions1
Public names4
Members10
Version26.7.0
Revisiondaab053ee433