Browse Source

Fixed activation for failed nested SPAREs.

If a nested (passive) SPARE is already failed and it becomes activated (through claiming), it will not activate its children.
tempestpy_adaptions
Matthias Volk 4 years ago
parent
commit
868c9fb0fd
No known key found for this signature in database GPG Key ID: 83A57678F739FCD3
  1. 7
      src/storm-dft/storage/dft/DFTState.cpp

7
src/storm-dft/storage/dft/DFTState.cpp

@ -387,11 +387,16 @@ namespace storm {
STORM_LOG_THROW(false, storm::exceptions::NotSupportedException, "BE type '" << be->type() << "' is not supported.");
}
}
} else if (mDft.getElement(elem)->isSpareGate() && !isActive(uses(elem))) {
} else if (mDft.getElement(elem)->isSpareGate()){
if (isOperational(elem)) {
// We do not activate children if the SPARE is already failed
if (!isActive(uses(elem))) {
propagateActivation(uses(elem));
}
}
}
}
}
template<typename ValueType>
uint_fast64_t DFTState<ValueType>::uses(size_t id) const {

Loading…
Cancel
Save