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 
26 void build_goto_trace(
27  const symex_target_equationt &target,
28  const decision_proceduret &decision_procedure,
29  const namespacet &ns,
30  goto_tracet &goto_trace);
31 
39 void build_goto_trace(
40  const symex_target_equationt &target,
41  symex_target_equationt::SSA_stepst::const_iterator last_step_to_keep,
42  const decision_proceduret &decision_procedure,
43  const namespacet &ns,
44  goto_tracet &goto_trace);
45 
46 typedef std::function<bool(
47  symex_target_equationt::SSA_stepst::const_iterator,
48  const decision_proceduret &)>
50 
59 void build_goto_trace(
60  const symex_target_equationt &target,
61  ssa_step_predicatet stop_after_predicate,
62  const decision_proceduret &decision_procedure,
63  const namespacet &ns,
64  goto_tracet &goto_trace);
65 
66 #endif // CPROVER_GOTO_SYMEX_BUILD_GOTO_TRACE_H
symex_target_equation.h
Generate Equation using Symbolic Execution.
ssa_step_predicatet
std::function< bool(symex_target_equationt::SSA_stepst::const_iterator, const decision_proceduret &)> ssa_step_predicatet
Definition: build_goto_trace.h:49
decision_proceduret
Definition: decision_procedure.h:21
namespacet
A namespacet is essentially one or two symbol tables bound together, to allow for symbol lookups in t...
Definition: namespace.h:92
symex_target_equationt
Inheriting the interface of symex_targett this class represents the SSA form of the input program as ...
Definition: symex_target_equation.h:41
goto_symex_state.h
Symbolic Execution.
goto_tracet
Trace of a GOTO program.
Definition: goto_trace.h:171
build_goto_trace
void build_goto_trace(const symex_target_equationt &target, const decision_proceduret &decision_procedure, const namespacet &ns, goto_tracet &goto_trace)
Build a trace by going through the steps of target and stopping at the first failing assertion.
Definition: build_goto_trace.cpp:443