|
|
@ -23,13 +23,14 @@ IntegerVariable::IntegerVariable() : lowerBound(), upperBound() { |
|
|
|
// Initializes all members according to the given values.
|
|
|
|
IntegerVariable::IntegerVariable(uint_fast64_t index, std::string variableName, std::shared_ptr<storm::ir::expressions::BaseExpression> lowerBound, std::shared_ptr<storm::ir::expressions::BaseExpression> upperBound, std::shared_ptr<storm::ir::expressions::BaseExpression> initialValue) |
|
|
|
: Variable(index, variableName, initialValue), lowerBound(lowerBound), upperBound(upperBound) { |
|
|
|
// TODO: This behaves like prism...
|
|
|
|
if (this->getInitialValue() == nullptr) { |
|
|
|
this->setInitialValue(lowerBound); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
IntegerVariable::IntegerVariable(const IntegerVariable& var, const std::string& newName, const std::map<std::string, std::string>& renaming, const std::map<std::string,uint_fast64_t>& bools, const std::map<std::string,uint_fast64_t>& ints) |
|
|
|
: Variable(var, newName, renaming, bools, ints), lowerBound(var.lowerBound->clone(renaming, bools, ints)), upperBound(var.upperBound->clone(renaming, bools, ints)) { |
|
|
|
: Variable(var, newName, ints.at(newName), renaming, bools, ints), lowerBound(var.lowerBound->clone(renaming, bools, ints)), upperBound(var.upperBound->clone(renaming, bools, ints)) { |
|
|
|
} |
|
|
|
|
|
|
|
// Return lower bound for variable.
|
|
|
|