68 EXPECT_EQ(4409ull, statesWithProbability01.first.getNonZeroCount());
69 EXPECT_EQ(1316ull, statesWithProbability01.second.getNonZeroCount());
73 EXPECT_EQ(1091ull, statesWithProbability01.first.getNonZeroCount());
74 EXPECT_EQ(4802ull, statesWithProbability01.second.getNonZeroCount());
78 EXPECT_EQ(5829ull, statesWithProbability01.first.getNonZeroCount());
79 EXPECT_EQ(1032ull, statesWithProbability01.second.getNonZeroCount());
97 EXPECT_EQ(0ull, statesWithProbability01.first.getNonZeroCount());
98 EXPECT_EQ(364ull, statesWithProbability01.second.getNonZeroCount());
102 EXPECT_EQ(0ull, statesWithProbability01.first.getNonZeroCount());
103 EXPECT_EQ(364ull, statesWithProbability01.second.getNonZeroCount());
118 EXPECT_EQ(77ull, statesWithProbability01.first.getNonZeroCount());
119 EXPECT_EQ(149ull, statesWithProbability01.second.getNonZeroCount());
123 EXPECT_EQ(74ull, statesWithProbability01.first.getNonZeroCount());
124 EXPECT_EQ(198ull, statesWithProbability01.second.getNonZeroCount());
128 EXPECT_EQ(94ull, statesWithProbability01.first.getNonZeroCount());
129 EXPECT_EQ(33ull, statesWithProbability01.second.getNonZeroCount());
133 EXPECT_EQ(83ull, statesWithProbability01.first.getNonZeroCount());
134 EXPECT_EQ(35ull, statesWithProbability01.second.getNonZeroCount());
147 ASSERT_NO_THROW(statesWithProbability01 =
149 model->getStates(
"collision_max_backoff")));
150 EXPECT_EQ(993ull, statesWithProbability01.first.getNonZeroCount());
151 EXPECT_EQ(16ull, statesWithProbability01.second.getNonZeroCount());
153 ASSERT_NO_THROW(statesWithProbability01 =
155 model->getStates(
"collision_max_backoff")));
156 EXPECT_EQ(993ull, statesWithProbability01.first.getNonZeroCount());
157 EXPECT_EQ(16ull, statesWithProbability01.second.getNonZeroCount());
164 std::shared_ptr<storm::models::sparse::Model<double>> model =
169 std::pair<storm::storage::BitVector, storm::storage::BitVector> statesWithProbability01;
173 model->getStates(
"observe0Greater1")));
174 EXPECT_EQ(4409ull, statesWithProbability01.first.getNumberOfSetBits());
175 EXPECT_EQ(1316ull, statesWithProbability01.second.getNumberOfSetBits());
179 model->getStates(
"observeIGreater1")));
180 EXPECT_EQ(1091ull, statesWithProbability01.first.getNumberOfSetBits());
181 EXPECT_EQ(4802ull, statesWithProbability01.second.getNumberOfSetBits());
185 model->getStates(
"observeOnlyTrueSender")));
186 EXPECT_EQ(5829ull, statesWithProbability01.first.getNumberOfSetBits());
187 EXPECT_EQ(1032ull, statesWithProbability01.second.getNumberOfSetBits());
193 std::shared_ptr<storm::models::sparse::Model<double>> model =
198 std::pair<storm::storage::BitVector, storm::storage::BitVector> statesWithProbability01;
200 ASSERT_NO_THROW(statesWithProbability01 =
203 EXPECT_EQ(0ull, statesWithProbability01.first.getNumberOfSetBits());
204 EXPECT_EQ(364ull, statesWithProbability01.second.getNumberOfSetBits());
206 ASSERT_NO_THROW(statesWithProbability01 =
209 EXPECT_EQ(0ull, statesWithProbability01.first.getNumberOfSetBits());
210 EXPECT_EQ(364ull, statesWithProbability01.second.getNumberOfSetBits());
220 model->getStates(
"all_coins_equal_0")));
221 EXPECT_EQ(77ull, statesWithProbability01.first.getNumberOfSetBits());
222 EXPECT_EQ(149ull, statesWithProbability01.second.getNumberOfSetBits());
226 model->getStates(
"all_coins_equal_0")));
227 EXPECT_EQ(74ull, statesWithProbability01.first.getNumberOfSetBits());
228 EXPECT_EQ(198ull, statesWithProbability01.second.getNumberOfSetBits());
232 model->getStates(
"all_coins_equal_1")));
233 EXPECT_EQ(94ull, statesWithProbability01.first.getNumberOfSetBits());
234 EXPECT_EQ(33ull, statesWithProbability01.second.getNumberOfSetBits());
238 model->getStates(
"all_coins_equal_1")));
239 EXPECT_EQ(83ull, statesWithProbability01.first.getNumberOfSetBits());
240 EXPECT_EQ(35ull, statesWithProbability01.second.getNumberOfSetBits());
250 model->getStates(
"collision_max_backoff")));
251 EXPECT_EQ(993ull, statesWithProbability01.first.getNumberOfSetBits());
252 EXPECT_EQ(16ull, statesWithProbability01.second.getNumberOfSetBits());
256 model->getStates(
"collision_max_backoff")));
257 EXPECT_EQ(993ull, statesWithProbability01.first.getNumberOfSetBits());
258 EXPECT_EQ(16ull, statesWithProbability01.second.getNumberOfSetBits());
std::pair< storm::storage::BitVector, storm::storage::BitVector > performProb01(storm::models::sparse::DeterministicModel< T > const &model, storm::storage::BitVector const &phiStates, storm::storage::BitVector const &psiStates)
Computes the sets of states that have probability 0 or 1, respectively, of satisfying phi until psi i...
std::pair< storm::storage::BitVector, storm::storage::BitVector > performProb01Max(storm::storage::SparseMatrix< T > const &transitionMatrix, std::vector< uint_fast64_t > const &nondeterministicChoiceIndices, storm::storage::SparseMatrix< T > const &backwardTransitions, storm::storage::BitVector const &phiStates, storm::storage::BitVector const &psiStates)
std::pair< storm::storage::BitVector, storm::storage::BitVector > performProb01Min(storm::storage::SparseMatrix< T > const &transitionMatrix, std::vector< uint_fast64_t > const &nondeterministicChoiceIndices, storm::storage::SparseMatrix< T > const &backwardTransitions, storm::storage::BitVector const &phiStates, storm::storage::BitVector const &psiStates)