9TEST(DeterministicModelBisimulationDecomposition, Die) {
10 std::shared_ptr<storm::models::sparse::Model<double>> abstractModel =
17 ASSERT_NO_THROW(bisim.computeBisimulationDecomposition());
18 std::shared_ptr<storm::models::sparse::Model<double>> result;
19 ASSERT_NO_THROW(result = bisim.getQuotient());
22 EXPECT_EQ(13ul, result->getNumberOfStates());
23 EXPECT_EQ(20ul, result->getNumberOfTransitions());
30 options.respectedAtomicPropositions = std::set<std::string>({
"one"});
33 ASSERT_NO_THROW(bisim2.computeBisimulationDecomposition());
34 ASSERT_NO_THROW(result = bisim2.getQuotient());
37 EXPECT_EQ(5ul, result->getNumberOfStates());
38 EXPECT_EQ(8ul, result->getNumberOfTransitions());
47 EXPECT_EQ(5ul, result->getNumberOfStates());
48 EXPECT_EQ(8ul, result->getNumberOfTransitions());
59 EXPECT_EQ(5ul, result->getNumberOfStates());
60 EXPECT_EQ(8ul, result->getNumberOfTransitions());
63TEST(DeterministicModelBisimulationDecomposition, Crowds) {
64 std::shared_ptr<storm::models::sparse::Model<double>> abstractModel =
71 std::shared_ptr<storm::models::sparse::Model<double>> result;
72 ASSERT_NO_THROW(bisim.computeBisimulationDecomposition());
73 ASSERT_NO_THROW(result = bisim.getQuotient());
76 EXPECT_EQ(334ul, result->getNumberOfStates());
77 EXPECT_EQ(546ul, result->getNumberOfTransitions());
84 options.respectedAtomicPropositions = std::set<std::string>({
"observe0Greater1"});
87 ASSERT_NO_THROW(bisim2.computeBisimulationDecomposition());
88 ASSERT_NO_THROW(result = bisim2.getQuotient());
91 EXPECT_EQ(65ul, result->getNumberOfStates());
92 EXPECT_EQ(105ul, result->getNumberOfTransitions());
101 EXPECT_EQ(43ul, result->getNumberOfStates());
102 EXPECT_EQ(83ul, result->getNumberOfTransitions());
114 EXPECT_EQ(64ul, result->getNumberOfStates());
115 EXPECT_EQ(104ul, result->getNumberOfTransitions());
126 EXPECT_EQ(65ul, result->getNumberOfStates());
127 EXPECT_EQ(105ul, result->getNumberOfTransitions());
static std::shared_ptr< storm::models::sparse::Model< ValueType, storm::models::sparse::StandardRewardModel< RewardValueType > > > parseModel(std::string const &transitionsFilename, std::string const &labelingFilename, std::string const &stateRewardFilename="", std::string const &transitionRewardFilename="", std::string const &choiceLabelingFilename="")
Checks the given files and parses the model within these files.