cprover
build_goto_trace.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module: Traces of GOTO Programs
4 
5 Author: Daniel Kroening
6 
7 Date: July 2005
8 
9 \*******************************************************************/
10 
13 
14 #ifndef CPROVER_GOTO_SYMEX_BUILD_GOTO_TRACE_H
15 #define CPROVER_GOTO_SYMEX_BUILD_GOTO_TRACE_H
16 
17 #include "symex_target_equation.h"
18 #include "goto_symex_state.h"
19 
20 // builds a trace that stops at first failing assertion
21 void build_goto_trace(
22  const symex_target_equationt &target,
23  const prop_convt &prop_conv,
24  const namespacet &ns,
25  goto_tracet &goto_trace);
26 
27 // builds a trace that stops after the given step
28 void build_goto_trace(
29  const symex_target_equationt &target,
30  symex_target_equationt::SSA_stepst::const_iterator last_step_to_keep,
31  const prop_convt &prop_conv,
32  const namespacet &ns,
33  goto_tracet &goto_trace);
34 
35 typedef std::function<
36  bool(symex_target_equationt::SSA_stepst::const_iterator, const prop_convt &)>
38 
39 // builds a trace that stops after the step matching a given condition
40 void build_goto_trace(
41  const symex_target_equationt &target,
42  ssa_step_predicatet stop_after_predicate,
43  const prop_convt &prop_conv,
44  const namespacet &ns,
45  goto_tracet &goto_trace);
46 
47 #endif // CPROVER_GOTO_SYMEX_BUILD_GOTO_TRACE_H
Generate Equation using Symbolic Execution.
Symbolic Execution.
std::function< bool(symex_target_equationt::SSA_stepst::const_iterator, const prop_convt &)> ssa_step_predicatet
void build_goto_trace(const symex_target_equationt &target, const prop_convt &prop_conv, const namespacet &ns, goto_tracet &goto_trace)
TO_BE_DOCUMENTED.
Definition: namespace.h:74
TO_BE_DOCUMENTED.
Definition: goto_trace.h:152