SMT-RAT  24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
Projection_utils.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "../common.h"
4 
6 
7 /// Checks whether a polynomial can safely be ignored.
8 inline bool canBeRemoved(const UPoly& p) {
9  return carl::is_zero(p) || p.is_number();
10 }
11 /// Checks whether a polynomial can safely be forwarded to the next level.
12 inline bool canBeForwarded(std::size_t, const UPoly& p) {
13  return carl::is_constant(p);
14 }
15 
16 }
bool canBeRemoved(const UPoly &p)
Checks whether a polynomial can safely be ignored.
bool canBeForwarded(std::size_t, const UPoly &p)
Checks whether a polynomial can safely be forwarded to the next level.
carl::UnivariatePolynomial< Poly > UPoly
Definition: common.h:17
bool is_constant(const T &t)
Checks whether the constraint is constant, i.e.