10TEST(DeterministicModelBisimulationDecomposition, Die) {
11 std::shared_ptr<storm::models::sparse::Model<double>> abstractModel =
18 ASSERT_NO_THROW(bisim.computeBisimulationDecomposition());
19 std::shared_ptr<storm::models::sparse::Model<double>> result;
20 ASSERT_NO_THROW(result = bisim.getQuotient());
23 EXPECT_EQ(13ul, result->getNumberOfStates());
24 EXPECT_EQ(20ul, result->getNumberOfTransitions());
27 options.respectedAtomicPropositions = std::set<std::string>({
"one"});
30 ASSERT_NO_THROW(bisim2.computeBisimulationDecomposition());
31 ASSERT_NO_THROW(result = bisim2.getQuotient());
34 EXPECT_EQ(5ul, result->getNumberOfStates());
35 EXPECT_EQ(8ul, result->getNumberOfTransitions());
44 EXPECT_EQ(5ul, result->getNumberOfStates());
45 EXPECT_EQ(8ul, result->getNumberOfTransitions());
56 EXPECT_EQ(5ul, result->getNumberOfStates());
57 EXPECT_EQ(8ul, result->getNumberOfTransitions());
60TEST(DeterministicModelBisimulationDecomposition, Crowds) {
61 std::shared_ptr<storm::models::sparse::Model<double>> abstractModel =
68 std::shared_ptr<storm::models::sparse::Model<double>> result;
69 ASSERT_NO_THROW(bisim.computeBisimulationDecomposition());
70 ASSERT_NO_THROW(result = bisim.getQuotient());
73 EXPECT_EQ(334ul, result->getNumberOfStates());
74 EXPECT_EQ(546ul, result->getNumberOfTransitions());
77 options.respectedAtomicPropositions = std::set<std::string>({
"observe0Greater1"});
80 ASSERT_NO_THROW(bisim2.computeBisimulationDecomposition());
81 ASSERT_NO_THROW(result = bisim2.getQuotient());
84 EXPECT_EQ(65ul, result->getNumberOfStates());
85 EXPECT_EQ(105ul, result->getNumberOfTransitions());
94 EXPECT_EQ(43ul, result->getNumberOfStates());
95 EXPECT_EQ(83ul, result->getNumberOfTransitions());
107 EXPECT_EQ(64ul, result->getNumberOfStates());
108 EXPECT_EQ(104ul, result->getNumberOfTransitions());
119 EXPECT_EQ(65ul, result->getNumberOfStates());
120 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.