1. Introduction
Complex systems, consisting of many interconnected and interacting components, are embedded in the material and informational fabric of the modern world. One approach to understanding complex systems is based on modeling a system by a graph (or network), which is a collection of nodes connected by links, that captures the pattern of connections between the system’s components and represents its structural skeleton. This natural idea coupled with advances in computing power and statistical analysis of real network data has led to a new interdisciplinary field, network science Newman (Reference Newman2018); Newman et al. (Reference Newman, Barabasi and Watts2006); Dorogovtsev (Reference Dorogovtsev2010); Easley and Kleinberg (Reference Easley and Kleinberg2010), which emerged at the intersection of graph theory, computational statistics, computer science, and statistical physics. Networks were used to model and study different technological, information, biological, and social systems such as the Internet Faloutsos et al. (Reference Faloutsos, Faloutsos and Faloutsos1999); Pastor-Satorras and Vespignani (Reference Pastor-Satorras and Vespignani2004), power grids Arianos et al. (Reference Arianos, Bompard, Carbone and Xue2009); Pagani and Aiello (Reference Pagani and Aiello2013), the World Wide Web Broder et al. (Reference Broder, Kumar, Maghoul, Raghavan, Rajagopalan, Stata and Wiener2000), citation networks Radicchi et al. (Reference Radicchi, Fortunato and Vespignani2012), food webs Martinez (Reference Martinez1991), protein interactions Jeong et al. (Reference Jeong, Mason, Barabási and Oltvai2001), social groups of people Zachary (Reference Zachary1977); Borgatti et al. (Reference Borgatti, Mehra, Brass and Labianca2009) and animals Lusseau (Reference Lusseau2003), and even the universe Krioukov et al. (Reference Krioukov, Kitsak, Sinkovits, Rideout, Meyer and Boguna2012); Cunningham et al. (Reference Cunningham, Zuev and Krioukov2017) and brain Krioukov (Reference Krioukov2014). In this paper, we focus on the study of course-prerequisite networks Stavrinides and Zuev (Reference Stavrinides and Zuev2023), a class of information networks that model complex academic curricula.
A course-prerequisite network (CPN) is a directed graph where nodes represent courses offered at a university and directed links represent the prerequisite relationships between them. Namely, a directed link from node
$i$
to node
$j$
means that the course
$i$
serves as a prerequisite for the course
$j$
. A CPN is a structural model of the university’s academic curriculum, which represents the flow of knowledge in the curriculum and helps visualize, analyze, and optimize the complex system of courses that forms the core of the university’s educational mission.
In recent years, CPNs have attracted a lot of attention from various research groups due to their important role in quantifying and understanding academic curricula. For example, CPNs have been used for detecting critical courses Slim et al. (Reference Slim, Kozlick, Heileman, Wigdahl and Abdallah2014), improving advising and curriculum reform Aldrich (Reference Aldrich2015), studying the distribution of graduation time Molontay et al. (Reference Molontay, Horváth, Bergmann, Szekrényes and Szabó2020), and guiding curriculum design Simon de Blas et al. (Reference Simon de Blas, Gomez Gonzalez and Criado Herrero2021). A more recent work Stavrinides and Zuev (Reference Stavrinides and Zuev2023) proposed a general network-science-based framework for the analysis of CPNs, which allows users to identify important courses using classical centrality measures, describe the hierarchical structure of a CPN using the concept of topological stratification, quantify the strength of knowledge flow between different university divisions, and identify the most intradependent, influential, and interdisciplinary areas of study. This analysis was demonstrated using a network of courses taught at the California Institute of Technology. The CPNs of five Midwestern public universities were thoroughly analyzed in Yang et al. (Reference Yang, Gharebhaygloo, Rondi, Hortis, Lostalo, Huang and Ercal2024), where a new graph theoretic measure of node importance, which is tailored to CPNs and quantifies the criticality of introductory courses, was introduced.
To our knowledge, all CPN analyses conducted so far have primarily focused on either measuring the importance of individual nodes within a CPN (using classical or new CPN-tailored centrality measures) or describing the internal organization of a CPN (using various network structures, such as community structure and topological stratification). In other words, the analyses have focused only on the micro- and meso-scale properties of CPNs, and no macro-scale measures for an entire CPN have been defined (except for the basic notion of the size of the network).
To fill this gap, in this paper, we propose and study three new global measures of a whole CPN: breadth and depth, which quantify how wide and how deep the span of knowledge provided by the academic curriculum represented by the CPN is, and flux, which quantifies the average amount of knowledge flow through the CPN. To illustrate these new measures, we use them to compare synthetic CPNs generated by two different network models, as well as CPNs of three universities: the Cyprus University of Technology (CUT), the California Institute of Technology (CIT), and Johns Hopkins University (JHU). The real CPN data analyzed in this paper are publicly available in the GitHub repository https://github.com/pstavrin/Course-Prerequisite-Networks.
To define the breadth, depth, and flux of a CPN (Section 5), we first need to pre-process the network data via transitive reduction (Section 2), discuss the difference between directed acyclic graphs and directed ordered graphs (Section 3), and review the concept of topological stratification (Section 4) on which the new CPN measures are based.
2. Transitive reduction of a CPN
Similar to many other complex networks (transportation networks, citation networks, food webs, and the World Wide Web), a course-prerequisite network is a directed graph consisting of nodes connected by directed links. In a CPN, nodes represent courses that are offered at the university. A directed link
$i\rightarrow j$
from node
$i$
to node
$j$
means that course
$i$
serves as a prerequisite for course
$j$
. In this case, we will also say that course
$j$
is a postrequisite for course
$i$
. For example, a course on differential geometry (DG) often serves as a prerequisite for a course on general relativity (GR). Here, DG is a prerequisite for GR, and GR is a postrequisite for DG.
Consider a directed graph containing three nodes
$i$
,
$j$
, and
$k$
and three directed links
$i\rightarrow j$
,
$j\rightarrow k$
, and
$i\rightarrow k$
. In many applications (for instance, in the context of transportation networks or the World Wide Web), the link
$i\rightarrow k$
can be interpreted as a “shortcut” that allows one to go from
$i$
to
$k$
without visiting
$j$
. In the context of CPNs, however,
$i\rightarrow k$
is a redundant link: the fact that
$i$
is a prerequisite for
$k$
follows from the facts that
$j$
is a prerequisite for
$k$
(thanks to link
$j\rightarrow k$
) and
$i$
is a prerequisite for
$j$
(thanks to link
$i\rightarrow j$
). Given links
$i\rightarrow j$
and
$j\rightarrow k$
, the link
$i\rightarrow k$
does not provide any conceptually new information and its removal does not change the function of the CPN.
A transitive reduction of a directed graph, introduced in Aho et al. (Reference Aho, Garey and Ullman1972), can be viewed as a mechanism for removing redundant links in a CPN. By definition, any CPN is a directed acyclic graph (DAG), that is, a directed graph without cycles—closed paths that start and end at the same node and follow links only in their forward direction. The transitive reduction of a directed acyclic graph
$\mathcal{G}$
is a subgraph
$\mathcal{G}^{tr}\subset \mathcal{G}$
, which has the same nodes and is obtained from
$\mathcal{G}$
by removing all links
$i\rightarrow k$
such that there exists a longer directed path
$i\rightarrow \ldots \rightarrow k$
from
$i$
to
$k$
. The transitive reduction
$\mathcal{G}^{tr}$
is uniquely defined, and it is the smallest (with respect to the number of links) subgraph of
$\mathcal{G}$
that has the same reachability relation: there exists a directed path from node
$i$
to node
$j$
in
$\mathcal{G}$
if and only if there exists a directed path from node
$i$
to node
$j$
in
$\mathcal{G}^{tr}$
. Figure 1 shows a small DAG and its transitive reduction.

Figure 1. Left: a small directed acyclic graph
$\mathcal{G}$
. Right: the transitive reduction
$\mathcal{G}^{tr}$
of
$\mathcal{G}$
. The links
$\beta \rightarrow \eta$
,
$\delta \rightarrow \eta$
,
$\gamma \rightarrow \zeta$
, and
$\gamma \rightarrow \eta$
are removed as redundant.
Since removing redundant links does not change a CPN conceptually and does not alter its function, any global measure of a CPN must be invariant with respect to transitive reduction. That is, if for any meaningful CPN measure
$m$
, we must have
$m(\mathcal{G})=m(\mathcal{G}^{tr})$
. In what follows, we will assume that instead of the original “raw” CPN, we work with its transitive reduction. Computing the transitive reduction can be viewed as a pre-processing step, as a “cleaning” of the network data.
In this paper, we assume that all prerequisites in a CPN are conjunctive, meaning that if two or more courses are listed as prerequisites for a given course, then all of them are required. In real course catalogs, however, there is often a fraction of disjunctive prerequisites, that is, cases where only one or a subset of listed prerequisites is sufficient. In such cases, when disjunctive prerequisites are present, transitive reduction may over-constrain the curriculum structure. Even when two prerequisites are formally disjunctive (i.e., one or the other is sufficient), in practice, almost all students take the same one of the two. This is why, when constructing a CPN from the course catalog, it is important to incorporate expert knowledge (whether from students, staff, or faculty) about the actual structure of the curriculum. In any case, the fraction of disjunctive prerequisites is (usually) relatively small, and their effect on the overall structure of the CPN and its global measures is minimal.
3. Dags and dogs
Directed acyclic graphs (DAGs) serve as models for many natural and man-made networks, such as citation networks Radicchi et al. (Reference Radicchi, Fortunato and Vespignani2012), where nodes represent documents (e.g., academic papers) and directed links represent citations between them, and food webs Dunne et al. (Reference Dunne, Williams and Martinez2002), where nodes represent species in an ecosystem and directed links represent predator–prey relationships. In many real networks, the acyclic structure is induced by a natural topological ordering of the network nodes. Recall that a topological ordering of a directed graph with
$n$
nodes is a total ordering of its nodes,
$i_1\lt i_2\lt \cdots \lt i_n$
, such that for each link
$i_k\rightarrow i_m$
from node
$i_k$
to node
$i_m$
, we have
$i_k\lt i_m$
, i.e.,
$i_k$
appears before
$i_m$
in the ordering. A directed graph admits a topological ordering of its nodes if and only if it is a DAG, and the topological ordering is unique if and only if the graph has a Hamiltonian path (a directed path that visits all nodes exactly once) Sedgewick and Wayne (Reference Sedgewick and Wayne2011).
Many networks are acyclic because the nature of the network imposes a natural topological ordering on its nodes. For example, in citation networks, papers can only cite other papers that have already been published: all links, therefore, must point backward in time. Thus, the publication time induces a natural topological ordering of the papers:
$i\lt j$
if and only if paper
$i$
was published after paper
$j$
. This time-induced ordering is the fundamental reason why citation networks are acyclic.
Following Karrer and Newman (Reference Karrer and Newman2009b), we will refer to a DAG with a fixed topological ordering as a directed ordered graph (DOG). Every DOG is clearly a DAG, and every DAG can be formally turned into a DOG by fixing one of its topological orderings. Unless a DAG has a Hamiltonian path, it has more than one topological ordering. For example,
$\alpha \lt \beta \lt \gamma \lt \delta \lt \epsilon \lt \zeta \lt \eta$
and
$\beta \lt \gamma \lt \delta \lt \alpha \lt \zeta \lt \epsilon \lt \eta$
are two orderings of the DAG in Figure 1. Fixing an arbitrary topological ordering of a DAG, however, introduces an artificial (non-natural) total order on the DAG’s nodes, which are only partially ordered by the DAG’s links.
Any real CPN is fundamentally a DAG but not a DOG, since it does not have a natural or canonical way to topologically order its nodes. In the next section, we describe a topological stratification Stavrinides and Zuev (Reference Stavrinides and Zuev2023) of partially ordered CPN nodes, which is a generalization of topological ordering and the DAG structure on which all three proposed CPN measures are based.
4. Topological stratification
Let
$\mathcal{G}=(\mathcal{V},\mathcal{E})$
be a CPN, where
$\mathcal{V}$
and
$\mathcal{E}$
are the sets of its nodes (vertices) and directed links (edges). A topological stratification of
$\mathcal{G}$
is a partition of
$\mathcal{V}$
into disjoint subsets, called strata, of topologically equivalent nodes, which is defined as follows. The first stratum
$\mathcal{S}_1\subset \mathcal{V}$
is the subset of nodes with zero in-degree (“sources”), that is, the set of courses with no prerequisites. The second stratum
$\mathcal{S}_2\subset \mathcal{V}$
is obtained by first removing all nodes in
$\mathcal{S}_1$
along with their outgoing links from the CPN and then taking the nodes with zero in-degree in the remaining network. This process continues until all nodes are assigned to their strata. Let
$T$
denote the total number of strata. As a result of this process, the CPN nodes are partitioned into
$T$
disjoint strata,
This partition is illustrated in Figure 2 for a small CPN.

Figure 2. Left: a small course-prerequisite network. Right: its topological stratification, consisting of four strata.
Each stratum
$\mathcal{S}_t$
consists of topologically equivalent nodes, i.e., nodes that are not connected by a directed path (courses that are not direct or indirect prerequisites or postrequisites of each other). Indeed, if
$u\in \mathcal{S}_t$
and
$u\rightarrow v$
is a directed link, then, after removing the first
$(t-1)$
strata, the node
$v$
has in-degree at least one, since
$u$
is still in the network. This means that
$v$
belongs to one of the higher strata:
$v\in \mathcal{S}_{\gt t}=\mathcal{S}_{t+1}\sqcup \ldots \sqcup \mathcal{S}_T$
.
Within each stratum nodes are unordered, but the strata themselves are ordered. We refer to this ordered partition
as the topological stratification of CPN
$\mathcal{G}$
. Note that the topological stratification is invariant with respect to the transitive reduction, namely,
$S(\mathcal{\mathcal{G}}^{tr})=S(\mathcal{\mathcal{G}})$
. This follows directly from the property established above that if
$\mathcal{S}_t\ni u\rightarrow v$
, then
$v\in \mathcal{S}_{\gt t}$
.
The topological stratification is a meso-scale structure of a CPN or, more generally, of a DAG. Other meso-structures often used for studying complex networks include the community structure Girvan and Newman (Reference Girvan and Newman2002); Porter et al. (Reference Porter, Onnela and Mucha2009); Fortunato (Reference Fortunato2010), core-periphery structure Holme (Reference Holme2005); Csermely et al. (Reference Csermely, London, Wu and Uzzi2013); Rombach et al. (Reference Rombach, Porter, Fowler and Mucha2014), and
$k$
-core decomposition Alvarez-Hamelin et al. (Reference Alvarez-Hamelin, Dall’Asta, Barrat, Vespignani, Weiss, Schölkopf and Platt2005). A common feature of all these constructions is that they partition the set of network nodes
$\mathcal{V}$
into a collection of subsets according to a certain criterion. For the structures cited above, this criterion measures the density and sparsity of links within and between subsets of nodes or quantifies the “coreness” of the nodes. For the topological stratification, which is defined only for DAGs, this criterion is the topological equivalence of nodes, i.e., the absence of directed paths between nodes within the same subset (stratum). In the context of CPNs, the topological stratification produces subsets
$\mathcal{S}_1,\ldots ,\mathcal{S}_T$
of courses of approximately the same level of difficulty, with more advanced courses lying in higher strata.
The topological stratification not only induces a hierarchy of the CPN nodes with respect to the level of course advancement but also helps describe the organization of the CPN links. Let
$\mathcal{N}_v^-$
be the set of all prerequisites of node
$v$
, that is, the set of all nodes
$u$
for which there is a link from
$u$
to
$v$
. Similarly, let
$\mathcal{N}_v^+$
be the set of all postrequisites of node
$v$
, that is, the set of all nodes
$u$
for which there is a link from
$v$
to
$u$
. Then
$\mathcal{N}_v=\mathcal{N}_v^-\sqcup \mathcal{N}_v^+$
is the set of all “neighbors” of node
$v$
. The number of nodes in
$\mathcal{N}_v^-$
,
$\mathcal{N}_v^+$
, and
$\mathcal{N}_v$
is, respectively, the in-, out-, and total degree of node
$v$
. Obviously,
For any node
$v$
in stratum
$\mathcal{S}_t$
, all its incoming links come from nodes lying in strictly lower strata, that is,
Indeed, by definition of
$\mathcal{S}_t$
, if we remove all nodes in
$\mathcal{S}_1,\ldots ,\mathcal{S}_{t-1}$
together with their outgoing links, then any
$v\in \mathcal{S}_t$
will have zero in-degree. This means precisely that any incoming link of
$v$
comes from a node lying in a lower stratum
$\mathcal{S}_i$
, where
$i\lt t$
.
Moreover, any node
$v$
in stratum
$\mathcal{S}_t$
must have at least one incoming link from a node lying in the strictly previous stratum:
Indeed, if this is not true and
$\mathcal{N}_v^-\cap \mathcal{S}_{t-1}= \emptyset$
, then
$v$
will have zero in-degree after removing all nodes in strata
$\mathcal{S}_1,\ldots ,\mathcal{S}_{t-2}$
along with their outgoing links, which contradicts the assumption that
$v \in \mathcal{S}_t$
, as it would instead belong to
$\mathcal{S}_{t-1}$
or an even lower stratum.
Next, as was already discussed above, for any node
$v$
in stratum
$\mathcal{S}_t$
, all its outgoing links point to nodes lying in strictly higher strata, that is,
However, there is no analog of property (5) for
$\mathcal{N}_v^+$
. Namely, a node
$v\in \mathcal{S}_t$
may have no postrequisites in
$\mathcal{S}_{t+1}$
. In other words, if
$v\in \mathcal{S}_t$
, then the set
$\mathcal{N}_v^-\cap \mathcal{S}_{t-1}$
may be empty.
To sum up, every CPN node lies in a single stratum of topologically equivalent nodes, all its prerequisites lie in lower strata, all its postrequisites lie in higher strata, and it has at least one prerequisite in the directly preceding stratum. The topological stratification of a CPN is schematically illustrated in Figure 3. This meso-scale structure serves as a basis for defining the proposed global CPN measures.

Figure 3. Every node
$v\in \mathcal{S}_t$
has at least one prerequisite from a node
$u\in \mathcal{S}_{t-1}$
(a solid link that must exist), and all its prerequisites and postrequisites are in lower and higher strata, respectively (potential dashed links that may or may not exist).
5. New CPN measures
The key quantitative characteristics of education are its breadth and depth, which describe, respectively, how wide the scope of knowledge provided by education is and how deep and advanced it is. We can define the breadth and depth of a CPN that represents an academic curriculum used for education as follows.
5.1 Breadth
Let
$\mathcal{G}$
be a CPN,
$S(\mathcal{G})=\{\mathcal{S}_1,\ldots ,\mathcal{S}_T\}$
be its topological stratification, and
$n_t=|\mathcal{S}_t|$
be the number of nodes in stratum
$\mathcal{S}_t$
. It is natural to define the breadth of
$\mathcal{G}$
as the average stratum size:
\begin{equation} B(\mathcal{G})=\frac {1}{T}\sum _{t=1}^T|\mathcal{S}_t|=\frac {1}{T}\sum _{t=1}^Tn_t=\frac {n}{T}, \end{equation}
where
$n$
is the total number of nodes in
$\mathcal{G}$
. This simple definition implies two intuitively expected properties of the breadth: (a) for two CPNs with the same number of strata, the one with more courses has greater breadth, and (b) for two CPNs with the same number of courses, the one with a smaller number of strata has greater breadth. Note also that since the topological stratification is invariant with respect to the transitive reduction, so is the breadth:
$B(\mathcal{G}^{tr})=B(\mathcal{G})$
.
The number of strata
$T$
has a useful interpretation:
$T$
is the number of nodes in a longest directed path in
$\mathcal{G}$
(there may be several different longest directed paths in
$\mathcal{G}$
, but the number of nodes in any such path is the same).
Indeed, let
$L$
be the number of nodes in a longest directed path. On the one hand,
$L\leq T$
since if
$L$
were larger than
$T$
, then there would be at least two nodes in the same stratum connected by a link, which is impossible (since there are no links between nodes lying in the same stratum). On the other hand, property (5), namely the presence of a solid link in Figure 3, allows us to construct a directed path of length
$T$
as follows. Consider any node
$\omega \in \mathcal{S}_T$
in the last stratum. It necessarily has a prerequisite in the previous stratum
$\omega \in \mathcal{S}_{T-1}$
, which has a prerequisite in
$\mathcal{S}_{T-2}$
, and so one, until a zero in-degree prerequisite
$\alpha \in \mathcal{S}_1$
in the first stratum is reached. The corresponding directed path
$\alpha \rightarrow \cdots \rightarrow \omega$
has
$T$
nodes. Therefore, the number of nodes in a longest path
$L\geq T$
. Combining
$L\leq T$
and
$L\geq T$
leaves us with the only possibility:
$L=T$
.
So, the breadth
$B(\mathcal{G})$
of a CPN
$\mathcal{G}$
is the ratio of the total number of nodes
$n$
of the CPN to the number of nodes
$T$
in its longest directed path. The larger the
$n$
, the broader the network; the longer a longest path, the narrower the CPN.
5.2 Depth
Intuitively, the depth of a CPN should be defined in terms of the lengths of directed paths in the network, and it should be negatively correlated with the breadth: the longer the paths, the deeper the network is. This idea can be formalized as follows.
Let
$\Omega \subset \mathcal{V}$
be the set of all nodes with zero out-degree. Nodes
$\omega \in \Omega$
represent the most advanced (“deepest”) courses students can possibly take by traversing
$\mathcal{G}$
. We define the depth of
$\mathcal{G}$
as the average depth of nodes in
$\Omega$
:
where
$|\Omega |$
is the number of nodes in
$\Omega$
and
$d(\omega )$
is the depth of node
$\omega$
, a quantity which is still to be defined.
Let
$\Omega _t=\Omega \cap \mathcal{S}_t$
be the subset of nodes with zero out-degree lying in the stratum
$\mathcal{S}_t$
, and
be the partition of
$\Omega$
induced by the partition of
$\mathcal{V}$
(1). Then the CPN depth can be rewritten as follows:
\begin{equation} D(\mathcal{G})=\frac {1}{|\Omega |}\sum _{t=1}^T\sum _{\omega \in \Omega _t} d(\omega ). \end{equation}
Consider a node
$w\in \Omega _t$
. Since
$\omega \in \mathcal{S}_t$
, according to the property (5), it has at least one prerequisite
$\psi \in \mathcal{S}_{t-1}$
in the previous stratum, which, in turn, has at least one prerequisite
$\phi \in \mathcal{S}_{t-2}$
, and so on until a course
$\alpha \in \mathcal{S}_{1}$
in the first stratum is reached. Taking a sequence of courses
$\alpha \rightarrow \ldots \rightarrow \phi \rightarrow \psi$
is a necessary condition for taking
$\omega$
(but not necessarily sufficient since
$\omega$
may have other direct and indirect prerequisites). The path
$\alpha \rightarrow \ldots \rightarrow \phi \rightarrow \psi \rightarrow \omega$
is the longest directed path in the CPN that ends in
$\omega$
, see Figure 4. We define the depth of
$\omega \in \Omega _t$
as the number of nodes in that path, that is:

Figure 4. Every stratum
$\mathcal{S}_t$
is partitioned into the subset
$\Omega _t$
of zero out-degree (purple) nodes and the subset of positive out-degree (blue) nodes. The depth of
$\omega \in \Omega _t$
is the number of nodes in the longest path
$\alpha \rightarrow \ldots \rightarrow \phi \rightarrow \psi \rightarrow \omega$
. The depth of the CPN is the average depth of nodes in
$\Omega$
.
The depth of the CPN
$\mathcal{G}$
is, therefore,
\begin{equation} D(\mathcal{G})=\frac {1}{|\Omega |}\sum _{t=1}^T\sum _{\omega \in \Omega _t} t=\frac {1}{|\Omega |}\sum _{t=1}^T t|\Omega _t|, \end{equation}
where
$|\Omega _t|$
is the number of nodes in
$\Omega _t$
.
This definition of the CPN depth is invariant with respect to the transitive reduction,
$D(\mathcal{G}^{tr})=D(\mathcal{G})$
, and it has a simple probabilistic interpretation. Indeed,
\begin{equation} D(\mathcal{G})= \sum _{t=1}^{T} t\frac {|\Omega _t|}{|\Omega |}=\sum _{t=1}^T t \mathbb{P}(\omega ^{*}\in \Omega _{t})=\mathbb{E}[t^{*}], \end{equation}
where
$\omega ^*$
is a random node chosen uniformly from
$\Omega$
, and
$t^*$
is the random index of the stratum to which
$\omega ^*$
belongs, that is,
$\omega ^*\in \mathcal{S}_{t^*}$
. The depth of a CPN is then the expected value of the index of the stratum that contains a randomly chosen node with zero out-degree.
The definition of the CPN breadth (7) can also be interpreted probabilistically:
\begin{equation} B(\mathcal{G})=\frac {1}{T}\sum _{t=1}^T|\mathcal{S}_t|=\sum _{t=1}^T|\mathcal{S}_t|\mathbb{P}(t^\star =t)=\mathbb{E}[|\mathcal{S}_{t^\star }|], \end{equation}
where
$t^\star$
is a random index chosen uniformly from the set
$\{1,\ldots ,T\}$
, and
$|\mathcal{S}_{t^\star }|$
is the size of stratum
$\mathcal{S}_{t^\star }$
. So, the breadth of a CPN is then the expected size of a randomly chosen stratum (which is the average stratum size).
An interesting depth-related structure, called the Longest Paths Induced sub-Graph (LPIG), was introduced in Yang et al. (Reference Yang, Gharebhaygloo, Rondi, Hortis, Lostalo, Huang and Ercal2024). Given a length parameter
$d$
,
$LPIG_d$
is the subgraph of the CPN induced by all nodes that lie on paths of length
$d$
or longer in the CPN (where “length” is understood as the number of links in the path). For example,
$LPIG_1$
is the subgraph induced by nodes
$\mathcal{V}\setminus \Omega _1$
, and
$LPIG_{T-1}$
is the subgraph induced by all nodes lying on the longest paths starting in
$\mathcal{S}_1$
and ending in
$\mathcal{S}_T$
. This one-parameter family of LPIGs contains rich depth-related information about the CPN and, in particular, can be used to analyze constrained degree programs and course sequences in a university.
The measure of depth introduced in (12) is a single-number statistic that intuitively quantifies the overall depth of the CPN. It has a simple probabilistic interpretation, is invariant under transitive reduction, and can be used for macro-level comparison of different CPNs as well as for assessing the accuracy of random graph CPN models.
5.3 Flux
The last proposed CPN measure is the concept of flux, which is inspired and motivated by a similar concept introduced by Karrer and Newman in Karrer and Newman (Reference Karrer and Newman2009b). In that paper, however, the flux is defined as a property of the gap between two successive nodes of a DOG (a directed acyclic graph with a fixed total order of nodes, see Section 3). Since a CPN is a DAG, but not a DOG, and it does not have a canonical or natural way to order its nodes, we define the flux at the level of strata, not at the level of gaps between successive nodes.
Conceptually, a CPN represents the flow of knowledge in an academic curriculum, where knowledge “flows” along directed paths in the CPN from lower strata containing more introductory courses to higher strata containing more advanced courses. In the physical sciences that study transport phenomena, the flux
$\Phi (t)$
at time
$t$
is defined as the rate of flow of a certain quantity per unit area,
where
$q(t)$
is the quantity that flows and
$A$
is the area of the surface through which the quantity flows. A discrete analog of (15), in the context of CPNs, is the flux
$\Phi _t$
through stratum
$\mathcal{S}_t$
, which we define as follows:
where
$n_t=|\mathcal{S}_t|$
is the number of nodes in stratum
$\mathcal{S}_t$
,
$L_{t-1}^{t}$
is the number of incoming links from
$\mathcal{S}_{t-1}$
to
$\mathcal{S}_t$
, and
$L_t^{t+1}$
is the number of outgoing links from
$\mathcal{S}_t$
to
$\mathcal{S}_{t+1}$
. Here,
$n_t$
quantifies the size of
$\mathcal{S}_t$
and plays the role of the area
$A$
in (15). The number of links
$L_{t-1}^{t}$
between two successive strata acts as the flowing quantity
$q(t)$
.
Note that in the definition (16) of the flux
$\Phi _t$
through stratum
$\mathcal{S}_t$
, we intentionally do not count incoming links from
$\mathcal{S}_{\lt t-1}=\mathcal{S}_1\sqcup \ldots \sqcup \mathcal{S}_{t-2}$
to
$\mathcal{S}_t$
and outgoing links from
$\mathcal{S}_t$
to
$\mathcal{S}_{\gt t+1}=\mathcal{S}_{t+2}\sqcup \ldots \sqcup \mathcal{S}_{T}$
. The reason is twofold. First,
$\Phi _t$
is intended to be a “local” property of
$\mathcal{S}_t$
that quantifies its interactions with the neighboring strata
$\mathcal{S}_{t-1}$
and
$\mathcal{S}_{t+1}$
. Second,
$\Phi _t$
must be invariant with respect to the transitive reduction. The definition (16) has this property since links from
$\mathcal{S}_{t-1}$
to
$\mathcal{S}_t$
and from
$\mathcal{S}_{t}$
to
$\mathcal{S}_{t+1}$
are present in both
$\mathcal{G}$
and
$\mathcal{G}^{tr}$
(these links are not redundant in the sense of Section 2). Counting links from
$\mathcal{S}_{\lt t-1}$
to
$\mathcal{S}_t$
or from
$\mathcal{S}_t$
to
$\mathcal{S}_{\gt t+1}$
, that is, defining the flux as
$\Phi _t=(L_{t}^{t+1:T}-L_{1:t-1}^t)/n_t$
, where
$L_{t}^{t+1:T}$
and
$L_{1:t-1}^t$
are the numbers of links, respectively, from
$\mathcal{S}_t$
to
$\mathcal{S}_{\gt t}$
and from
$\mathcal{S}_{\lt t}$
to
$\mathcal{S}_t$
, will destroy the invariance. For example, removing a redundant link from
$\mathcal{S}_{\lt t-1}$
to
$\mathcal{S}_t$
will decrease
$L_{1:t-1}^t$
and increase
$\Phi _t$
. Similarly, removing a redundant link from
$\mathcal{S}_t$
to
$\mathcal{S}_{\gt t+1}$
will decrease
$L_{t}^{t+1:T}$
and decrease
$\Phi _t$
.
The flux
$\Phi _t$
through stratum
$\mathcal{S}_t$
can be expressed as the average of local fluxes through nodes of
$\mathcal{S}_t$
. Let
$A$
be the adjacency matrix of the CPN
$\mathcal{G}$
, where
$A_{ij}=1$
if there is a link
$i\rightarrow j$
and
$A_{ij}=0$
otherwise. Then
\begin{equation} \begin{split} L_t^{t+1}&=\sum _{i\in \mathcal{S}_t}\sum _{j\in \mathcal{S}_{t+1}}A_{ij},\\[3pt] L_{t-1}^{t}&=\sum _{i\in \mathcal{S}_t}\sum _{k\in \mathcal{S}_{t-1}}A_{ki}. \end{split} \end{equation}
Therefore,
\begin{equation} \begin{split} \Phi _t&=\frac {L_t^{t+1}-L_{t-1}^{t}}{n_t}\\[3pt] &=\frac {1}{n_t}\sum _{i\in \mathcal{S}_t}\left (\sum _{j\in \mathcal{S}_{t+1}}A_{ij}-\sum _{k\in \mathcal{S}_{t-1}}A_{ki}\right )=\frac {1}{n_t}\sum _{i\in \mathcal{S}_t}\phi _i, \end{split} \end{equation}
where
is the local flux through node
$i\in \mathcal{S}_t$
.
The flux
$\Phi _t$
quantifies the average amount of “knowledge flow” that is emitted from (
$\Phi _t\gt 0$
) or absorbed by (
$\Phi _t\lt 0$
) the nodes in stratum
$\mathcal{S}_t$
. The more courses in
$\mathcal{S}_t$
collectively serve as prerequisites for courses in
$\mathcal{S}_{t+1}$
compared to their role as postrequisites for courses in
$\mathcal{S}_{t-1}$
, the larger the value of
$\Phi _t$
. Strata consisting of introductory courses tend to have positive flux, while those consisting of more advanced courses tend to have negative flux.
Finally, we define the flux of a CPN as the average flux through its strata:
\begin{equation} \Phi =\frac {1}{T}\sum _{t=1}^T\Phi _t. \end{equation}
The CPN flux can be positive, negative, or zero, depending on the values of
$\Phi _t$
. For example, the flux through the first stratum is always positive,
$\Phi _1\gt 0$
(except in the extreme case where the CPN consists of a single stratum, in which case
$\Phi =\Phi _1=0$
), and the flux through the last stratum is always negative,
$\Phi _T\lt 0$
.
To illustrate the proposed CPN measures and provide the reader with a better intuitive understanding of these measures, Figure 5 shows all 16 different CPNs consisting of 4 nodes (after topological reduction and up to isomorphism), along with their breadths, depths, and fluxes. As intuitively expected, the breadth and depth are negatively correlated. The average values of depth for breadth
$B=1, 4/3, 2, 4$
are, respectively,
$D=4, 2.75, 1.8125, 1$
.

Figure 5. All 16 different CPNs with 4 nodes and their breadths (B), depths (D), and fluxes (
$\Phi$
), computed via (7), (12), and (20), respectively. The purple nodes indicate the nodes with zero out-degree, which are used for computing the CPN depth. The numbers next to strata are the values of fluxes
$\Phi _t$
through those strata, as defined in (16).
6. Two random graph CPN models
In this paper, we compare the breadth, depth, and flux of three real CPNs—the course networks of the Cyprus University of Technology (CUT), the California Institute of Technology (CIT), and Johns Hopkins University (JHU)—as well as those of synthetic CPNs generated by two random graph models, which are roughly analogous to the classical Erdős–Rényi model Erdös and Rényi (Reference Erdös and Rényi1959) and the standard configuration model Bollobás (Reference Bollobás1980) for undirected graphs.
It is important to highlight that we consider these two random graph models not because they generate DAGs similar to real CPNs (as we will see, they do not). We leave the development of a good random graph model for CPNs to future research. Here, our goal is to compare the breadth, depth, and flux of the real CPNs of CUT, CIT, and JHU with those of other DAGs that have the same numbers of nodes and links or the same degree sequence. For this purpose, we use synthetic CPNs (model-generated DAGs) because real CPNs are surprisingly difficult to find, and to the best of our knowledge, there are no other public datasets containing entire university CPNs (and code that constructs the CPNs), except for our GitHub repository https://github.com/pstavrin/Course-Prerequisite-Networks.
6.1 The Erdős–Rényi CPN model
As discussed in Section 3, any CPN is fundamentally a DAG (but not a DOG). A directed graph is acyclic if and only if its nodes can be topologically ordered. In other words, the nodes can be ordered (numerically labeled) such that the adjacency matrix
$A$
of the graph with respect to that order is upper triangular.
Let
$U(n,m)$
be the set of all
$n \times n$
strictly upper triangular binary matrices (whose elements are zeros and ones) with exactly
$m$
ones. Let
$A\in U(n,m)$
be a random
$n \times n$
matrix with
$m$
ones uniformly distributed above the diagonal. Algorithmically,
$A$
can be generated by starting with the zero
$n \times n$
matrix, choosing
$m$
out of
$n(n-1)/2$
elements above the diagonal via random sampling without replacement, and replacing them with ones. Matrix
$A$
generated this way is sampled uniformly at random from
$U(n,m)$
. We say that the random graph
$G$
with the adjacency matrix
$A$
is generated according to the Erdős–Rényi CPN model, denoted
The random graph
$G$
is then sampled uniformly from the ensemble of all DOGs with
$n$
nodes and
$m$
links. It is not, however, uniformly distributed on the ensemble of all DAGs with
$n$
nodes and
$m$
links, because two different DOGs can be isomorphic to the same DAG after dropping the fixed topological ordering (numerical labels on nodes). To the best of our knowledge, no method of sampling uniformly from the ensemble of DAGs is known.
6.2 The Karrer−Newman CPN model
The Karrer−Newman (KN) CPN model is based on the KN model for DOGs Karrer and Newman (Reference Karrer and Newman2009a, b), which is an analog of the standard configuration model for undirected graphs.
Consider a DOG with
$n$
nodes, i.e., a directed acyclic graph with a fixed topological ordering of the nodes, denoted by
$1,\ldots ,n$
. Thus, the graph can have a link from node
$i$
to node
$j$
only if
$i\lt j$
. Let
$k_i^{\mathrm{in}}$
and
$k_i^{\mathrm{out}}$
be the in- and out-degree of node
$i$
, and let
be the corresponding degree sequence of the graph.
The original KN model takes the ordered degree sequence
$(k^{\mathrm{in}},k^{\mathrm{out}})$
as its input and generates a random DOG with precisely this degree sequence as follows. It is convenient to represent the degree sequence as a collection of link “stubs” (half-links) pointing in and out of nodes in the appropriate numbers. As an illustration, Figure 6 shows a node with in-degree 2 and out-degree 3 represented by stubs.

Figure 6. A node with 2 incoming and 3 outgoing stubs.
Now, given
$n$
nodes with no links but with the appropriate number of incoming and outgoing stubs at each node, as described by the degree sequence
$(k^{\mathrm{in}},k^{\mathrm{out}})$
, we visit all nodes in order from 2 to
$n$
. For each node
$i$
, we randomly attach all its
$k_i^{\mathrm{in}}$
incoming stubs to
$k_i^{\mathrm{in}}$
outgoing stubs of previous nodes
$1,\ldots ,i-1$
, chosen uniformly from the set of all such outgoing stubs that are currently unattached. This process allows multilinks (just as in the standard configuration model), but they usually constitute a negligible fraction of all links. It can be shown that this model generates a random DOG sample uniformly from the ensemble of all DOGs (possibly with multilinks) with the degree sequence
$(k^{\mathrm{in}},k^{\mathrm{out}})$
Karrer and Newman (Reference Karrer and Newman2009a, b).
The KN CPN model is based on the original KN model for DOGs described above. It takes a real CPN
$\mathcal{G}$
as its input and generates a random CPN
$G$
with the same unordered degree sequence. Since any real CPN
$\mathcal{G}$
is a DAG and has many possible topological orderings of its nodes, to use the original KN models, we need to first convert the DAG
$\mathcal{G}$
into a DOG by selecting a specific ordering. Thus, given
$\mathcal{G}$
, a random CPN
$G$
is generated as follows:
-
(1) Compute the topological stratification of
$\mathcal{G}$
,(23)
\begin{equation} S(\mathcal{G})=\{\mathcal{S}_1,\ldots ,\mathcal{S}_T\}. \end{equation}
-
(2) For each stratum
$\mathcal{S}_t$
, select a random ordering of its nodes uniformly from the set of all
$n_t!$
permutations of
$n_t$
nodes. -
(3) Concatenate the orderings obtained in step 2 into a single ordering of nodes of
$\mathcal{G}$
, which, by construction, will be a topological ordering of
$\mathcal{G}$
. -
(4) Let
$(k^{\mathrm{in}},k^{\mathrm{out}})$
be the degree sequence of
$\mathcal{G}$
with respect to the topological ordering from step 3. -
(5) Generate a random graph
$G$
using the original KN model with the degree sequence
$(k^{\mathrm{in}},k^{\mathrm{out}})$
. -
(6) Replace all multilinks in
$G$
(if any) with single links.
We say that the random graph
$G$
produced this way is generated according to the Karrer-Newman CPN model, denoted
This notation highlights that generating a random CPN
$G$
that mimics the degree properties of
$\mathcal{G}$
requires the full network
$\mathcal{G}$
.
7. Empirical and simulation results
We consider three real CPNs corresponding to three very different universities: one European university, Cyprus University of Technology (CUT), and two US universities, California Institute of Technology (CIT) and Johns Hopkins University (JHU). CUT is the smallest and youngest university (established in 2004), located in Limassol, Cyprus. It comprises seven faculties and a language center. It was established to fill gaps in the Cyprus higher education system by offering degrees not provided by other institutions. CIT is a top-tier private research university, based in Pasadena, California, with a very strong emphasis on research in STEM fields. It has the highest number of Nobel laureates per capita (as of October 2024), is consistently ranked among the top universities in the world, and has more graduate than undergraduate students. JHU is the largest and oldest of the three considered universities (founded in 1876), located in Baltimore, Maryland. It is considered the first research university in the US. Compared to CIT, JHU is much larger, more diverse academically, offers a broader curriculum, and is renowned for its medical and public health research.
Table 1 summarizes the six global CPN measures for CUT, CIT, and JHU: the number of nodes
$n$
, the number of links
$\tilde {m}$
(before transitive reduction), the number of links
$m$
(after transitive reduction), breadth
$B$
, depth
$D$
, and flux
$\Phi$
. As intuitively expected, the larger the size
$n$
of the network (i.e., the more courses are offered by the curriculum), the larger its breadth
$B$
. Also, as discussed in Section 5.2, the breadth and depth are negatively correlated: when new courses are added to the curriculum, they are not likely to increase the lengths of the longest paths.
Table 1. Three real CPNs and their six global measures

Figure 7(a) shows depth
$D$
versus breadth
$B$
for the three universities: CUT (green), CIT (orange), and JHU (blue). We compare these true values with synthetic ones obtained from
$N=500$
random graphs generated according to both the Erdős–Rényi (ER) and Karrer–Newman (KN) CPN models and plot the average values of their depths and breadths in Figure 7(b). The average values of ER- and KN-generated graphs are represented by circles and diamonds, respectively. While the ER model deviates substantially, the KN model, on average, accurately captures CUT’s breadth and depth (the green diamond is close to the green star). The green scatter plots show the individual values generated by the ER and KN models for CUT, namely, the values of depth and breadth for
$G_1,\ldots ,G_N\sim \mathrm{ER}(n_{\mathrm{CUT}},m_{\mathrm{CUT}})$
and
$G_1,\ldots ,G_N\sim \mathrm{KN}(\mathcal{G}_{\mathrm{CUT}})$
. For CIT and JHU, however, both models fail to capture the real CPNs’ breadth and depth, and the corresponding scatter plots are not shown.

Figure 7. The depth versus breadth for CUT, CIT, JHU, and synthetic CPNs generated by the ER and KN models.
In Figure 8(a), we plot depth
$D$
versus flux
$\Phi$
for CUT, CIT, and JHU (stars), as well as the average values of
$D$
and
$\Phi$
computed from
$N=500$
CPNs generated by the ER (circles) and KN (diamonds) models. As before, the ER model is inaccurate in all three cases, and the KN model accurately captures, on average, only the depth and flux of CUT, the smallest of the three real CPNs. Figure 8(b) shows scatter plots of the individual values generated by the KN model for CUT (green) and Caltech (orange), namely, the values of depth and flux for
$G_1,\ldots ,G_N\sim \mathrm{KN}(\mathcal{G}_{\mathrm{CUT}})$
and
$G_1,\ldots ,G_N\sim \mathrm{KN}(\mathcal{G}_{\mathrm{CIT}})$
.

Figure 8. The depth versus flux for CUT, CIT, JHU, and synthetic CPNs generated by the KN model.
The KN CPN model generates a random CPN with the same unordered degree sequence as the real CPN it attempts to model. Therefore, the accuracy of reproducing the real values of breadth, depth, and flux depends on the extent to which these global measures are determined by the unordered degree sequence alone. As simulation results in Figures 7 and 8 indicate, for the smaller CUT CPN, its unordered degree sequence tightly constrains the possible values of breadth, depth, and flux. For the larger CPNs of CIT and JHU, however, this is not the case; the same degree sequence allows for much greater variability in these measures.
Finally, Figure 9 shows the evolution of the flux through stratum
$\Phi _t$
as the stratum number increases. The flux
$\Phi _t$
tends to decrease as we climb higher strata, since introductory courses tend to emit knowledge flow by serving as prerequisites for more advanced courses, which, in turn, tend to absorb the flow.

Figure 9. The flux through stratum versus the stratum number for CUT, CIT, and JHU.
8. Summary and discussion
In this paper, we propose three new global CPN measures that can be used for macro-scale comparison of course-prerequisite networks and for assessing the accuracy of random graph CPN models. The new measures are: breadth, depth, and flux, which quantify 1) how wide, 2) how deep the span of knowledge provided by the academic curriculum is, and 3) the average amount of knowledge flow through the CPN.
All three measures are invariant with respect to the transitive reduction and are based on the concept of topological stratification, a meso-scale structure defined for directed acyclic graphs that generalizes the concept of topological ordering. To illustrate the proposed measures, we compute them for the Cyprus University of Technology, the California Institute of Technology, and Johns Hopkins University https://github.com/pstavrin/Course-Prerequisite-Networks.
The proposed global CPN measures reflect key structural features of academic curricula and can be used for benchmarking peer institutions and guiding curriculum reform. Breadth reflects the horizontal structure of the curriculum, and can inform discussions about curriculum flexibility and modularity. Depth, on the other hand, captures the vertical structure, quantifies how hierarchical or sequential the curriculum is, and can inform discussions about the accessibility of advanced content and the pacing of student progression. Flux quantifies the average imbalance of prerequisite and postrequisite links across strata, reflects the intensity of knowledge flow through different stages of the curriculum, and can help identify bottlenecks or overloaded strata. Together, these measures provide a quantitative lens for assessing curricular architecture, diagnosing structural issues, and benchmarking curricula across peer institutions or disciplines.
In addition to real CPNs, we also consider synthetic CPNs generated by two random graph models: the ER and KN models, which are roughly analogous to the Erdős–Rényi model and the standard configuration model for undirected graphs. The KN model tends to be more accurate than the ER model in approximating the breadth, depth, and flux of real CPNs. This is not surprising, since it uses more information about the real CPN it aims to model. While the ER model uses just the number of nodes and links, the KN model uses the topological stratification and in- and out-degree sequences. Nevertheless, both models are rather inaccurate and cannot serve as realistic CPN models.
Over the years, the development and analysis of random graph models have helped to better understand the structure and function of many different real networks. Since the ER and KN models cannot serve this purpose for CPNs, this leads to the following natural question: are there any relatively simple, amenable-to-analysis, random graph models with a few parameters that can generate synthetic DAGs similar to real CPNs? The similarity between networks can be measured with respect to classical network measures (average degree, clustering coefficient, power-law exponent, etc.) as well as the new measures proposed in this paper.
Course-prerequisite networks originate and evolve in a highly decentralized manner: there is no single authority that decides what courses to add to the network and what links to establish between courses. These decisions are made collectively by course instructors. What local mechanisms are responsible for the formation of the global CPN structure? The answer to this question—and the appropriate modeling approach—may depend on how we interpret the links between nodes. Do they represent merely formal prerequisites, faculty beliefs, or objective dependencies between different areas of scientific knowledge represented by courses? We leave these important questions for future research.
Acknowledgments
We thank Gloria Brewster and Kimberley Mawhinney for providing us with a database of Caltech courses, Sergey Kushnarev and Fragkiskos Papadopoulos for their crucial assistance in obtaining course data from Johns Hopkins University and the Cyprus University of Technology, and the participants of the CMS Faculty Seminar at Caltech for their valuable feedback and stimulating discussions. We also thank the anonymous reviewers for useful comments and suggestions. This work was supported by the Carver Mead Discovery Grant and the Information Science and Technology (IST) initiative at Caltech.
Data Availability Statement
The network data analyzed in this paper are publicly available in the GitHub repository, https://github.com/pstavrin/Course-Prerequisite-Networks.
Funding Statement
This work was supported by the Carver Mead Discovery Grant and the Information Science and Technology (IST) initiative at Caltech.
Competing interests
The authors declare that they have no competing interests.




















