40 const std::vector<int>& order,
long long budget = 20000000);
The graph type shared by the pattern, the data graph and its induced subgraphs.
Graphlet orbit counting on top of the Escape/EVOKE library.
std::vector< std::vector< long long > > OrbitCounts
Graphlet orbit counts of a graph: counts[i][k] is the number of non-induced occurrences of orbit k ro...
Definition OrbitCounter.h:16
SymmetryBreaking computeSymmetryBreaking(const AppGraph &pattern, const OrbitCounts &orbits, const std::vector< int > &order, long long budget=20000000)
Computes the constraints for pattern under the matching order order (node IDs).
Definition Symmetry.cpp:143
Symmetry-breaking constraints for counting embeddings (Grochow and Kellis).
Definition Symmetry.h:17
std::vector< std::vector< int > > smaller_than
smaller_than[w]: the pattern vertices (internal indices) whose image must have a smaller data node ID...
Definition Symmetry.h:20
long long work
Work units spent, against the budget.
Definition Symmetry.h:30
int levels
Number of vertices whose orbit contributed constraints.
Definition Symmetry.h:25
uint64_t multiplier
Number of embeddings each counted one stands for: the product of the orbit sizes used,...
Definition Symmetry.h:23
bool truncated
The work budget ran out, or the multiplier would overflow.
Definition Symmetry.h:28