From 03e0b01ae2fe366bc9e91cb2d1969579bcde356b Mon Sep 17 00:00:00 2001 From: Sebastian Junges Date: Thu, 16 Jul 2020 20:52:54 -0700 Subject: [PATCH] Making POMDPs simple now does not introduce further initial states --- src/storm-pomdp/transformer/BinaryPomdpTransformer.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/storm-pomdp/transformer/BinaryPomdpTransformer.cpp b/src/storm-pomdp/transformer/BinaryPomdpTransformer.cpp index 358ad3041..baace3c5f 100644 --- a/src/storm-pomdp/transformer/BinaryPomdpTransformer.cpp +++ b/src/storm-pomdp/transformer/BinaryPomdpTransformer.cpp @@ -141,8 +141,11 @@ namespace storm { for (auto const& labelName : pomdp.getStateLabeling().getLabels()) { storm::storage::BitVector newStates = pomdp.getStateLabeling().getStates(labelName); newStates.resize(data.simpleMatrix.getRowGroupCount(), false); - for (uint64_t newState = pomdp.getNumberOfStates(); newState < data.simpleMatrix.getRowGroupCount(); ++newState ) { - newStates.set(newState, newStates[data.simpleStateToOriginalState[newState]]); + if (labelName != "init") { + for (uint64_t newState = pomdp.getNumberOfStates(); + newState < data.simpleMatrix.getRowGroupCount(); ++newState) { + newStates.set(newState, newStates[data.simpleStateToOriginalState[newState]]); + } } labeling.addLabel(labelName, std::move(newStates));