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=Vn = |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] (HVH \subseteq V) is a γ\gamma-quasi-clique if:
    1. G[H]G[H] is connected; and
    2. For every vHv \in H, degG[H](v)γ(H1)\deg_{G[H]}(v) \geq \gamma \cdot (|H| - 1).

Equivalently, defining the maximum number of disconnections in G[H]G[H] as

A(H)maxvH(H1degG[H](v)),A(H) \equiv \max_{v \in H} (|H| - 1 - \deg_{G[H]}(v)),

we require A(H)T(H)A(H) \leq T(|H|), where T(x)=(1γ)x+γT(x) = \lfloor (1 - \gamma)x + \gamma \rfloor.

  • Maximal γ-Quasi-Clique (MQC): A γ\gamma-QC G[H]G[H] is maximal if no HHH' \supset H exists such that G[H]G[H'] is also a γ\gamma-QC.
  • Enumeration Problem (MQCE): Output all MQCs in GG of size at least σ\sigma.

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

  1. Enumerate a superset SS containing all MQCs.
  2. Filter SS 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 (S,C,D)(S, C, D):

  • SS: current partial set (must-include vertices)
  • CC: candidate set (potential additions to SS)
  • DD: excluded set (must-not-include vertices)

Subsets HH satisfying HSH \supseteq S, HSCH \subseteq S \cup C, HD=H \cap D = \emptyset 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 CC is empty, test SS for being a γ\gamma-QC (output if Sσ|S| \geq \sigma).
  • When an early-stop maximality criterion is satisfied, output SCS \cup C as a found MQC.
  • Otherwise, select a pivot uSCu \in S \cup C 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 HVH \subseteq V:

  • A(H)=maxvH(H1degG[H](v))A(H) = \max_{v \in H} (|H| - 1 - \deg_{G[H]}(v))
  • T(x)=(1γ)x+γT(x) = \lfloor (1 - \gamma)x + \gamma \rfloor

For each node B=(S,C,D)B = (S, C, D):

  • Lower bound on QC size: S|S|
  • Upper bound: o(B)=min{SC, dmin(B)/γ+1}o(B) = \min\big\{|S \cup C|,~ \lfloor d_{\min}(B)/\gamma \rfloor + 1\big\}, where dmin(B)=minvSdegG[SC](v)d_{\min}(B) = \min_{v \in S} \deg_{G[S \cup C]}(v)

Branch BB can only contain a γ\gamma-QC if:

A(S)T(o(B))A(S) \leq T(o(B))

Vertex refinement in CC is performed by progressive pruning:

  • (R1) Remove vv if A(S{v})>T(o(B))A(S \cup \{v\}) > T(o(B)) — inclusion of vv violates QC bounds.
  • (R2) Remove vv if degG[SC](v)<σT(o(B))\deg_{G[S \cup C]}(v) < \sigma - T(o(B)) — no large QC could include vv.

These pruning operations are iterated, updating o(B)o(B) and re-checking the pruning condition until no further removal is possible. If A(S)>T(o(B))A(S) > T(o(B)) at any step, the branch is safely pruned. This ensures the correctness and safety of the enumeration process, as only subsets HSH \supseteq S with A(H)T(H)T(o(B))A(H) \leq T(|H|) \leq T(o(B)) can form γ\gamma-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 C=(v1,,vm)C = (v_1, \ldots, v_m). Branch into m+1m+1 child nodes, each enforcing inclusion/exclusion decisions on viv_i. For increasing ii, A(Si)A(S_i) increases; if A(Si)>T(o(B))A(S_i) > T(o(B)), all further siblings are pruned.
  • Hybrid-SE branching: Triggered when a pivot uu has degdis(u)>T(o(B))\deg_{dis}(u) > T(o(B)) and degS(u)=0\deg_S(u) = 0. The "exclude uu" branch uses SE branching and a separate necessary condition for maximality; the "include uu" uses Sym-SE to prune non-QC branches—boosting pruning efficacy.

Pivot selection prefers uSCu \in S \cup C with maximal disconnections to maximize the utility of subsequent pruning.

5. Worst-Case Time Complexity

Let k=maxBT(o(B))k = \max_{B} T(o(B)), with the bound kT(n)k \leq T(n) and typically knk \ll n. Define αk\alpha_k as the maximal real root of xk+2xk+12xk+2=0x^{k+2} - x^{k+1} - 2x^{k} + 2 = 0. FastQC explores at most O(ndαkn)O(n d \alpha_k^n) recursion nodes, with αk<2\alpha_k < 2 for all k1k \geq 1 (e.g., α21.769\alpha_2 \approx 1.769, α31.899\alpha_3 \approx 1.899, α41.953\alpha_4 \approx 1.953).

All pruning and branching rules are proven, via induction and recurrence analysis, to satisfy this exponential node growth, improving on the O(2n)O^*(2^n) 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 v1,,vnv_1, \ldots, v_n.
  • For each viv_i, define Vi={vj:distG(vi,vj)2, ji}V_i = \{v_j : \mathrm{dist}_G(v_i, v_j) \leq 2,~ j \geq i\} and form subgraph Gi=G[Vi]G_i = G[V_i].
  • Each MQC appears in exactly one GiG_i where viv_i is minimal by degeneracy rank.
  • Algorithm outline:
    • Form Gi=G[Vi]G_i = G[V_i];
    • 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 \deltaandmaximumdegree and maximum degree d,each, each G_ihas has O(\delta d)vertices;aggregateruntimeis vertices; aggregate runtime is O(n \delta d \alpha_k^{\delta d}),yieldingsubstantialaccelerationonsparseorlocallyboundedgraphs.</p><h2class=paperheadingid=empiricalperformanceandobservations>7.EmpiricalPerformanceandObservations</h2><p>Empiricalevaluationonbothreal(12networkdatasets,upto, yielding substantial acceleration on sparse or locally bounded graphs.</p> <h2 class='paper-heading' id='empirical-performance-and-observations'>7. Empirical Performance and Observations</h2> <p>Empirical evaluation on both real (12 network datasets, up to 23MverticesandM vertices and 261Medges)andsynthetic(Erdo\HsReˊnyi,uptoM edges) and synthetic (Erdős–Rényi, up to 10^6vertices,varieddensities)graphsdemonstrates:</p><ul><li>AgainstQuick+(stateoftheartBB),DCFastQCachievesupto vertices, varied densities) graphs demonstrates:</p> <ul> <li>Against Quick+ (state-of-the-art BB), DCFastQC achieves up to 100\timesspeeduponrealworldnetworks(e.g.,Enron,WordNet,Pokec),solvinginstancesinsecondswhereQuick+requiresminutesorfailsduetomemoryexhaustion.</li><li>Speedupincreaseswith speedup on real-world networks (e.g., Enron, WordNet, Pokec), solving instances in seconds where Quick+ requires minutes or fails due to memory exhaustion.</li> <li>Speedup increases with \gammaand and \sigmaasthesearchspacebecomesmoreamenabletoaggressivepruning.</li><li>OndenseErdo\HsReˊnyigraphs,DCFastQCsuccessfullyhandles as the search space becomes more amenable to aggressive pruning.</li> <li>On dense Erdős–Rényi graphs, DCFastQC successfully handles 10^510^6verticesandedgedensitiesupto vertices and edge-densities up to 70,whereQuick+failsbeyond, where Quick+ fails beyond 10^5vertices.</li><li>DCFastQCandFastQCreturnidenticalsetsofMQCs,butenumeratefarfewernonmaximalQCs,significantlyreducingtheburdenofthesubsequentmaximalityfilteringstepandfurtherimprovingoverallenumerationefficiency.</li></ul><p>TheseresultsestablishFastQC(andDCFastQC)asamongthefastestandmosttheoreticallyrobustalgorithmsformaximal vertices.</li> <li>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.</li> </ul> <p>These results establish FastQC (and DCFastQC) as among the fastest and most theoretically robust algorithms for maximal \gamma$-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.