Many real-world phenomena are modeled by large graphs. Subgraph counting, the problem of counting occurrences of small target pattern graphs in large input graphs is a fundamental algorithmic task in network analysis. Subraph counting has been extensively studied in both theory and practice and has found applications in areas such as network analysis, social sciences, and bioinformatics.
Graph orientation techniques for subgraph counting based on vertex orderings such as degeneracy ordering is a classical idea. These techniques have inspired many recent practical subraph counting algorithms. In this thesis we analyze the role of graph orientation and degeneracy in subgraph counting, both in theory and practice. Based on these techniques, we present efficient algorithms for getting local subgraph counts (orbits counts) of all 5-vertex patterns, and counting triangles in temporal networks.
In modern applications, input graphs are large and one desires (near) linear time algorithms. We focus on the case where the input graph is in the class of bounded degeneracy graphs. This is a rich class of sparse graphs that is practically relevant as real-world graphs such as social networks have been shown to have low degeneracy. We consider the problem of counting all connected subgraphs with $k$ vertices, and determine for what values of $k$ this problem is solvable in linear time, assuming a standard conjecture in fine-grained complexity. We also give a clean characterizations of all subgraph patterns whose homomorphisms could be counted in near linear time in bounded degeneracy graphs.