diff --git a/src/storm/solver/IterativeMinMaxLinearEquationSolver.cpp b/src/storm/solver/IterativeMinMaxLinearEquationSolver.cpp index a98bb83f2..51289fb52 100644 --- a/src/storm/solver/IterativeMinMaxLinearEquationSolver.cpp +++ b/src/storm/solver/IterativeMinMaxLinearEquationSolver.cpp @@ -264,13 +264,10 @@ namespace storm { if (!this->hasUniqueSolution()) { requirements.requireNoEndComponents(); } + requirements.requireBounds(false); } else { STORM_LOG_THROW(false, storm::exceptions::InvalidEnvironmentException, "Unsupported technique for iterative MinMax linear equation solver."); } - - if (env.solver().minMax().isForceBoundsSet()) { - requirements.requireBounds(); - } return requirements; } diff --git a/src/storm/solver/NativeLinearEquationSolver.cpp b/src/storm/solver/NativeLinearEquationSolver.cpp index eb8e9d6b9..ca0142249 100644 --- a/src/storm/solver/NativeLinearEquationSolver.cpp +++ b/src/storm/solver/NativeLinearEquationSolver.cpp @@ -957,14 +957,13 @@ namespace storm { template LinearEquationSolverRequirements NativeLinearEquationSolver::getRequirements(Environment const& env) const { LinearEquationSolverRequirements requirements; - if (env.solver().native().isForceBoundsSet()) { - requirements.requireBounds(); - } auto method = getMethod(env, storm::NumberTraits::IsExact); if (method == NativeLinearEquationSolverMethod::IntervalIteration) { requirements.requireBounds(); } else if (method == NativeLinearEquationSolverMethod::RationalSearch) { requirements.requireLowerBounds(); + } else if (method == NativeLinearEquationSolverMethod::SoundValueIteration) { + requirements.requireBounds(false); } return requirements; }