Papers
Topics
Authors
Recent
Search
2000 character limit reached

FastQC: γ-Quasi-Clique Enumeration

Updated 18 March 2026
  • FastQC is a branch-and-bound algorithm that efficiently enumerates maximal γ-quasi-cliques in undirected graphs through advanced pruning and branching rules.
  • It employs size–disconnection pruning and symmetry-exploiting candidate refinement to limit the search space and ensure the QC maximality property.
  • The divide-and-conquer variant, DCFastQC, accelerates processing on large or dense graphs, achieving up to 100× speedup over previous approaches.

FastQC is a branch-and-bound (BB) algorithm designed for the efficient enumeration of all large maximal γ\gamma-quasi-cliques (MQCs) in undirected graphs. The method introduces co-designed pruning and branching rules to overcome time complexity barriers of prior approaches, complemented by a divide-and-conquer enhancement. FastQC enables the practical discovery of cohesive subgraph structures at scales and densities previously infeasible due to both theoretical worst-case bounds and empirical performance bottlenecks (Yu et al., 2023).

1. Problem Formulation: Maximal γ-Quasi-Clique Enumeration

Let G=(V,E)G = (V, E) be an undirected graph with n=∣V∣n = |V| vertices. Fix a density parameter γ∈[0.5,1]\gamma \in [0.5, 1] and a size threshold σ>0\sigma > 0.

  • γ-Quasi-Clique (γ-QC): An induced subgraph G[H]G[H] (H⊆VH \subseteq V) is a γ\gamma-quasi-clique if:
    1. G[H]G[H] is connected; and
    2. For every v∈Hv \in H, G=(V,E)G = (V, E)0.

Equivalently, defining the maximum number of disconnections in G=(V,E)G = (V, E)1 as

G=(V,E)G = (V, E)2

we require G=(V,E)G = (V, E)3, where G=(V,E)G = (V, E)4.

  • Maximal γ-Quasi-Clique (MQC): A G=(V,E)G = (V, E)5-QC G=(V,E)G = (V, E)6 is maximal if no G=(V,E)G = (V, E)7 exists such that G=(V,E)G = (V, E)8 is also a G=(V,E)G = (V, E)9-QC.
  • Enumeration Problem (MQCE): Output all MQCs in n=∣V∣n = |V|0 of size at least n=∣V∣n = |V|1.

Since QC maximality checking is NP-hard and the QC family is non-hereditary, enumeration is typically staged:

  1. Enumerate a superset n=∣V∣n = |V|2 containing all MQCs.
  2. Filter n=∣V∣n = |V|3 for maximality.

FastQC addresses the superset enumeration stage via an advanced BB framework.

2. Branch-and-Bound Framework in FastQC

FastQC explores the space of vertex subsets using a recursive BB search, where each node (branch) is represented by a triple n=∣V∣n = |V|4:

  • n=∣V∣n = |V|5: current partial set (must-include vertices)
  • n=∣V∣n = |V|6: candidate set (potential additions to n=∣V∣n = |V|7)
  • n=∣V∣n = |V|8: excluded set (must-not-include vertices)

Subsets n=∣V∣n = |V|9 satisfying γ∈[0.5,1]\gamma \in [0.5, 1]0, γ∈[0.5,1]\gamma \in [0.5, 1]1, γ∈[0.5,1]\gamma \in [0.5, 1]2 are explored under each node.

The high-level recursive process FastQC-Rec(S, C, D) operates as follows:

  • Apply pruning (described in Section 3).
  • If candidate set γ∈[0.5,1]\gamma \in [0.5, 1]3 is empty, test γ∈[0.5,1]\gamma \in [0.5, 1]4 for being a γ∈[0.5,1]\gamma \in [0.5, 1]5-QC (output if γ∈[0.5,1]\gamma \in [0.5, 1]6).
  • When an early-stop maximality criterion is satisfied, output γ∈[0.5,1]\gamma \in [0.5, 1]7 as a found MQC.
  • Otherwise, select a pivot γ∈[0.5,1]\gamma \in [0.5, 1]8 and branch via the selected branching strategy (see Section 4).

3. Pruning Mechanisms: Size–Disconnection Space

FastQC introduces pruning rules in the "size–disconnection (SD)" space, efficiently restricting search to promising branches. For any γ∈[0.5,1]\gamma \in [0.5, 1]9:

  • σ>0\sigma > 00
  • σ>0\sigma > 01

For each node σ>0\sigma > 02:

  • Lower bound on QC size: σ>0\sigma > 03
  • Upper bound: σ>0\sigma > 04, where σ>0\sigma > 05

Branch σ>0\sigma > 06 can only contain a σ>0\sigma > 07-QC if:

σ>0\sigma > 08

Vertex refinement in σ>0\sigma > 09 is performed by progressive pruning:

  • (R1) Remove G[H]G[H]0 if G[H]G[H]1 — inclusion of G[H]G[H]2 violates QC bounds.
  • (R2) Remove G[H]G[H]3 if G[H]G[H]4 — no large QC could include G[H]G[H]5.

These pruning operations are iterated, updating G[H]G[H]6 and re-checking the pruning condition until no further removal is possible. If G[H]G[H]7 at any step, the branch is safely pruned. This ensures the correctness and safety of the enumeration process, as only subsets G[H]G[H]8 with G[H]G[H]9 can form H⊆VH \subseteq V0-QCs.

4. Branching Strategies: Sym-SE and Hybrid-SE

Once pruning and candidate refinement stall, FastQC branches the current search node using symmetry-exploiting rules.

  • Symmetric SE branching (Sym-SE): Order candidates H⊆VH \subseteq V1. Branch into H⊆VH \subseteq V2 child nodes, each enforcing inclusion/exclusion decisions on H⊆VH \subseteq V3. For increasing H⊆VH \subseteq V4, H⊆VH \subseteq V5 increases; if H⊆VH \subseteq V6, all further siblings are pruned.
  • Hybrid-SE branching: Triggered when a pivot H⊆VH \subseteq V7 has H⊆VH \subseteq V8 and H⊆VH \subseteq V9. The "exclude γ\gamma0" branch uses SE branching and a separate necessary condition for maximality; the "include γ\gamma1" uses Sym-SE to prune non-QC branches—boosting pruning efficacy.

Pivot selection prefers γ\gamma2 with maximal disconnections to maximize the utility of subsequent pruning.

5. Worst-Case Time Complexity

Let γ\gamma3, with the bound γ\gamma4 and typically γ\gamma5. Define γ\gamma6 as the maximal real root of γ\gamma7. FastQC explores at most γ\gamma8 recursion nodes, with γ\gamma9 for all G[H]G[H]0 (e.g., G[H]G[H]1, G[H]G[H]2, G[H]G[H]3).

All pruning and branching rules are proven, via induction and recurrence analysis, to satisfy this exponential node growth, improving on the G[H]G[H]4 worst-case bounds of prior BB approaches (Yu et al., 2023).

6. Divide-and-Conquer Enhancement: DCFastQC

To scale FastQC to massive or dense graphs, a divide-and-conquer variant ("DCFastQC", Editor's term) is employed:

  • Compute a degeneracy ordering G[H]G[H]5.
  • For each G[H]G[H]6, define G[H]G[H]7 and form subgraph G[H]G[H]8.
  • Each MQC appears in exactly one G[H]G[H]9 where v∈Hv \in H0 is minimal by degeneracy rank.
  • Algorithm outline:
    • Form v∈Hv \in H5;
    • Iteratively prune via one-hop/two-hop pruning;
    • Call `FastQC-Rec(S = {v_i}, C = V_i \setminus {v_i}, D = {v_1, \ldots, v_{i-1}}).</li></ul></li></ul><p>Fordegeneracy.</li> </ul></li> </ul> <p>For degeneracy v \in H$6 and maximum degree $v \in H$7, each $v \in H$8 has $v \in H$9 vertices; aggregate runtime is $G = (V, E)$00, yielding substantial acceleration on sparse or locally bounded graphs.

      7. Empirical Performance and Observations

      Empirical evaluation on both real (12 network datasets, up to $G = (V, E)$01M vertices and $G = (V, E)$02M edges) and synthetic (Erdős–Rényi, up to $G = (V, E)$03 vertices, varied densities) graphs demonstrates:

      • Against Quick+ (state-of-the-art BB), DCFastQC achieves up to $G = (V, E)$04 speedup on real-world networks (e.g., Enron, WordNet, Pokec), solving instances in seconds where Quick+ requires minutes or fails due to memory exhaustion.
      • Speedup increases with $G = (V, E)$05 and $G = (V, E)$06 as the search space becomes more amenable to aggressive pruning.
      • On dense Erdős–Rényi graphs, DCFastQC successfully handles $G = (V, E)$07–$G = (V, E)$08 vertices and edge-densities up to $G = (V, E)$09, where Quick+ fails beyond $G = (V, E)$10 vertices.
      • DCFastQC and FastQC return identical sets of MQCs, but enumerate far fewer non-maximal QCs, significantly reducing the burden of the subsequent maximality filtering step and further improving overall enumeration efficiency.

      These results establish FastQC (and DCFastQC) as among the fastest and most theoretically robust algorithms for maximal $G = (V, E)$11-quasi-clique enumeration in large-scale graphs (Yu et al., 2023).

      Definition Search Book Streamline Icon: https://streamlinehq.com
      References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to FastQC Algorithm.