dejavu
Fast probabilistic symmetry detection.
|
The trace invariant. More...
#include <trace.h>
Public Member Functions | |
trace * | get_compare_trace () |
void | op_individualize (const int ind_color) |
void | op_refine_start () |
void | op_refine_cell_start (int) |
void | op_refine_cell_record (int new_color) |
void | op_additional_info (int d) |
void | op_refine_cell_end () |
void | op_refine_end () |
dej_nodiscard bool | blueprint_is_next_cell_active () |
void | blueprint_skip_to_next_cell () |
void | rewind_to_individualization () |
void | skip_to_individualization () |
void | set_compare_trace (trace *new_compare_trace) |
void | set_compare (bool new_compare) |
dej_nodiscard unsigned long | get_hash () const |
void | set_hash (unsigned long new_hash) |
dej_nodiscard bool | trace_equal () const |
void | reset_trace_equal () |
void | reset_trace_unequal () |
void | reset () |
void | set_record (bool new_record) |
void | reserve (const int n) |
void | set_position (int new_position) |
dej_nodiscard int | get_position () const |
The trace invariant.
Class that serves to store and compare the trace of a walk in an individualization-refinement shared_tree. The class provides several different modes in which information is recorded and/or compared.
Specifically, it is possible to (1) record a full trace, (2) compare to a full trace, or (3) compare to a full trace and recording a hash invariant as soon as the new computation deviates from the stored trace (see also ir_mode ).
While comparing to a stored trace (2, 3), the class facilitates the use of the blueprint heuristic, which enables skipping of non-splitting cells in the stored trace.
|
inline |
|
inline |
Only applicable if we are currently comparing to a stored trace (if compare is set).
Skips the position to the start of the next refinement with respect to a color. To be used after blueprint_is_next_cell_active() determined the current color to be non-splitting.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |