SMT-RAT  24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
common.h
Go to the documentation of this file.
1 #pragma once
2 
4 #include <smtrat-common/model.h>
5 #include <carl-arith/ran/ran.h>
6 #include <carl-arith/poly/libpoly/LPPolynomial.h>
7 
8 namespace smtrat::cadcells {
9 
10 
11 using VariableOrdering = std::vector<carl::Variable>;
12 
13 #ifdef USE_LIBPOLY
14 using Polynomial = carl::LPPolynomial;
15 #else
16 using Polynomial = carl::ContextPolynomial<Rational>;
17 #endif
18 using Constraint = carl::BasicConstraint<Polynomial>;
19 using MultivariateRoot = carl::MultivariateRoot<Polynomial>;
20 using VariableComparison = carl::VariableComparison<Polynomial>;
21 using Atom = std::variant<Constraint, VariableComparison>;
22 using Disjunction = std::vector<Atom>;
23 using DNF = std::vector<Disjunction>;
24 using RAN = Polynomial::RootType;
25 using Assignment = carl::Assignment<RAN>;
26 
28 
29 }
30 
A framework for sample-based CAD algorithms.
Definition: interval.h:5
std::vector< carl::Variable > VariableOrdering
Definition: common.h:11
Polynomial::RootType RAN
Definition: common.h:24
carl::Assignment< RAN > Assignment
Definition: common.h:25
std::vector< Disjunction > DNF
Definition: common.h:23
std::vector< Atom > Disjunction
Definition: common.h:22
carl::MultivariateRoot< Polynomial > MultivariateRoot
Definition: common.h:19
carl::VariableComparison< Polynomial > VariableComparison
Definition: common.h:20
carl::ContextPolynomial< Rational > Polynomial
Definition: common.h:16
std::variant< Constraint, VariableComparison > Atom
Definition: common.h:21
static const Assignment empty_assignment
Definition: common.h:27
carl::BasicConstraint< Polynomial > Constraint
Definition: common.h:18