Storm 1.14.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
solutionFunctions.h
Go to the documentation of this file.
1#pragma once
2
3#include <functional>
4#include <memory>
5#include <vector>
6
10
11namespace storm {
12class Environment;
13}
14namespace storm::jani {
15class Property;
16}
17namespace storm::logic {
18class Formula;
19}
20namespace storm::modelchecker {
21class CheckResult;
22}
24template<storm::dd::DdType DdType, typename ValueType>
25class Model;
26}
27namespace storm::cli {
28struct SymbolicInput;
29}
30
31namespace storm::pars {
32
33template<typename ValueType>
35 std::vector<storm::jani::Property> const& properties,
36 std::function<std::unique_ptr<storm::modelchecker::CheckResult>(std::shared_ptr<storm::logic::Formula const> const& formula)> const& verificationCallback,
37 std::function<void(std::unique_ptr<storm::modelchecker::CheckResult> const&)> const& postprocessingCallback);
38
39template<typename ValueType>
40void computeSolutionFunctionsWithSparseEngine(storm::Environment const& env, std::shared_ptr<storm::models::sparse::Model<ValueType>> const& model,
41 storm::cli::SymbolicInput const& input);
42
43template<storm::dd::DdType DdType, typename ValueType>
44void computeSolutionFunctionsWithSymbolicEngine(storm::Environment const& env, std::shared_ptr<storm::models::symbolic::Model<DdType, ValueType>> const& model,
45 storm::cli::SymbolicInput const& input);
46
48 std::vector<storm::jani::Property> const&,
49 std::function<std::unique_ptr<storm::modelchecker::CheckResult>(std::shared_ptr<storm::logic::Formula const> const&)> const&,
50 std::function<void(std::unique_ptr<storm::modelchecker::CheckResult> const&)> const&);
51
53 storm::Environment const&, std::shared_ptr<storm::models::sparse::Model<storm::RationalFunction>> const&, storm::cli::SymbolicInput const&);
54
56 storm::Environment const&, std::shared_ptr<storm::models::symbolic::Model<storm::dd::DdType::Sylvan, storm::RationalFunction>> const&,
57 storm::cli::SymbolicInput const&);
58
59} // namespace storm::pars
template void computeSolutionFunctionsWithSparseEngine< storm::RationalFunction >(storm::Environment const &, std::shared_ptr< storm::models::sparse::Model< storm::RationalFunction > > const &, storm::cli::SymbolicInput const &)
template void verifyProperties< storm::RationalFunction >(std::vector< storm::jani::Property > const &, std::function< std::unique_ptr< storm::modelchecker::CheckResult >(std::shared_ptr< storm::logic::Formula const > const &)> const &, std::function< void(std::unique_ptr< storm::modelchecker::CheckResult > const &)> const &)
template void computeSolutionFunctionsWithSymbolicEngine< storm::dd::DdType::Sylvan, storm::RationalFunction >(storm::Environment const &, std::shared_ptr< storm::models::symbolic::Model< storm::dd::DdType::Sylvan, storm::RationalFunction > > const &, storm::cli::SymbolicInput const &)
void computeSolutionFunctionsWithSparseEngine(storm::Environment const &env, std::shared_ptr< storm::models::sparse::Model< ValueType > > const &model, storm::cli::SymbolicInput const &input)
void verifyProperties(std::vector< storm::jani::Property > const &properties, std::function< std::unique_ptr< storm::modelchecker::CheckResult >(std::shared_ptr< storm::logic::Formula const > const &formula)> const &verificationCallback, std::function< void(std::unique_ptr< storm::modelchecker::CheckResult > const &)> const &postprocessingCallback)
void computeSolutionFunctionsWithSymbolicEngine(storm::Environment const &env, std::shared_ptr< storm::models::symbolic::Model< DdType, ValueType > > const &model, storm::cli::SymbolicInput const &input)