mhtirogla
Home
Systems
API
Pricing
About
Log in
← Back
Home
›
Systems
›
Numerical and mathematical computing
sat-smt-solver
SAT / SMT solver
Z3
System
Techniques · 4
Primitives · 13
sat-smt-solver
Congruence closure
compilers · medium: Union-find over terms with congruence propagation; decides equality with uninterpreted functions
Bit blasting
optimization · medium: Reduce bit-vector constraints to CNF via adder, multiplier and comparator circuits
CDCL SAT solving
optimization · medium: Search for a satisfying assignment, learn a new constraint from every dead end, and jump back past irrelevant choices; handles industrial formulas with millions of clauses.
›
Dpll t
optimization · medium: SMT architecture: CDCL over boolean abstraction plus theory solvers, theory propagation, Nelson-Oppen
Hash consing
data-structures · low: Intern structurally equal immutable terms so equality is pointer comparison and sharing is maximal
Union-find
graphs · low: Disjoint-set forest with union by size and path compression; merges sets and answers same-set queries in effectively constant time.
›
Tseitin transformation
optimization · low: Linear-size CNF encoding of formulas with auxiliary variables
d-ary heap
data-structures · low: Array heap with d children per node (d = 4 typical): half the binary heap's depth, siblings in one cache line, faster priority queues.
›
Drat proof certificates
optimization · low: DRAT and LRAT proofs emitted by SAT solvers and checked independently
Two watched literals
optimization · low: Unit propagation for SAT that watches just two literals per clause, so backtracking costs nothing and long clauses are rarely touched.
›
Arena allocator
systems · low: Allocate by bumping a pointer through big chunks and free everything at once: a few instructions per allocation for objects sharing a lifetime.
›
Simplex method
optimization · low: Solves linear programs by walking along the edges of the feasible polytope from vertex to vertex, one basis swap (pivot) at a time; the workhorse behind MIP solvers.
›
E graphs
compilers · low: Equality saturation: e-graphs compactly hold many equivalent programs, then extract the cheapest
Arithmetic circuits
hardware-os · low: Adder and multiplier circuits: carry-lookahead, prefix adders, Booth encoding, Wallace and Dadda trees
Floating-point error
numerics · low: How IEEE 754 rounding error accumulates and how to contain it: compensated (Kahan/Neumaier) and pairwise summation, error-free transformations with FMA, ULP comparisons.
›
LU and Cholesky factorization
numerics · low: Factor A = PLU (any square matrix, partial pivoting) or A = LLᵀ (SPD) once in O(n³), then solve each right-hand side in O(n²).
›
Sparse matrices (CSR)
numerics · low: Compressed sparse row stores only nonzeros as row pointers, column indices and values; SpMV streams them once, so it is memory-bandwidth bound.
›
Copy for AI
Similar systems
Share the most building blocks with this one.
constraint-solver
21 %