See: Description
| Interface | Description |
|---|---|
| FeasibilityFunction |
A FeasibilityFunction is a condition that is evaluated by a
VF2Algorithm in order to determine
whether extending a VF2State by a pair of candidate nodes might still correspond to a valid
graph morphism. |
| Graph |
A model of directed graphs with node and edge labels that is used by
MorphismChecker. |
| MorphismChecker |
A MorphismChecker takes two graphs, called pattern and target, and computes
all graph morphisms from the pattern graph into the target graph.
|
| MorphismOptions | |
| TerminationFunction |
A TerminationFunction determines whether the search for a graph Morphism has to be stopped.
|
| Class | Description |
|---|---|
| AbstractVF2GraphData |
Collects all data required by
VF2Algorithm during the search for a suitable matching for
a single graph. |
| Morphism |
Implementation of a morphism between two
Graphs. |
| VF2Algorithm |
This class implements the VF2 (sub)graph searching algorithm in order to find graph morphisms
between two Graphs.
|
| VF2AlgorithmBuilder |
A builder class to conveniently construct
VF2Algorithms step by step. |
| VF2GraphData | |
| VF2State |
Captures a current, possibly incomplete, candidate for a graph morphism that is constructed step by step
by a
VF2Algorithm. |
Graph.
The result of executing such an algorithm is provided as a Morphism.
Furthermore, all algorithms are executed through the interface
MorphismChecker. Concrete implementations of this interface are found
in de.rwth.i2.attestor.graph.morphism.checkers.
The general algorithm to search and generate graph morphisms implemented in this package is the well-known VF2 Algorithm. Details are found in the paper
A key feature of the version of VF2 in this package is that it is highly modifiable through so-called feasibility functions. Their interface is given by {@link de.rwth.i2.attestor.graph.morphism.FeasibilityFunction}. The set and order of feasibility functions employed by a concrete MorphismChecker determines what kind of graph morphism, such as isomorphism, embedding, and so on, is computed. A collection of already implemented feasibility functions is found in {@link de.rwth.i2.attestor.graph.morphism.feasibility}. Apart from that the termination criterion used by the algorithm is configurable through a TerminationFunction. Existing implementations of these functions are found in {@link de.rwth.i2.attestor.graph.morphism.terminationFunctions}.
Copyright © 2019. All rights reserved.