cprover
|
#include <union_find.h>
Classes | |
struct | nodet |
Public Types | |
typedef std::size_t | size_type |
Public Member Functions | |
void | make_union (size_type a, size_type b) |
size_type | find (size_type a) const |
void | intersection (const unsigned_union_find &other) |
void | isolate (size_type a) |
void | swap (unsigned_union_find &other) |
void | resize (size_type size) |
void | clear () |
bool | is_root (size_type a) const |
bool | same_set (size_type a, size_type b) const |
size_type | size () const |
size_type | count (size_type a) const |
void | check_index (size_type a) |
size_type | count_roots () const |
void | re_root (size_type old, size_type new_root) |
size_type | get_other (size_type a) |
Protected Attributes | |
std::vector< nodet > | nodes |
Definition at line 22 of file union_find.h.
typedef std::size_t unsigned_union_find::size_type |
Definition at line 26 of file union_find.h.
|
inline |
Definition at line 108 of file union_find.h.
References resize(), and size().
Referenced by invariant_sett::add(), get_other(), isolate(), make_union(), and re_root().
|
inline |
Definition at line 73 of file union_find.h.
References nodes.
Referenced by union_find< exprt >::clear(), invariant_sett::make_false(), and invariant_sett::make_true().
Definition at line 100 of file union_find.h.
References find(), nodes, and size().
Referenced by get_other(), make_union(), local_may_aliast::output(), invariant_sett::output(), and re_root().
|
inline |
Definition at line 115 of file union_find.h.
References is_root(), and nodes.
Referenced by invariant_sett::make_union().
unsigned_union_find::size_type unsigned_union_find::find | ( | size_type | a | ) | const |
Definition at line 145 of file union_find.cpp.
References is_root(), nodes, and size().
Referenced by invariant_sett::add(), invariant_sett::add_eq(), count(), union_find< exprt >::find_number(), invariant_sett::get_constant(), get_other(), intersection(), isolate(), make_union(), local_may_aliast::loc_infot::merge(), local_may_aliast::output(), invariant_sett::output(), re_root(), and same_set().
unsigned_union_find::size_type unsigned_union_find::get_other | ( | size_type | a | ) |
Definition at line 108 of file union_find.cpp.
References check_index(), count(), find(), nodes, and size().
Referenced by isolate().
void unsigned_union_find::intersection | ( | const unsigned_union_find & | other | ) |
Definition at line 124 of file union_find.cpp.
References find(), is_root(), make_union(), resize(), same_set(), size(), and swap().
Referenced by invariant_sett::make_union().
|
inline |
Definition at line 79 of file union_find.h.
Referenced by count_roots(), find(), intersection(), union_find< exprt >::is_root(), union_find< exprt >::is_root_number(), isolate(), invariant_sett::output(), and re_root().
void unsigned_union_find::isolate | ( | size_type | a | ) |
Definition at line 41 of file union_find.cpp.
References check_index(), find(), get_other(), is_root(), nodes, r, and re_root().
Referenced by local_may_aliast::assign_lhs(), local_may_aliast::build(), union_find< exprt >::isolate(), and invariant_sett::modifies().
Definition at line 13 of file union_find.cpp.
References check_index(), count(), find(), and nodes.
Referenced by invariant_sett::add_eq(), local_may_aliast::assign_lhs(), local_may_aliast::build(), intersection(), union_find< exprt >::make_union(), and local_may_aliast::loc_infot::merge().
Definition at line 74 of file union_find.cpp.
References check_index(), count(), find(), is_root(), nodes, r, and size().
Referenced by isolate().
|
inline |
Definition at line 64 of file union_find.h.
Referenced by check_index(), intersection(), and union_find< exprt >::number().
Definition at line 88 of file union_find.h.
References find().
Referenced by local_may_aliast::get_rec(), invariant_sett::has_eq(), intersection(), local_may_aliast::loc_infot::merge(), and union_find< exprt >::same_set().
|
inline |
Definition at line 94 of file union_find.h.
References nodes.
Referenced by invariant_sett::add(), invariant_sett::add_eq(), check_index(), count(), find(), invariant_sett::get_constant(), get_other(), local_may_aliast::get_rec(), intersection(), is_root(), local_may_aliast::loc_infot::merge(), union_find< exprt >::number(), local_may_aliast::output(), invariant_sett::output(), re_root(), and resize().
|
inline |
|
mutableprotected |
Definition at line 41 of file union_find.h.
Referenced by clear(), count(), count_roots(), find(), get_other(), is_root(), isolate(), make_union(), re_root(), resize(), size(), and swap().