Clusters and layers

88 Views Asked by At

In directed graphs the most simple and natural concept of a cluster would be a maximal subgraph that is completely connected (in both directions). Each directed graph has a unique decomposition into clusters in this sense, which may overlap. And typically there will be lots of trivial clusters, consisting of only one node (assuming that each node is connected to itself).

Assuming that (non-trivial) clusters may play specific functional roles - e.g. in artificial brains - another way to group nodes comes to mind: layers. Mathematically, a layer in a directed graph may be defined like this:

A subset $L$ of nodes is a layer iff

  • it is not a cluster, and

  • the sources of all afferent edges to the nodes $\nu \in L$ build a layer or a cluster, or

  • the targets of all efferent edges from the nodes $\nu \in L$ build a layer or a cluster, and

  • it is maximal in this respect.

Note that the nodes of a layer may or may not be connected to each other.

This definition looks circular at first sight, but I believe that it allows to decompose each directed graph uniquely into layers and clusters (which again may overlap).

Question 1: Is this true? How to prove it?

Question 2: Are layers and clusters in some sense the same concept, only in different disguises?

What clusters and layers (e.g. in an artificial brain) have in common: they are modules that process, transfer, and share signals in a parallel way (clusters taking more time to perform one computational step than layers, that are not internally connected).