Structural Causal Models with cycles I this context I am referring to Structural Causal Models (SCM) such as presented here https://fabiandablander.com/r/Causal-Inference.html or here https://medium.data4sci.com/causal-inference-part-iv-structural-causal-models-df10a83be580.
From the way, these Structural Causal Models are defined, I do not see any rules that forbid Structural Causal Models to have cycles. I could easily defined two structural equations $f_i$ and $f_j$ which contain each other as inputs/arguments to their function: $X_i := f_i(X_j, \ldots, U_i)$ and $X_j := f_j(X_i, \ldots, U_j)$.
Are Structural Causal Models allowed to by cyclic or do they need to be acyclic similar to Directed Acyclic Graphs (DAGs)?
If Structural Causal Models can have cycles, then how do Structural Causal Models deal with the infinite feedback loops of redefining/updating each other's values for $X_i$ and $X_j$?
I would appreciate theoretical and applied answers or any insights to this question.
 A: Most of the current causal literature restricts itself to acyclic SCMs, but there has recently been a lot of research advancing the theory of cyclic causal systems. Although one of the first algorithms for cyclic causation, the CCD by Richardson, was already published in 1996, it was only in recent years that the amount of work published on cyclic SCMs has increased considerably, with seminal papers by e.g. Hyttinen et al. and Forre and Mooij.
And there are plenty of cyclic causal systems in the real world that need proper description. Just think of any systems that contain feedback loops. Think e.g. of demand-supply-price models, think of how infection rates in two neighboring regions affect each other, or think of equilibrating controller systems.
Often, the underlying strict physical cause-effect structure is too complex and happens too fast for measurements to have a chance to resolve it. The result is data that is usually aggregated over larger time intervals in which lots of causation is happening that is acyclic on the micro scale but cyclic on the measured (macro) scale.
Note, however, that cyclic SCMs need a different theory compared to the standard acyclic SCMs. E.g., a central notion also in causality is d-separation, which has to be replaced by $\sigma$-separation. See Bongers et al. for a treatment of the foundations of cyclic SCMs.
For your question about the infinite feedback loops, have a look at the end of section 2.2. of Hyttinen et al. who treat the linear case. Intuitively, connections between two nodes can be described via trek-rules, like the famous path rules by Wright, and if you have loops, you get infinitely many paths (running any number of times through the loops) the sum over which must converge.
A: Well, the fundamental rule of causality is that causes must precede effects - that is a strict inequality in time. So it is not permissible to have $X_i(t)=f_i(X_j(t),\dots,U_i(t)),$ but then turn around and have $X_j(t)=f_j(X_i(t),\dots,U_j(t)).$ But you can have feedback show up in subsequent moments in time: $X(t)=f(Y(t)),$ and then $Y(t+1)=g(X(t)).$ This is non-trivial to deal with in the DAG setting, but one way to begin to handle it is to treat $Y(t)$ and $Y(t+1)$ as separate nodes in the causal graph.
