diff --git a/src/storm/solver/SymbolicEliminationLinearEquationSolver.h b/src/storm/solver/SymbolicEliminationLinearEquationSolver.h new file mode 100644 index 000000000..cd7cd7ecf --- /dev/null +++ b/src/storm/solver/SymbolicEliminationLinearEquationSolver.h @@ -0,0 +1,19 @@ +#pragma once + +#include "storm/solver/SymbolicLinearEquationSolver.h" + +namespace storm { + namespace solver { + + template + class SymbolicEliminationLinearEquationSolver : public SymbolicLinearEquationSolver { + public: + SymbolicEliminationLinearEquationSolver(storm::dd::Add const& A, storm::dd::Bdd const& allRows, std::set const& rowMetaVariables, std::set const& columnMetaVariables, std::vector> const& rowColumnMetaVariablePairs); + + SymbolicEliminationLinearEquationSolver(storm::dd::Add const& A, storm::dd::Bdd const& allRows, std::set const& rowMetaVariables, std::set const& columnMetaVariables, std::vector> const& rowColumnMetaVariablePairs, double precision, uint_fast64_t maximalNumberOfIterations, bool relative); + + virtual storm::dd::Add solveEquations(storm::dd::Add const& x, storm::dd::Add const& b) const override; + }; + + } +}