62 std::shared_ptr<storm::utility::solver::SmtSolverFactory>
const& smtSolverFactory,
bool useDecomposition,
63 bool addPredicatesForValidBlocks,
bool debug);
70 void refine(std::vector<uint_fast64_t>
const& predicates);
86 std::map<storm::expressions::Variable, storm::expressions::Expression>
getVariableUpdates(uint64_t auxiliaryChoice)
const;
135 std::pair<std::set<uint_fast64_t>, std::set<uint_fast64_t>> computeRelevantPredicates(std::vector<storm::prism::Assignment>
const& assignments)
const;
143 std::pair<std::set<uint_fast64_t>, std::vector<std::set<uint_fast64_t>>> computeRelevantPredicates()
const;
150 bool relevantPredicatesChanged(std::pair<std::set<uint_fast64_t>, std::vector<std::set<uint_fast64_t>>>
const& newRelevantPredicates)
const;
158 void addMissingPredicates(std::pair<std::set<uint_fast64_t>, std::vector<std::set<uint_fast64_t>>>
const& newRelevantPredicates);
167 std::vector<std::pair<storm::expressions::Variable, uint_fast64_t>>
const& variablePredicates)
const;
176 std::vector<std::vector<std::pair<storm::expressions::Variable, uint_fast64_t>>>
const& variablePredicates)
const;
181 void recomputeCachedBdd();
186 void recomputeCachedBddWithoutDecomposition();
191 void recomputeCachedBddWithDecomposition();
223 std::unique_ptr<storm::solver::SmtSolver> smtSolver;
226 std::reference_wrapper<AbstractionInformation<DdType>> abstractionInformation;
229 std::reference_wrapper<storm::prism::Command const> command;
232 std::set<storm::expressions::Variable> assignedVariables;
241 std::pair<std::vector<std::pair<storm::expressions::Variable, uint_fast64_t>>,
242 std::vector<std::vector<std::pair<storm::expressions::Variable, uint_fast64_t>>>>
243 relevantPredicatesAndVariables;
246 std::set<uint64_t> allRelevantPredicates;
253 std::vector<storm::expressions::Variable> decisionVariables;
256 bool useDecomposition;
259 bool addPredicatesForValidBlocks;
263 bool skipBottomStates;
266 bool forceRecomputation;