#include "storm/solver/SolverSelectionOptions.h" namespace storm { namespace solver { std::string toString(MinMaxMethod m) { switch(m) { case MinMaxMethod::PolicyIteration: return "policy"; case MinMaxMethod::ValueIteration: return "value"; case MinMaxMethod::LinearProgramming: return "linearprogramming"; case MinMaxMethod::Topological: return "topological"; case MinMaxMethod::RationalSearch: return "ratsearch"; case MinMaxMethod::IntervalIteration: return "intervaliteration"; case MinMaxMethod::SoundValueIteration: return "soundvalueiteration"; case MinMaxMethod::TopologicalCuda: return "topologicalcuda"; case MinMaxMethod::ViToPi: return "vi-to-pi"; } return "invalid"; } std::string toString(MultiplierType t) { switch(t) { case MultiplierType::Native: return "Native"; case MultiplierType::Gmmxx: return "Gmmxx"; } return "invalid"; } std::string toString(GameMethod m) { switch(m) { case GameMethod::ValueIteration: return "valueiteration"; case GameMethod::PolicyIteration: return "PolicyIteration"; } return "invalid"; } std::string toString(LraMethod m) { switch(m) { case LraMethod::LinearProgramming: return "linear-programming"; case LraMethod::ValueIteration: return "value-iteration"; case LraMethod::LraDistributionEquations: return "lra-distribution-equations"; case LraMethod::GainBiasEquations: return "gain-bias-equations"; } return "invalid"; } std::string toString(MaBoundedReachabilityMethod m) { switch(m) { case MaBoundedReachabilityMethod::Imca: return "imca"; case MaBoundedReachabilityMethod::UnifPlus: return "unifplus"; } return "invalid"; } std::string toString(LpSolverType t) { switch(t) { case LpSolverType::Gurobi: return "Gurobi"; case LpSolverType::Glpk: return "Glpk"; case LpSolverType::Z3: return "Z3"; } return "invalid"; } std::string toString(EquationSolverType t) { switch(t) { case EquationSolverType::Native: return "Native"; case EquationSolverType::Gmmxx: return "Gmmxx"; case EquationSolverType::Eigen: return "Eigen"; case EquationSolverType::Elimination: return "Elimination"; case EquationSolverType::Topological: return "Topological"; } return "invalid"; } std::string toString(SmtSolverType t) { switch(t) { case SmtSolverType::Z3: return "Z3"; case SmtSolverType::Mathsat: return "Mathsat"; } return "invalid"; } std::string toString(NativeLinearEquationSolverMethod t) { switch(t) { case NativeLinearEquationSolverMethod::Jacobi: return "Jacobi"; case NativeLinearEquationSolverMethod::GaussSeidel: return "GaussSeidel"; case NativeLinearEquationSolverMethod::SOR: return "SOR"; case NativeLinearEquationSolverMethod::WalkerChae: return "WalkerChae"; case NativeLinearEquationSolverMethod::Power: return "Power"; case NativeLinearEquationSolverMethod::SoundValueIteration: return "SoundValueIteration"; case NativeLinearEquationSolverMethod::IntervalIteration: return "IntervalIteration"; case NativeLinearEquationSolverMethod::RationalSearch: return "RationalSearch"; } return "invalid"; } std::string toString(GmmxxLinearEquationSolverMethod t) { switch (t) { case GmmxxLinearEquationSolverMethod::Bicgstab: return "BiCGSTAB"; case GmmxxLinearEquationSolverMethod::Qmr: return "QMR"; case GmmxxLinearEquationSolverMethod::Gmres: return "GMRES"; } return "invalid"; } std::string toString(GmmxxLinearEquationSolverPreconditioner t) { switch (t) { case GmmxxLinearEquationSolverPreconditioner::Diagonal: return "diagonal"; case GmmxxLinearEquationSolverPreconditioner::Ilu: return "ilu"; case GmmxxLinearEquationSolverPreconditioner::None: return "none"; } return "invalid"; } std::string toString(EigenLinearEquationSolverMethod t) { switch (t) { case EigenLinearEquationSolverMethod::SparseLU: return "SparseLU"; case EigenLinearEquationSolverMethod::Bicgstab: return "BiCGSTAB"; case EigenLinearEquationSolverMethod::DGmres: return "DGMRES"; case EigenLinearEquationSolverMethod::Gmres: return "GMRES"; } return "invalid"; } std::string toString(EigenLinearEquationSolverPreconditioner t) { switch (t) { case EigenLinearEquationSolverPreconditioner::Diagonal: return "diagonal"; case EigenLinearEquationSolverPreconditioner::Ilu: return "ilu"; case EigenLinearEquationSolverPreconditioner::None: return "none"; } return "invalid"; } } }