Table of Contents
Fetching ...

Decomposition and factorisation of transients in Functional Graphs

François Doré, Enrico Formenti, Antonio E. Porreca, Sara Riva

TL;DR

This work addresses the decomposability and factorisation of functional graphs (FGs) by formulating polynomial equations over a FG semiring and solving basic linear-type equations that involve transients. It extends prior cycle-only results to general connected FGs by introducing the t-abstraction, which encodes transient structure, and connects the problem to cancellation phenomena via unrolls and homomorphism counts. A polynomial-time algorithm is developed to derive constraints and enumerate potential solutions in the t-abstraction space, accompanied by an exponential-time solver that reconstructs full FG solutions using origins and height-based pruning, with experimental validation. The results offer a principled pathway toward solving polynomial equations over FGs and enable decomposition/factorisation analyses for large discrete dynamical systems, with potential impact on understanding complex time-evolving processes modeled by FGs.

Abstract

Functional graphs (FGs) model the graph structures used to analyse the behaviour of functions from a discrete set to itself. In turn, such functions are used to study real complex phenomena evolving in time. As the systems involved can be quite large, it is interesting to decompose and factorise them into several subgraphs acting together. Polynomial equations over functional graphs provide a formal way to represent this decomposition and factorisation mechanism, and solving them validates or invalidates hypotheses on their decomposability. The current solution method breaks down a single equation into a series of basic equations of the form AxX = B (with A, X, and B being FGs) to identify the possible solutions. However, it is able to consider just FGs made of cycles only. This work proposes an algorithm for solving these basic equations for general connected FGs. By exploiting a connection with the cancellation problem, we prove that the upper bound to the number of solutions is closely related to the size of the cycle in the coefficient A of the equation. The cancellation problem is also involved in the main algorithms provided by the paper. We introduce a polynomial-time semi-decision algorithm able to provide constraints that a potential solution will have to satisfy if it exists. Then, exploiting the ideas introduced in the first algorithm, we introduce a second exponential-time algorithm capable of finding all solutions by integrating several 'hacks' that try to keep the exponential as tight as possible.

Decomposition and factorisation of transients in Functional Graphs

TL;DR

This work addresses the decomposability and factorisation of functional graphs (FGs) by formulating polynomial equations over a FG semiring and solving basic linear-type equations that involve transients. It extends prior cycle-only results to general connected FGs by introducing the t-abstraction, which encodes transient structure, and connects the problem to cancellation phenomena via unrolls and homomorphism counts. A polynomial-time algorithm is developed to derive constraints and enumerate potential solutions in the t-abstraction space, accompanied by an exponential-time solver that reconstructs full FG solutions using origins and height-based pruning, with experimental validation. The results offer a principled pathway toward solving polynomial equations over FGs and enable decomposition/factorisation analyses for large discrete dynamical systems, with potential impact on understanding complex time-evolving processes modeled by FGs.

Abstract

Functional graphs (FGs) model the graph structures used to analyse the behaviour of functions from a discrete set to itself. In turn, such functions are used to study real complex phenomena evolving in time. As the systems involved can be quite large, it is interesting to decompose and factorise them into several subgraphs acting together. Polynomial equations over functional graphs provide a formal way to represent this decomposition and factorisation mechanism, and solving them validates or invalidates hypotheses on their decomposability. The current solution method breaks down a single equation into a series of basic equations of the form AxX = B (with A, X, and B being FGs) to identify the possible solutions. However, it is able to consider just FGs made of cycles only. This work proposes an algorithm for solving these basic equations for general connected FGs. By exploiting a connection with the cancellation problem, we prove that the upper bound to the number of solutions is closely related to the size of the cycle in the coefficient A of the equation. The cancellation problem is also involved in the main algorithms provided by the paper. We introduce a polynomial-time semi-decision algorithm able to provide constraints that a potential solution will have to satisfy if it exists. Then, exploiting the ideas introduced in the first algorithm, we introduce a second exponential-time algorithm capable of finding all solutions by integrating several 'hacks' that try to keep the exponential as tight as possible.
Paper Structure (19 sections, 10 theorems, 17 equations, 14 figures, 3 algorithms)

This paper contains 19 sections, 10 theorems, 17 equations, 14 figures, 3 algorithms.

Key Result

Proposition 3.1

Consider two connected FGs $G$ and $H$ with their respective t-abstractions $\check{G}= [T^{G}_{}]$ (with $|\mathcal{C}_G|$ rows and $h^{\max}_G$ columns) and $\check{H}= [T^{H}_{}]$ (with $|\mathcal{C}_H|$ rows and $h^{\max}_H$ columns). Then, the t-abstraction $\check{K}$ of the product $K = G \ti where the row indices $r$ and $r-j$ (respectively $r-j+(i-1)$ and $r+(i-1)$) are interpreted modulo

Figures (14)

  • Figure 1: A functional graph $G$ with two cycles and some transients nodes connected to both cycles. We have $G=(V,f)$ with $V=\mathcal{P}_G\cup\mathcal{T}_G$, $\mathcal{P}_G=\mathcal{C}_1 \cup \mathcal{C}_2=\left\{v_1,v_2\right\}\xspace\cup\left\{v_8,v_9,v_{10}\right\}\xspace$ and $\mathcal{T}_G=\mathcal{T}_1 \cup \mathcal{T}_2=\left\{v_3,v_4,v_5,v_6,v_7\right\}\xspace\cup\left\{v_{11},v_{12},v_{13},v_{14},v_{15},v_{16},v_{17},v_{18}\right\}\xspace$. As an example of a transient, we can consider the green nodes. Node $v_{18}$ is contained in transient $\left\{v_{18},v_{12}\right\}\xspace$ of length $2$.
  • Figure 2: An example of the product operation between connected FGs $G$ and $G'$. For clarity, only the names of some nodes are shown. According to the cycle lengths of the two graphs, the result of the product operation $G \times G'$ consists of $\gcd(2,4)=2$ components with cycles of length $\mathop{\mathrm{lcm}}\nolimits(2,4)=4$. Intuitively, we can see the two resulting cycles as the two possible "parallel" executions of the cyclic dynamics ($\left\{(1,a),(2,b),(1,c),(2,d)\right\}\xspace$ or $\left\{(2,a),(1,b),(2,c),(1,d)\right\}\xspace$). The set of vertices of the resulting graph is the Cartesian product $V\times V'$. A generic node $(v,v')$ is cyclic in the result iff $v$ is a cyclic node of $G$ and $v'$ is a cyclic node of $G'$, otherwise $(v,v')$ is transient. An alternative way of expressing the transients connected to a cyclic node $(v,v')$ is by retracing the edges of the original graphs backwards (i.e., by considering all possible predecessors). For example, the set of possible predecessors of the node $(1,a)$ is the Cartesian product of predecessors of $1$ and of $a$ (i.e., $\left\{2,3,4\right\}\xspace$ and $\left\{d,e\right\}\xspace$, respectively). In fact, we see that $(1,a)$ has $6$ incoming edges. Note that backtracking the edges in the transient nodes will produce a transient of depth equal to the minimum of the original transients depths (see $\left\{(5,f),(3,e)\right\}\xspace$ for example). However, by backtracking only in cyclic nodes of one graph and only in transient nodes of the other graph, we obtain a copy of the transient (consider $\left\{(2,g),(1,f),(2,e)\right\}\xspace$ and $\left\{(5,c),(3,d)\right\}\xspace$ for example).
  • Figure 3: We consider the connected FG $G$ with a cycle of length 4 on the right. A possible index function is $g(y)=v_{y+1}$. According to $G$ and $g(y)$, the corresponding t-abstraction $T^{G}_{}$ and the matrix $N^{G}_{}$ of $G$ are shown on the left. In both cases, $r$ runs through rows and $h$ through columns. Note that $|T^{G}_{r,h}|$ is always equal to $|N^{G}_{r,h-1}|$ since each element of $T^{G}_{r,h}$ represents the number of predecessors of a node in $N^{G}_{r,h-1}$.
  • Figure 4: Two nonisomorphic graphs (top) having the same t-abstractions (bottom).
  • Figure 5: An example of product operation between the t-abstractions $T^{G}_{}$ and $T^{H}_{}$. Above there are the two t-abstractions and the corresponding connected FGs. Below there is the resulting t-abstraction $T^{K}_{}$ computed according to Proposition \ref{['propprodgeneral']}. Let us suppose that we have already computed all $T^{K}_{r,h}$ with $r\in\left\{0,\ldots,11\right\}\xspace$ and $h=1$, and also all $T^{K}_{r,h}$ with $r\in\left\{0,\ldots,9\right\}\xspace$ and $h=2$. Then, we need to compute $T^{K}_{10,2}$ (in yellow). According to the proposition, $T^{K}_{10,2}=T^{G}_{2,2}\otimes(T^{H}_{1,2}+T^{H}_{0,1})+T^{H}_{1,2}\otimes T^{G}_{1,1}=[2,1]\otimes([2,2])+[2]\otimes[3]=[4,2,4,2,6]$. Intuitively, we should follow the diagonal of elements in the two original matrices until we reach the first column (as shown in yellow). Note that if we need to calculate an element $T^{K}_{r,h}$ such that one of the two matrices does not have a column $h$, we still consider the elements on the diagonal (with $h'<h$). An example is $T^{K}_{1,4}=T^{G}_{1,4}\otimes(T^{H}_{0,3}+T^{H}_{2,2}+T^{H}_{1,1})$ (in green in the matrices).
  • ...and 9 more figures

Theorems & Definitions (22)

  • Definition 2.1: Direct product of digraphs
  • Proposition 3.1
  • proof
  • Definition 3.2: Unroll of a FG
  • Definition 3.3: Product of in-trees
  • Theorem 3.4: Lóvasz lovasz1971cancellation
  • Theorem 3.5
  • Lemma 3.6
  • proof
  • proof : Proof of Theorem \ref{['th:homproduct']}
  • ...and 12 more