-
Notifications
You must be signed in to change notification settings - Fork 2
Description
In stamina::checker::StaminaModelChecker, two transient analysis are being performed, one for
Note that
but it should be able to be calculated as follows:
So we can use the typical
$$
P_{max} = P_{=?}[\psi\ U^I\ \phi\ \vee\ \hat{s}]
$$
And then get CheckResult (not sure how yet)
This occurs at StaminaModelChecker.cpp:214
auto result_lower = checker->check(
// env,
storm::modelchecker::CheckTask<>(*(propMin.getRawFormula()), true)
);
min_results->result = result_lower->asExplicitQuantitativeCheckResult<double>()[*model->getInitialStates().begin()];
auto result_upper = checker->check(
// env,
storm::modelchecker::CheckTask<>(*(propMax.getRawFormula()), true)
);
max_results->result = result_upper->asExplicitQuantitativeCheckResult<double>()[*model->getInitialStates().begin()];This could be changed to something like
auto result_upper = checker->check(
// env,
storm::modelchecker::CheckTask<>(*(propMax.getRawFormula()), true)
);
max_results->result = result_upper->asExplicitQuantitativeCheckResult<double>()[*model->getInitialStates().begin()];
min_results->result = max_results->result - /* Wherever to get p(s_a) */;I tried result_upper->asExplicitQuantitativeCheckResult<double>()[0], as well as a number of other things, (since the absorbing state index is 0), but this didn't work.