IterOrbit
Subgraph isomorphism with iterative graphlet-orbit filtering
Loading...
Searching...
No Matches
Classes | Enumerations
OrderEngine.h File Reference

Matching orders for the search. More...

#include "AppGraph.h"
#include "FilterEngine.h"
#include "OrbitCounter.h"
Include dependency graph for OrderEngine.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  OrderEngine
 Chooses the order in which the search maps the pattern vertices. More...
 

Enumerations

enum class  OrderMode { Orbit , Core , CoreOrbit }
 How the matching order is chosen. More...
 

Detailed Description

Matching orders for the search.

Enumeration Type Documentation

◆ OrderMode

enum class OrderMode
strong

How the matching order is chosen.

A vertex's "backward" neighbours are its neighbours that are already in the order.

Enumerator
Orbit 

Start at the pattern vertex with the largest orbit strength (sum of squared orbit counts); then repeatedly take the vertex with the most backward neighbours, ties by orbit strength.

Core 

The default: the pattern's 2-core before its trees.

Start at the core vertex with the fewest candidates per neighbour; then most backward neighbours, ties by fewest candidates.

CoreOrbit 

As Core, but the dense-orbit score (triangle, 4-cycle, paw-triangle, diamond and 4-clique orbit counts) is compared before the candidate count, and the start is the vertex with the highest such score.