- if (value != "none" && value != "dpor")
- xbt_die("configuration option 'model-check/reduction' can only take 'none' or 'dpor' as a value");
+ if (value != "none" && value != "dpor" && value != "sdpor" && value != "odpor" && value != "udpor")
+ xbt_die("configuration option 'model-check/reduction' must be one of the following: "
+ " 'none', 'dpor', 'sdpor', 'odpor', or 'udpor'");
+ }};
+
+simgrid::config::Flag<std::string> _sg_mc_strategy{
+ "model-check/strategy",
+ "Specify the the kind of heuristic to use for guided model-checking",
+ "none",
+ {{"none", "No specific strategy: simply pick the first available transistion and act as a DFS."},
+ {"max_match_comm", "Try to minimize the number of in-fly communication by appairing matching send and receive."},
+ {"min_match_comm", "Try to maximize the number of in-fly communication by not appairing matching send and receive."},
+ {"uniform", "No specific strategy: choices are made randomly based on a uniform sampling."}