|
CBMC
|
#include "wp.h"#include "goto_instruction_code.h"#include <util/invariant.h>#include <util/pointer_expr.h>#include <util/std_code.h>
Include dependency graph for wp.cpp:Go to the source code of this file.
Enumerations | |
| enum | aliasingt { aliasingt::A_MAY, aliasingt::A_MUST, aliasingt::A_MUSTNOT } |
| consider possible aliasing More... | |
Functions | |
| bool | has_nondet (const exprt &dest) |
| void | approximate_nondet_rec (exprt &dest, unsigned &count) |
| void | approximate_nondet (exprt &dest) |
| Approximate the non-deterministic choice in a way cheaper than by (proper) quantification. More... | |
| aliasingt | aliasing (const exprt &e1, const exprt &e2, const namespacet &ns) |
| void | substitute_rec (exprt &dest, const exprt &what, const exprt &by, const namespacet &ns) |
| replace 'what' by 'by' in 'dest', considering possible aliasing More... | |
| void | rewrite_assignment (exprt &lhs, exprt &rhs) |
| exprt | wp_assign (const code_assignt &code, const exprt &post, const namespacet &ns) |
| exprt | wp_assume (const code_assumet &code, const exprt &post, const namespacet &) |
| exprt | wp_decl (const code_declt &code, const exprt &post, const namespacet &ns) |
| exprt | wp (const codet &code, const exprt &post, const namespacet &ns) |
| Compute the weakest precondition of the given program piece code with respect to the expression post. More... | |
Weakest Preconditions
Definition in file wp.cpp.
|
strong |
| aliasingt aliasing | ( | const exprt & | e1, |
| const exprt & | e2, | ||
| const namespacet & | ns | ||
| ) |
| void approximate_nondet | ( | exprt & | dest | ) |
| void approximate_nondet_rec | ( | exprt & | dest, |
| unsigned & | count | ||
| ) |
| void substitute_rec | ( | exprt & | dest, |
| const exprt & | what, | ||
| const exprt & | by, | ||
| const namespacet & | ns | ||
| ) |
| exprt wp | ( | const codet & | code, |
| const exprt & | post, | ||
| const namespacet & | ns | ||
| ) |
| exprt wp_assign | ( | const code_assignt & | code, |
| const exprt & | post, | ||
| const namespacet & | ns | ||
| ) |
| exprt wp_assume | ( | const code_assumet & | code, |
| const exprt & | post, | ||
| const namespacet & | |||
| ) |
| exprt wp_decl | ( | const code_declt & | code, |
| const exprt & | post, | ||
| const namespacet & | ns | ||
| ) |