Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
AssumptionMaker.h
Go to the documentation of this file.
1#ifndef STORM_ASSUMPTIONMAKER_H
2#define STORM_ASSUMPTIONMAKER_H
3
4#include "AssumptionChecker.h"
5#include "Order.h"
6
10
11namespace storm {
12namespace analysis {
13
14template<typename ValueType, typename ConstantType>
16 typedef std::shared_ptr<expressions::BinaryRelationExpression> AssumptionType;
17
18 public:
25
37 std::map<std::shared_ptr<expressions::BinaryRelationExpression>, AssumptionStatus> createAndCheckAssumptions(
38 uint_fast64_t val1, uint_fast64_t val2, std::shared_ptr<Order> order, storage::ParameterRegion<ValueType> region) const;
39 std::map<std::shared_ptr<expressions::BinaryRelationExpression>, AssumptionStatus> createAndCheckAssumptions(
40 uint_fast64_t val1, uint_fast64_t val2, std::shared_ptr<Order> order, storage::ParameterRegion<ValueType> region,
41 std::vector<ConstantType> const minValues, std::vector<ConstantType> const maxValue) const;
42
51 void initializeCheckingOnSamples(std::shared_ptr<logic::Formula const> formula, std::shared_ptr<models::sparse::Dtmc<ValueType>> model,
52 storage::ParameterRegion<ValueType> region, uint_fast64_t numberOfSamples);
53
59 void setSampleValues(std::vector<std::vector<ConstantType>> const& samples);
60
61 private:
62 std::pair<std::shared_ptr<expressions::BinaryRelationExpression>, AssumptionStatus> createAndCheckAssumption(
63 uint_fast64_t val1, uint_fast64_t val2, expressions::RelationType relationType, std::shared_ptr<Order> order,
64 storage::ParameterRegion<ValueType> region, std::vector<ConstantType> const minValues, std::vector<ConstantType> const maxValue) const;
65
67
68 std::shared_ptr<expressions::ExpressionManager> expressionManager;
69
70 uint_fast64_t numberOfStates;
71};
72} // namespace analysis
73} // namespace storm
74#endif // STORM_ASSUMPTIONMAKER_H
void setSampleValues(std::vector< std::vector< ConstantType > > const &samples)
Sets the sample values to the given vector.
std::map< std::shared_ptr< expressions::BinaryRelationExpression >, AssumptionStatus > createAndCheckAssumptions(uint_fast64_t val1, uint_fast64_t val2, std::shared_ptr< Order > order, storage::ParameterRegion< ValueType > region) const
Creates assumptions, and checks them, only VALID and UNKNOWN assumptions are returned.
void initializeCheckingOnSamples(std::shared_ptr< logic::Formula const > formula, std::shared_ptr< models::sparse::Dtmc< ValueType > > model, storage::ParameterRegion< ValueType > region, uint_fast64_t numberOfSamples)
Initializes the given number of sample points for a given model, formula and region.
This class represents a discrete-time Markov chain.
Definition Dtmc.h:14
A class that holds a possibly non-square matrix in the compressed row storage format.
AssumptionStatus
Constants for status of assumption.
RelationType
An enum type specifying the different relations applicable.
LabParser.cpp.
Definition cli.cpp:18