| Crates.io | oxiz-nlsat |
| lib.rs | oxiz-nlsat |
| version | 0.1.2 |
| created_at | 2026-01-12 04:49:00.319383+00 |
| updated_at | 2026-01-21 05:21:59.947019+00 |
| description | Non-linear arithmetic solver for OxiZ (CAD-based) |
| homepage | |
| repository | https://github.com/cool-japan/oxiz |
| max_upload_size | |
| id | 2037000 |
| size | 733,324 |
Non-linear arithmetic solver for OxiZ using Cylindrical Algebraic Decomposition (CAD).
This crate implements the NLSAT algorithm for solving non-linear real arithmetic (QF_NRA) and non-linear integer arithmetic (QF_NIA) problems. NLSAT is one of the most complex components in Z3 (~180k lines of C++).
| Module | Description | Z3 Reference |
|---|---|---|
solver |
Main NLSAT solver | nlsat_solver.cpp |
types |
Core type definitions | nlsat_types.h |
clause |
Clause representation | nlsat_clause.h |
assignment |
Variable assignments | nlsat_assignment.h |
interval_set |
Solution intervals | nlsat_interval_set.cpp |
explain |
Conflict explanation | nlsat_explain.cpp |
oxiz-math: Polynomial arithmetic, interval operationsMIT OR Apache-2.0