Universe namespace

Contents

Classes

class IUniverseConfigurableSolver
class UniverseConfiguration
class IUniverseSolver
class IUniverseConstraint
class IUniverseDomain
class IUniverseProblem
class IUniverseVariable
class UniverseJavaConstraint
class UniverseJavaDomain
class UniverseJavaProblem
class UniverseJavaVariable
template<typename T>
class UniverseAssumption
class UniverseContradictionException
class UniverseJavaSolver
class AbstractUniverseIntensionConstraintFactory
class IUniverseIntensionConstraint
class IUniverseIntensionConstraintVisitor
class UniverseBinaryIntensionConstraint
class UniverseConstantIntensionConstraint
class UniverseIfThenElseIntensionConstraint
class UniverseIntensionConstraintFactory
class UniverseJavaIntensionConstraint
class UniverseJavaIntensionConstraintFactory
class UniverseNaryIntensionConstraint
class UniverseOperatorIntensionConstraint
class UniverseRangeIntensionConstraint
class UniverseSetIntensionConstraint
class UniverseUnaryIntensionConstraint
class UniverseVariableIntensionConstraint
class IUniverseCspSolver
class UniverseJavaCspSolver
class UniverseTransition
class JavaBigInteger
class JavaIterator
class JavaList
class JavaMapOfString
class IUniverseSearchListener
class UniverseJavaSearchListener
class IOptimizationSolver
class JavaOptimizationSolver
class IUniversePseudoBooleanSolver
class UniverseJavaPseudoBooleanSolver
class IUniverseSatSolver
class UniverseJavaSatSolver
class IUniverseSolverFactory
class UniverseJavaSolverFactory

Enums

enum class UniverseSolverResult { UNSATISFIABLE, SATISFIABLE, OPTIMUM_FOUND, UNKNOWN, UNSUPPORTED }
enum UniverseArithmeticOperator { NEG = 0, ABS, ADD, SUB, MULT, DIV, MOD, SQR, POW, MIN, MAX, DIST }
enum UniverseBooleanOperator { NOT = 100, AND, OR, XOR, EQUIV, IMPL }
enum UniverseRelationalOperator { LT = 200, LE, EQ, NEQ, GE, GT }
enum UniverseSetBelongingOperator { IN = 300, NOT_IN }

Typedefs

using BigInteger = long long
using UniverseOperator = int

Functions

auto toString(const Universe::BigInteger& i) -> std::string
auto bigIntegerValueOf(const std::string& s) -> Universe::BigInteger

Enum documentation

enum class Universe::UniverseSolverResult

The UniverseSolverResult enumeration defines all possible results produced by a solver.

Enumerators
UNSATISFIABLE

The result returned by a solver that proved unsatisfiability.

SATISFIABLE

The result returned by a solver that found a solution.

OPTIMUM_FOUND

The result returned by a solver that found an optimal solution.

UNKNOWN

The result returned by a solver that did not manage to find a solution or to prove unsatisfiability.

UNSUPPORTED

The result returned by a solver when it does not support some features of the input problem.

enum Universe::UniverseArithmeticOperator

The UniverseArithmeticOperator enumerates all arithmetic operators.

Enumerators
NEG

The arithmetic operator for computing the opposite of a value.

ABS

The arithmetic operator for computing the absolute value of a value.

ADD

The arithmetic operator for computing the addition of several values.

SUB

The arithmetic operator for computing the subtraction of two values.

MULT

The arithmetic operator for computing the multiplication of several values.

DIV

The arithmetic operator for computing the division of two values.

MOD

The arithmetic operator for computing the remainder of two values.

SQR

The arithmetic operator for computing the square of a value.

POW

The arithmetic operator for computing a value raised to the power of another.

MIN

The arithmetic operator for computing the minimum of several values.

MAX

The arithmetic operator for computing the maximum of several values.

DIST

The arithmetic operator for computing the distance between two values.

enum Universe::UniverseBooleanOperator

The BooleanOperator enumerates all operators on Boolean variables.

Enumerators
NOT

The Boolean operator for computing the negation of a Boolean value.

AND

The Boolean operator for computing the conjunction of several Boolean values.

OR

The Boolean operator for computing the disjunction of several Boolean values.

XOR

The Boolean operator for computing the exclusive disjunction of several Boolean values.

EQUIV

The Boolean operator for computing the equivalence of several Boolean values.

IMPL

The Boolean operator for computing the implication between two Boolean values.

enum Universe::UniverseRelationalOperator

The UniverseRelationalOperator enumerates all relational operators.

Enumerators
LT

The lesser-than (<) relational operator.

LE

The lesser-than-or-equal (<=) relational operator.

EQ

The equal (==) relational operator.

NEQ

The not-equal (!=) relational operator.

GE

The greater-than-or-equal (>=) relational operator.

GT

The greater-than (>) relational operator.

enum Universe::UniverseSetBelongingOperator

The SetBelongingOperator enumerates all possible operators for set-belonging operations.

Enumerators
IN

The operator checking whether a value belongs to a set of values.

NOT_IN

The operator checking whether a value does not belong to a set of values.

Typedef documentation

typedef long long Universe::BigInteger

BigInteger is an alias for long long when no big integer implementation is provided.

typedef int Universe::UniverseOperator

An alias allowing to use any kind of operators in a method.

Function documentation

std::string Universe::toString(const Universe::BigInteger& i)

Parameters
i The big integer to convert into a string.
Returns The string representation of i.

Converts a big integer into a string, depending on how BigIntegers are implemented.

Universe::BigInteger Universe::bigIntegerValueOf(const std::string& s)

Parameters
s The string to convert into a big integer.
Returns The BigInteger encoded in s.

Converts a string into a big integer, depending on how BigIntegers are implemented.