1#ifndef STORM_STORAGE_EXPRESSIONS_SIMPLEVALUATION_H_
2#define STORM_STORAGE_EXPRESSIONS_SIMPLEVALUATION_H_
13namespace expressions {
33 SimpleValuation(std::shared_ptr<storm::expressions::ExpressionManager const>
const& manager);
65 virtual std::string
toPrettyString(std::set<storm::expressions::Variable>
const& selectedVariables)
const;
67 virtual std::string
toString(
bool pretty =
true)
const;
74 std::vector<bool> booleanValues;
75 std::vector<int_fast64_t> integerValues;
76 std::vector<double> rationalValues;
A simple implementation of the valuation interface.
friend std::ostream & operator<<(std::ostream &out, SimpleValuation const &valuation)
virtual std::string toPrettyString(std::set< storm::expressions::Variable > const &selectedVariables) const
Returns a string representation of the valuation of the selected variables.
virtual void setIntegerValue(Variable const &integerVariable, int_fast64_t value) override
Sets the value of the given integer variable to the provided value.
virtual int_fast64_t getIntegerValue(Variable const &integerVariable) const override
Retrieves the value of the given integer variable.
virtual double getRationalValue(Variable const &rationalVariable) const override
Retrieves the value of the given rational variable.
bool operator==(SimpleValuation const &other) const
Checks whether the two valuations are semantically equivalent.
virtual void setBooleanValue(Variable const &booleanVariable, bool value) override
Sets the value of the given boolean variable to the provided value.
SimpleValuation & operator=(SimpleValuation const &other)
storm::json< storm::RationalNumber > toJson() const
virtual std::string toString(bool pretty=true) const
virtual bool getBooleanValue(Variable const &booleanVariable) const override
Retrieves the value of the given boolean variable.
SimpleValuation()
Creates an empty simple valuation that is associated to no manager and has no variables.
virtual void setRationalValue(Variable const &rationalVariable, double value) override
Sets the value of the given boolean variable to the provided value.
virtual int_fast64_t getBitVectorValue(Variable const &bitVectorVariable) const override
Retrieves the value of the given bit vector variable.
virtual void setBitVectorValue(Variable const &bitVectorVariable, int_fast64_t value) override
Sets the value of the given bit vector variable to the provided value.
A helper class that can be used as the comparison functor wrt.
bool operator()(SimpleValuation *valuation1, SimpleValuation *valuation2) const
A helper class that can pe used as the hash functor for data structures that need to hash valuations ...
std::size_t operator()(SimpleValuation *valuation) const
A helper class that can be used as the comparison functor wrt.
bool operator()(SimpleValuation *valuation1, SimpleValuation *valuation2) const
The base class of all valuations of variables.
std::ostream & operator<<(std::ostream &stream, BaseExpression const &expression)
nlohmann::basic_json< std::map, std::vector, std::string, bool, int64_t, uint64_t, ValueType > json