V
- the type of the verticesE
- the type of the edgespublic class VF2SubgraphIsomorphismInspector<V,E> extends VF2AbstractIsomorphismInspector<V,E>
Note that this inspector only finds isomorphisms between a smaller graph and all induced subgraphs of a larger graph. It does not find isomorphisms between the smaller graph and arbitrary subgraphs of the larger graph. For example, given as input the cubical graph $Q_{3}$ and the square graph, isomorphic mappings will be found between the square and the faces of the cube. However, given the complete graph $K_{5}$ and the square graph as input, no isomorphisms will be found since all induced subgraphs of a complete graph are themselves complete graphs.
Consequently, in the case where both input graphs have the same number of vertices, this
algorithm is equivalent to running VF2GraphIsomorphismInspector
.
This implementation of the VF2 algorithm does not support graphs with multiple (parallel) edges.
edgeComparator, graph1, graph2, ordering1, ordering2, vertexComparator
Constructor and Description |
---|
VF2SubgraphIsomorphismInspector(Graph<V,E> graph1,
Graph<V,E> graph2)
Construct a new VF2 subgraph isomorphism inspector.
|
VF2SubgraphIsomorphismInspector(Graph<V,E> graph1,
Graph<V,E> graph2,
boolean cacheEdges)
Construct a new VF2 subgraph isomorphism inspector.
|
VF2SubgraphIsomorphismInspector(Graph<V,E> graph1,
Graph<V,E> graph2,
Comparator<V> vertexComparator,
Comparator<E> edgeComparator)
Construct a new VF2 subgraph isomorphism inspector.
|
VF2SubgraphIsomorphismInspector(Graph<V,E> graph1,
Graph<V,E> graph2,
Comparator<V> vertexComparator,
Comparator<E> edgeComparator,
boolean cacheEdges)
Construct a new VF2 subgraph isomorphism inspector.
|
Modifier and Type | Method and Description |
---|---|
org.jgrapht.alg.isomorphism.VF2SubgraphMappingIterator<V,E> |
getMappings()
Get an iterator over all calculated (isomorphic) mappings between two graphs.
|
isomorphismExists
public VF2SubgraphIsomorphismInspector(Graph<V,E> graph1, Graph<V,E> graph2, Comparator<V> vertexComparator, Comparator<E> edgeComparator, boolean cacheEdges)
graph1
- the first graphgraph2
- the second graph (possible induced subgraph of graph1)vertexComparator
- comparator for semantic equivalence of verticesedgeComparator
- comparator for semantic equivalence of edgescacheEdges
- if true, edges get cached for faster accesspublic VF2SubgraphIsomorphismInspector(Graph<V,E> graph1, Graph<V,E> graph2, Comparator<V> vertexComparator, Comparator<E> edgeComparator)
graph1
- the first graphgraph2
- the second graph (possible induced subgraph of graph1)vertexComparator
- comparator for semantic equivalence of verticesedgeComparator
- comparator for semantic equivalence of edgespublic VF2SubgraphIsomorphismInspector(Graph<V,E> graph1, Graph<V,E> graph2, boolean cacheEdges)
graph1
- the first graphgraph2
- the second graph (possible induced subgraph of graph1)cacheEdges
- if true, edges get cached for faster accesspublic org.jgrapht.alg.isomorphism.VF2SubgraphMappingIterator<V,E> getMappings()
IsomorphismInspector
getMappings
in interface IsomorphismInspector<V,E>
getMappings
in class VF2AbstractIsomorphismInspector<V,E>
Copyright © 2019. All rights reserved.