Packages

abstract class GraphMatcher[TLabel] extends AnyRef

The GraphMatcher abstract class serves as a template for implementing specific algorithms for graph pattern matching.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. GraphMatcher
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new GraphMatcher(g: Graph[TLabel], q: Graph[TLabel])(implicit arg0: ClassTag[TLabel])

    g

    the data graph G(V, E, l) with vertices v in V

    q

    the query graph Q(U, D, k) with vertices u in U

Abstract Value Members

  1. abstract def prune(phi: Array[Set[Int]]): Array[Set[Int]]

    Given the mappings 'phi' produced by the 'feasibleMates' method, prune mappings 'u -> v' where v's children fail to match u's.

    Given the mappings 'phi' produced by the 'feasibleMates' method, prune mappings 'u -> v' where v's children fail to match u's.

    phi

    array of mappings from a query vertex u to { graph vertices v }

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. val CHECK: Int
    Attributes
    protected
  5. val LIMIT: Double
    Attributes
    protected
  6. val SELF_LOOPS: Boolean
    Attributes
    protected
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def bijections(): Set[Array[Int]]

    Apply a graph pattern matching algorithm to find subgraphs of data graph 'g' that isomorphically match query graph 'q'.

    Apply a graph pattern matching algorithm to find subgraphs of data graph 'g' that isomorphically match query graph 'q'. These are represented by a set of single-valued bijections {'psi'} where each 'psi' function maps each query graph vertex 'u' to a data graph vertices 'v'.

  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  10. def countMappings(phi: Array[Set[Int]]): Pair

    Count the number of mappings between query graph vertices 'u_i' and their sets of data graph vertices {v}, giving the number of distinct vertices and edges.

    Count the number of mappings between query graph vertices 'u_i' and their sets of data graph vertices {v}, giving the number of distinct vertices and edges.

    phi

    the set-valued mapping function

  11. def disjoint(set1: Set[Int], set2: Set[Int]): Boolean

    Determine whether two sets are disjoints, i.e., have an empty intersection.

    Determine whether two sets are disjoints, i.e., have an empty intersection.

    set1

    the first set

    set2

    the second set

  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  14. def feasibleMates(): Array[Set[Int]]

    Create an initial array of feasible mappings 'phi' from each query vertex 'u' to the corresponding set of data graph vertices '{v}' whose label matches 'u's.

  15. def feasibleMatesW(): Array[Set[Int]]

    Create an initial array of feasible mappings 'phi' from each query vertex 'u' to the corresponding set of data graph vertices '{v}' whose label matches 'u's.

    Create an initial array of feasible mappings 'phi' from each query vertex 'u' to the corresponding set of data graph vertices '{v}' whose label matches 'u's. This version handles query graph labels that have wildcards.

  16. def filterGraph(phi: Array[Set[Int]]): Graph[TLabel]

    Filter the data graph by consider only those vertices and edges which are part of feasible matches after performing initial dual simulation.

    Filter the data graph by consider only those vertices and edges which are part of feasible matches after performing initial dual simulation.

    phi

    mappings from a query vertex u_q to { graph vertices v_g }

  17. val gRange: Range
    Attributes
    protected
  18. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  19. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  20. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  21. def mappings(): Array[Set[Int]]

    Apply a graph pattern matching algorithm to find the mappings from the query graph 'q' to the data graph 'g'.

    Apply a graph pattern matching algorithm to find the mappings from the query graph 'q' to the data graph 'g'. These are represented by a multi-valued function 'phi' that maps each query graph vertex 'u' to a set of data graph vertices '{v}'.

  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  24. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  25. val qRange: Range
    Attributes
    protected
  26. def showMappings(phi: Array[Set[Int]]): Unit

    Show all mappings between query graph vertices 'u_i' and their sets of data graph vertices {v}.

    Show all mappings between query graph vertices 'u_i' and their sets of data graph vertices {v}.

    phi

    the set-valued mapping function

  27. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  28. def test(name: String, ans: Array[Set[Int]] = null): Array[Set[Int]]

    Test the Graph Pattern Matcher.

    Test the Graph Pattern Matcher.

    ans

    the correct answer

  29. def toString(): String
    Definition Classes
    AnyRef → Any
  30. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  31. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  32. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from AnyRef

Inherited from Any

Ungrouped