12#ifndef MCRL2_PBES_PBESINST_STRATEGY_H
13#define MCRL2_PBES_PBESINST_STRATEGY_H
15#include "mcrl2/utilities/exception.h"
20namespace mcrl2::pbes_system {
38 else if (s ==
"alternative-lazy")
48 throw mcrl2::
runtime_error(
"unknown pbesinst strategy specified (got `" + s +
"')");
59 s = parse_pbesinst_strategy(str);
63 is.setstate(
std::ios_base::failbit);
78 return "alternative-lazy";
84 throw mcrl2::runtime_error(
"unknown pbesinst strategy");
90 os << print_pbesinst_strategy(strategy);
100 return "for computing all possible boolean equations";
104 return "an alternative version of the lazy strategy that supports more options";
108 return "for computing only boolean equations which can be reached from the initial state";
110 throw mcrl2::runtime_error(
"unknown pbesinst strategy");
Standard exception class for reporting runtime errors.
std::istream & operator>>(std::istream &is, pbesinst_strategy &s)
pbesinst_strategy
pbesinst transformation strategies
@ pbesinst_finite_strategy
@ pbesinst_alternative_lazy_strategy
pbesinst_strategy parse_pbesinst_strategy(const std::string &s)
Parse a pbesinst transformation strategy.
std::string print_pbesinst_strategy(const pbesinst_strategy strategy)
Returns a string representation of a pbesinst transformation strategy.
std::string description(const pbesinst_strategy strategy)
Returns a string representation of a pbesinst transformation strategy.
std::size_t operator()(const std::vector< X > &v) const