12 #ifndef CPROVER_GOTO_INSTRUMENT_REACHABILITY_SLICER_H
13 #define CPROVER_GOTO_INSTRUMENT_REACHABILITY_SLICER_H
25 const std::list<std::string> &properties,
30 const std::list<std::string> &functions_list,
35 const bool include_forward_reachability,
40 const std::list<std::string> &properties,
41 const bool include_forward_reachability,
44 #define OPT_FP_REACHABILITY_SLICER "(fp-reachability-slice):"
45 #define OPT_REACHABILITY_SLICER "(reachability-slice)(reachability-slice-fb)"
47 #define HELP_FP_REACHABILITY_SLICER \
48 " {y--fp-reachability-slice} {uf} \t " \
49 "remove instructions that cannot appear on a trace that visits all given " \
50 "functions. The list of functions has to be given as a comma separated " \
52 " {y--reachability-slice} \t " \
53 "remove instructions that cannot appear on a trace from entry point to a " \
55 #define HELP_REACHABILITY_SLICER \
56 " {y--reachability-slice-fb} \t " \
57 "remove instructions that cannot appear on a trace from entry point " \
58 "through a property\n"
void function_path_reachability_slicer(goto_modelt &goto_model, const std::list< std::string > &functions_list, message_handlert &)
Perform reachability slicing on goto_model for selected functions.
void reachability_slicer(goto_modelt &, message_handlert &)
Perform reachability slicing on goto_model, with respect to criterion comprising all properties.