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::jani {
12class Property;
13}
14namespace storm::logic {
15class Formula;
16}
17namespace storm::modelchecker {
18class CheckResult;
19}
21template<storm::dd::DdType DdType, typename ValueType>
22class Model;
23}
24namespace storm::cli {
25struct SymbolicInput;
26}
27
28namespace storm::pars {
29
30template<typename ValueType>
32 std::vector<storm::jani::Property> const& properties,
33 std::function<std::unique_ptr<storm::modelchecker::CheckResult>(std::shared_ptr<storm::logic::Formula const> const& formula)> const& verificationCallback,
34 std::function<void(std::unique_ptr<storm::modelchecker::CheckResult> const&)> const& postprocessingCallback);
35
36template<typename ValueType>
37void computeSolutionFunctionsWithSparseEngine(std::shared_ptr<storm::models::sparse::Model<ValueType>> const& model, storm::cli::SymbolicInput const& input);
38
39template<storm::dd::DdType DdType, typename ValueType>
40void computeSolutionFunctionsWithSymbolicEngine(std::shared_ptr<storm::models::symbolic::Model<DdType, ValueType>> const& model,
41 storm::cli::SymbolicInput const& input);
42
44 std::vector<storm::jani::Property> const&,
45 std::function<std::unique_ptr<storm::modelchecker::CheckResult>(std::shared_ptr<storm::logic::Formula const> const&)> const&,
46 std::function<void(std::unique_ptr<storm::modelchecker::CheckResult> const&)> const&);
47
49 std::shared_ptr<storm::models::sparse::Model<storm::RationalFunction>> const&, storm::cli::SymbolicInput const&);
50
52 std::shared_ptr<storm::models::symbolic::Model<storm::dd::DdType::Sylvan, storm::RationalFunction>> const&, storm::cli::SymbolicInput const&);
53
54} // namespace storm::pars
template void computeSolutionFunctionsWithSparseEngine< storm::RationalFunction >(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 >(std::shared_ptr< storm::models::symbolic::Model< storm::dd::DdType::Sylvan, storm::RationalFunction > > const &, storm::cli::SymbolicInput const &)
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 computeSolutionFunctionsWithSparseEngine(std::shared_ptr< storm::models::sparse::Model< ValueType > > const &model, storm::cli::SymbolicInput const &input)
void computeSolutionFunctionsWithSymbolicEngine(std::shared_ptr< storm::models::symbolic::Model< DdType, ValueType > > const &model, storm::cli::SymbolicInput const &input)