cprover
symex_complexity_limit_exceeded_action.h
Go to the documentation of this file.
1 // Copyright 2016-2019 Diffblue Limited. All Rights Reserved.
2 
3 #ifndef CPROVER_GOTO_SYMEX_SYMEX_COMPLEXITY_LIMIT_EXCEEDED_ACTION_H
4 #define CPROVER_GOTO_SYMEX_SYMEX_COMPLEXITY_LIMIT_EXCEEDED_ACTION_H
5 
6 #include "complexity_limiter.h"
7 #include "complexity_violation.h"
8 #include <util/std_expr.h>
9 
13 {
14 public:
15  virtual void transform(
16  const complexity_violationt heuristic_result,
17  goto_symex_statet &current_state)
18  {
19  current_state.reachable = false;
20  }
22  {
23  }
24 };
25 
26 #endif // CPROVER_GOTO_SYMEX_SYMEX_COMPLEXITY_LIMIT_EXCEEDED_ACTION_H
bool reachable
Is this code reachable? If not we can take shortcuts such as not entering function calls,...
Definition: goto_state.h:58
Central data structure: state.
Default heuristic transformation that cancels branches when complexity has been breached.
virtual void transform(const complexity_violationt heuristic_result, goto_symex_statet &current_state)
Symbolic Execution.
complexity_violationt
What sort of symex-complexity violation has taken place.
API to expression classes.