SMT-RAT  24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
smtrat::cadcells::datastructures::SymbolicInterval Class Reference

A symbolic interal whose bounds are defined by indexed root expressions. More...

#include <roots.h>

Collaboration diagram for smtrat::cadcells::datastructures::SymbolicInterval:

Public Member Functions

 SymbolicInterval (IndexedRoot root)
 Constructs a section. More...
 
 SymbolicInterval (Bound lower, Bound upper)
 Constructs an interval with arbitrary bounds. More...
 
 SymbolicInterval ()
 Constructs (-oo, oo). More...
 
bool is_section () const
 
const IndexedRootsection_defining () const
 In case of a section, the defining indexed root is returned. More...
 
const auto & lower () const
 Return the lower bound. More...
 
const auto & upper () const
 Returns the upper bound. More...
 
void polys (boost::container::flat_set< PolyRef > &result) const
 
boost::container::flat_set< PolyRefpolys () const
 
void set_to_closure ()
 

Private Attributes

Bound m_lower
 
Bound m_upper
 

Detailed Description

A symbolic interal whose bounds are defined by indexed root expressions.

Bounds can be infty, strict or weak. A special case is a section where the lower and upper bound are equal and weak.

Definition at line 250 of file roots.h.

Constructor & Destructor Documentation

◆ SymbolicInterval() [1/3]

smtrat::cadcells::datastructures::SymbolicInterval::SymbolicInterval ( IndexedRoot  root)
inline

Constructs a section.

Definition at line 258 of file roots.h.

◆ SymbolicInterval() [2/3]

smtrat::cadcells::datastructures::SymbolicInterval::SymbolicInterval ( Bound  lower,
Bound  upper 
)
inline

Constructs an interval with arbitrary bounds.

Definition at line 262 of file roots.h.

Here is the call graph for this function:

◆ SymbolicInterval() [3/3]

smtrat::cadcells::datastructures::SymbolicInterval::SymbolicInterval ( )
inline

Constructs (-oo, oo).

Definition at line 268 of file roots.h.

Member Function Documentation

◆ is_section()

bool smtrat::cadcells::datastructures::SymbolicInterval::is_section ( ) const
inline

Definition at line 270 of file roots.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lower()

const auto& smtrat::cadcells::datastructures::SymbolicInterval::lower ( ) const
inline

Return the lower bound.

Definition at line 285 of file roots.h.

Here is the caller graph for this function:

◆ polys() [1/2]

boost::container::flat_set<PolyRef> smtrat::cadcells::datastructures::SymbolicInterval::polys ( ) const
inline

Definition at line 305 of file roots.h.

◆ polys() [2/2]

void smtrat::cadcells::datastructures::SymbolicInterval::polys ( boost::container::flat_set< PolyRef > &  result) const
inline

Definition at line 296 of file roots.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ section_defining()

const IndexedRoot& smtrat::cadcells::datastructures::SymbolicInterval::section_defining ( ) const
inline

In case of a section, the defining indexed root is returned.

Definition at line 277 of file roots.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set_to_closure()

void smtrat::cadcells::datastructures::SymbolicInterval::set_to_closure ( )
inline

Definition at line 311 of file roots.h.

Here is the call graph for this function:

◆ upper()

const auto& smtrat::cadcells::datastructures::SymbolicInterval::upper ( ) const
inline

Returns the upper bound.

Definition at line 292 of file roots.h.

Here is the caller graph for this function:

Field Documentation

◆ m_lower

Bound smtrat::cadcells::datastructures::SymbolicInterval::m_lower
private

Definition at line 251 of file roots.h.

◆ m_upper

Bound smtrat::cadcells::datastructures::SymbolicInterval::m_upper
private

Definition at line 252 of file roots.h.


The documentation for this class was generated from the following file: