42 using ValueType = double;
52 void toFile(std::string
const&);
134 uint64_t getClaimVariableIndex(uint64_t spareIndex, uint64_t childIndex)
const;
147 uint64_t childIndex, uint64_t timepoint)
const;
153 void generateAndConstraint(
size_t i, std::vector<uint64_t> childVarIndices,
160 void generateOrConstraint(
size_t i, std::vector<uint64_t> childVarIndices,
166 void generateVotConstraint(
size_t i, std::vector<uint64_t> childVarIndices,
173 void generatePandConstraint(
size_t i, std::vector<uint64_t> childVarIndices,
179 void generatePorConstraint(
size_t i, std::vector<uint64_t> childVarIndices,
192 void generateSpareConstraint(
size_t i, std::vector<uint64_t> childVarIndices,
199 void generatePdepConstraint(
size_t i, std::vector<uint64_t> childVarIndices,
206 void addClaimingConstraints();
212 void addMarkovianConstraints();
215 std::shared_ptr<storm::solver::SmtSolver> solver =
nullptr;
216 std::vector<std::string> varNames;
217 std::unordered_map<uint64_t, uint64_t> timePointVariables;
218 std::vector<std::shared_ptr<SmtConstraint>> constraints;
219 std::map<SpareAndChildPair, uint64_t> claimVariables;
220 std::unordered_map<uint64_t, uint64_t> dependencyVariables;
221 std::unordered_map<uint64_t, uint64_t> markovianVariables;
222 std::vector<uint64_t> tmpTimePointVariables;