Browse Source

storm-pars fixed the fix...

tempestpy_adaptions
Tim Quatmann 4 years ago
parent
commit
84c0d77772
  1. 4
      src/storm-pars/modelchecker/instantiation/SparseMdpInstantiationModelChecker.cpp

4
src/storm-pars/modelchecker/instantiation/SparseMdpInstantiationModelChecker.cpp

@ -55,11 +55,13 @@ namespace storm {
auto newCheckTask = *this->currentCheckTask; auto newCheckTask = *this->currentCheckTask;
newCheckTask.setQualitative(true); newCheckTask.setQualitative(true);
newCheckTask.setOnlyInitialStatesRelevant(false); newCheckTask.setOnlyInitialStatesRelevant(false);
newCheckTask.setProduceSchedulers(false);
qualitativeResult = modelChecker.check(env, newCheckTask)->template asExplicitQuantitativeCheckResult<ConstantType>().getValueVector(); qualitativeResult = modelChecker.check(env, newCheckTask)->template asExplicitQuantitativeCheckResult<ConstantType>().getValueVector();
} else { } else {
auto newCheckTask = this->currentCheckTask->substituteFormula(this->currentCheckTask->getFormula().asOperatorFormula().getSubformula()); auto newCheckTask = this->currentCheckTask->substituteFormula(this->currentCheckTask->getFormula().asOperatorFormula().getSubformula());
newCheckTask.setQualitative(true); newCheckTask.setQualitative(true);
newCheckTask.setOnlyInitialStatesRelevant(false); newCheckTask.setOnlyInitialStatesRelevant(false);
newCheckTask.setProduceSchedulers(false);
qualitativeResult = modelChecker.computeProbabilities(env, newCheckTask)->template asExplicitQuantitativeCheckResult<ConstantType>().getValueVector(); qualitativeResult = modelChecker.computeProbabilities(env, newCheckTask)->template asExplicitQuantitativeCheckResult<ConstantType>().getValueVector();
} }
std::cout << storm::utility::vector::toString(qualitativeResult) << std::endl; std::cout << storm::utility::vector::toString(qualitativeResult) << std::endl;
@ -108,11 +110,13 @@ namespace storm {
auto newCheckTask = *this->currentCheckTask; auto newCheckTask = *this->currentCheckTask;
newCheckTask.setQualitative(true); newCheckTask.setQualitative(true);
newCheckTask.setOnlyInitialStatesRelevant(false); newCheckTask.setOnlyInitialStatesRelevant(false);
newCheckTask.setProduceSchedulers(false);
qualitativeResult = modelChecker.check(env, newCheckTask)->template asExplicitQuantitativeCheckResult<ConstantType>().getValueVector(); qualitativeResult = modelChecker.check(env, newCheckTask)->template asExplicitQuantitativeCheckResult<ConstantType>().getValueVector();
} else { } else {
auto newCheckTask = this->currentCheckTask->substituteFormula(this->currentCheckTask->getFormula().asOperatorFormula().getSubformula()); auto newCheckTask = this->currentCheckTask->substituteFormula(this->currentCheckTask->getFormula().asOperatorFormula().getSubformula());
newCheckTask.setQualitative(true); newCheckTask.setQualitative(true);
newCheckTask.setOnlyInitialStatesRelevant(false); newCheckTask.setOnlyInitialStatesRelevant(false);
newCheckTask.setProduceSchedulers(false);
qualitativeResult = modelChecker.computeRewards(env, this->currentCheckTask->getFormula().asRewardOperatorFormula().getMeasureType(), newCheckTask)->template asExplicitQuantitativeCheckResult<ConstantType>().getValueVector(); qualitativeResult = modelChecker.computeRewards(env, this->currentCheckTask->getFormula().asRewardOperatorFormula().getMeasureType(), newCheckTask)->template asExplicitQuantitativeCheckResult<ConstantType>().getValueVector();
} }
storm::storage::BitVector maybeStates = storm::utility::vector::filter<ConstantType>(qualitativeResult, storm::storage::BitVector maybeStates = storm::utility::vector::filter<ConstantType>(qualitativeResult,

Loading…
Cancel
Save