5 changed files with 143 additions and 3 deletions
-
59src/storm-cli-utilities/model-handling.h
-
2src/storm/utility/Engine.cpp
-
2src/storm/utility/Engine.h
-
37src/storm/utility/Portfolio.cpp
-
46src/storm/utility/Portfolio.h
@ -0,0 +1,37 @@ |
|||||
|
#include "storm/utility/Portfolio.h"
|
||||
|
|
||||
|
#include "storm/storage/SymbolicModelDescription.h"
|
||||
|
#include "storm/storage/jani/Property.h"
|
||||
|
|
||||
|
#include "storm/utility/macros.h"
|
||||
|
#include "storm/exceptions/InvalidOperationException.h"
|
||||
|
|
||||
|
namespace storm { |
||||
|
namespace utility { |
||||
|
Portfolio::Portfolio() : engine(storm::utility::Engine::Unknown), bisimulation(false), exact(false) { |
||||
|
// Intentionally left empty
|
||||
|
} |
||||
|
|
||||
|
void Portfolio::predict(storm::storage::SymbolicModelDescription const& modelDescription, storm::jani::Property const& property) { |
||||
|
|
||||
|
} |
||||
|
|
||||
|
void Portfolio::predict(storm::storage::SymbolicModelDescription const& modelDescription, storm::jani::Property const& property, uint64_t stateEstimate) { |
||||
|
|
||||
|
} |
||||
|
|
||||
|
storm::utility::Engine Portfolio::getEngine() const { |
||||
|
STORM_LOG_THROW(engine != storm::utility::Engine::Unknown, storm::exceptions::InvalidOperationException, "Tried to get the engine but apparently no prediction was done before."); |
||||
|
return engine; |
||||
|
} |
||||
|
|
||||
|
bool Portfolio::enableBisimulation() const { |
||||
|
return bisimulation; |
||||
|
} |
||||
|
|
||||
|
bool Portfolio::enableExact() const { |
||||
|
return exact; |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
} |
@ -0,0 +1,46 @@ |
|||||
|
#pragma once |
||||
|
|
||||
|
#include "storm/utility/Engine.h" |
||||
|
|
||||
|
namespace storm { |
||||
|
|
||||
|
namespace jani { |
||||
|
class Property; |
||||
|
} |
||||
|
|
||||
|
namespace storage { |
||||
|
class SymbolicModelDescription; |
||||
|
} |
||||
|
|
||||
|
namespace utility { |
||||
|
class Portfolio { |
||||
|
public: |
||||
|
Portfolio(); |
||||
|
|
||||
|
/*! |
||||
|
* Predicts "good" settings for the provided model checking query |
||||
|
*/ |
||||
|
void predict(storm::storage::SymbolicModelDescription const& modelDescription, storm::jani::Property const& property); |
||||
|
|
||||
|
/*! |
||||
|
* Predicts "good" settings for the provided model checking query |
||||
|
* @param stateEstimate A hint that gives a (rough) estimate for the number of states. |
||||
|
*/ |
||||
|
void predict(storm::storage::SymbolicModelDescription const& modelDescription, storm::jani::Property const& property, uint64_t stateEstimate); |
||||
|
|
||||
|
/// Retrieve "good" settings after calling predict. |
||||
|
storm::utility::Engine getEngine() const; |
||||
|
bool enableBisimulation() const; |
||||
|
bool enableExact() const; |
||||
|
|
||||
|
private: |
||||
|
storm::utility::Engine engine; |
||||
|
bool bisimulation; |
||||
|
bool exact; |
||||
|
|
||||
|
|
||||
|
|
||||
|
}; |
||||
|
|
||||
|
} |
||||
|
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue