SMT-RAT
24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
|
Data Structures | |
struct | BaseSettings |
struct | DefaultSettings |
struct | Explanation |
Functions | |
template<typename Settings > | |
std::optional< cadcells::DNF > | onecell (const std::vector< cadcells::Atom > &constraints, const cadcells::Polynomial::ContextType &context, const cadcells::Assignment &sample) |
An MCSAT-style single cell explanation function. More... | |
std::optional<cadcells::DNF> smtrat::mcsat::onecell::onecell | ( | const std::vector< cadcells::Atom > & | constraints, |
const cadcells::Polynomial::ContextType & | context, | ||
const cadcells::Assignment & | sample | ||
) |
An MCSAT-style single cell explanation function.
A set of constraints is called infeasible w.r.t. an assignment if the defining polynomials are univariate under the sample and there does not exists a value for the unassigned variable that satisfies all constraints.
This method eliminates the unassigned variable using get_level_covering or get_delineation and then constructs a single cell in the assigned variables level by level.
constraints | Atoms of the same level such that sample cannot be extended for the highest variable without making one atom false. Note that this property is not checked. |
sample | A sample such that all but the highest variable in constraints are assigned. |
Definition at line 31 of file onecell.h.