cprover
pointer_predicates.h
Go to the documentation of this file.
1 /*******************************************************************\
2 
3 Module: Various predicates over pointers in programs
4 
5 Author: Daniel Kroening, kroening@kroening.com
6 
7 \*******************************************************************/
8 
11 
12 #ifndef CPROVER_UTIL_POINTER_PREDICATES_H
13 #define CPROVER_UTIL_POINTER_PREDICATES_H
14 
15 class exprt;
16 class namespacet;
17 class typet;
18 
19 exprt same_object(const exprt &p1, const exprt &p2);
20 exprt deallocated(const exprt &pointer, const namespacet &);
21 exprt dead_object(const exprt &pointer, const namespacet &);
23 exprt pointer_offset(const exprt &pointer);
24 exprt pointer_object(const exprt &pointer);
25 exprt malloc_object(const exprt &pointer, const namespacet &);
26 exprt object_size(const exprt &pointer);
27 exprt dynamic_object(const exprt &pointer);
28 exprt good_pointer(const exprt &pointer);
29 exprt good_pointer_def(const exprt &pointer, const namespacet &);
30 exprt null_object(const exprt &pointer);
31 exprt null_pointer(const exprt &pointer);
32 exprt integer_address(const exprt &pointer);
33 exprt invalid_pointer(const exprt &pointer);
35  const exprt &pointer,
36  const namespacet &,
37  const exprt &offset);
39  const exprt &pointer,
40  const namespacet &,
41  const exprt &access_size);
43  const exprt &pointer,
44  const namespacet &,
45  const exprt &offset);
47  const exprt &pointer,
48  const namespacet &,
49  const exprt &access_size);
50 
51 #endif // CPROVER_UTIL_POINTER_PREDICATES_H
object_lower_bound
exprt object_lower_bound(const exprt &pointer, const namespacet &, const exprt &offset)
Definition: pointer_predicates.cpp:221
dynamic_object_upper_bound
exprt dynamic_object_upper_bound(const exprt &pointer, const namespacet &, const exprt &access_size)
Definition: pointer_predicates.cpp:154
typet
The type of an expression, extends irept.
Definition: type.h:27
exprt
Base class for all expressions.
Definition: expr.h:54
dynamic_object
exprt dynamic_object(const exprt &pointer)
Definition: pointer_predicates.cpp:71
dynamic_object_lower_bound
exprt dynamic_object_lower_bound(const exprt &pointer, const namespacet &, const exprt &offset)
Definition: pointer_predicates.cpp:146
dead_object
exprt dead_object(const exprt &pointer, const namespacet &)
Definition: pointer_predicates.cpp:58
namespacet
A namespacet is essentially one or two symbol tables bound together, to allow for symbol lookups in t...
Definition: namespace.h:93
malloc_object
exprt malloc_object(const exprt &pointer, const namespacet &)
Definition: pointer_predicates.cpp:42
good_pointer_def
exprt good_pointer_def(const exprt &pointer, const namespacet &)
Definition: pointer_predicates.cpp:83
deallocated
exprt deallocated(const exprt &pointer, const namespacet &)
Definition: pointer_predicates.cpp:50
integer_address
exprt integer_address(const exprt &pointer)
Definition: pointer_predicates.cpp:128
null_object
exprt null_object(const exprt &pointer)
Definition: pointer_predicates.cpp:122
pointer_object
exprt pointer_object(const exprt &pointer)
Definition: pointer_predicates.cpp:22
same_object
exprt same_object(const exprt &p1, const exprt &p2)
Definition: pointer_predicates.cpp:27
object_upper_bound
exprt object_upper_bound(const exprt &pointer, const namespacet &, const exprt &access_size)
Definition: pointer_predicates.cpp:187
object_size
exprt object_size(const exprt &pointer)
Definition: pointer_predicates.cpp:32
dynamic_size
exprt dynamic_size(const namespacet &)
Definition: pointer_predicates.cpp:66
invalid_pointer
exprt invalid_pointer(const exprt &pointer)
Definition: pointer_predicates.cpp:141
good_pointer
exprt good_pointer(const exprt &pointer)
Definition: pointer_predicates.cpp:78
null_pointer
exprt null_pointer(const exprt &pointer)
Definition: pointer_predicates.cpp:135
pointer_offset
exprt pointer_offset(const exprt &pointer)
Definition: pointer_predicates.cpp:37