SlowGuess/NeurIPS_2023_OCR huggingface dataset:
1: Input: A  $n$ -variate time series  $V = (\mathbf{X}^1, \mathbf{X}^2, \mathbf{X}^3, \dots, \mathbf{X}^n)$ , periodicity upper bound  $\omega_{\mathrm{ub}}$ , time lag upper bound  $\tau_{\mathrm{ub}}$ . By default, we assume  $\tau_{\mathrm{ub}}$  and  $\omega_{\mathrm{ub}}$  are larger than their true value.
2: A superset of parent set is obtained using PCMCI with  $\tau_{\mathrm{ub}}$  and denote it by  $\widehat{\mathrm{SPa}}(X_t^j) \forall j, t$ .
3: for  $\mathbf{X}^j$  where  $j\in [n]$  do
4: for a guess  $\omega \in [\omega_{ub}]$  of  $\omega_{j}$  do
5: Let  $\widehat{\Pi}^j \coloneqq \{\widehat{\Pi}_k^j | k \in [\omega]\}$  where  $\widehat{\Pi}_k^j = \{2\tau_{\mathrm{ub}} + k, 2\tau_{\mathrm{ub}} + \omega + k, 2\tau_{\mathrm{ub}} + 2\omega + k, \dots\}$ .
6: for  $k\in [\omega ]$  do
7: Initialize the parent set for  $X_{t}^{j}, t \in \{t : t \geq 2\tau_{\mathrm{ub}}, t \in \widehat{\Pi}_{k}^{j}\}$  (with guess  $\omega$ ) denoted by  $\widehat{\mathrm{Pa}}_{\omega}(X_{t}^{j}) \gets \widehat{S\mathrm{Pa}}(X_{t}^{j})$ .
8: Consider  $X_{t - \tau}^{i}\in \widehat{\mathrm{Pa}}_{\omega}(X_{t}^{j})$ . Remove  $X_{t - \tau}^{i}$  from  $\widehat{\mathrm{Pa}}_{\omega}(X_t^j)$  if  $X_{t - \tau}^{i}\perp \perp X_{t}^{j}|$ $\left(\widehat{\mathrm{SPa}} (X_t^j)\cup \widehat{\mathrm{SPa}} (X_{t - \tau}^i)\right)\setminus X_{t - \tau}^{i}$  using a CI Test with samples  $t\in \{t:t\geq 2\tau_{\mathrm{ub}},t\in \widehat{\Pi}_k^j\}$
9: Store  $\widehat{\mathrm{Pa}}_{\omega}(X_t^j)$  for  $X_{t}^{j}$ ,  $t\in \{t:t\geq 2\tau_{\mathrm{ub}},t\in \widehat{\Pi}_k^j\}$ .
10: end for
11: end for
12:  $\widehat{\omega}_j\gets \arg \min_{\omega \in [\omega_{\mathrm{ub}}]}\max_{k\in [\omega ]}|\widehat{\mathrm{Pa}}_\omega (X^{j}_{t\in \widehat{\Pi}_k^j})|.$
13: Set  $\widehat{\operatorname{Pa}}(X_t^j) \gets \widehat{\operatorname{Pa}}_{\hat{\omega}_j}(X_t^j)$  for  $X_t^j, t \in \{t : t \geq 2\tau_{\mathrm{ub}}\}$ .
14: end for
15: return  $\hat{\omega}_j$  and  $\widehat{\mathrm{Pa}}(X_t^j) \forall j \in [n], t \geq 2\tau_{\mathrm{ub}}$ .
$\mathrm{PCMCI}_{\Omega}$  builds on the Algorithm  $\mathrm{PCMCI}$  in [Runge et al. 2019]. Additional details about  $\mathrm{PCMCI}$  are provided in the supplementary material.
Overview of Algorithm  $\mathbb{1}$  PCMCI. We assume that the periodicity and time lag are upper bounded by  $\omega_{\mathrm{ub}}$  and  $\tau_{\mathrm{ub}}$  respectively. Using PCMCI Runge et al. [2019], we obtain a superset of parents for every variable  $X_{t}^{j}$  denoted by  $\widehat{SPa}(X_{t}^{j})$  (line 2). Our goal is to identify the correct set of parents along with its periodicity for every variable in  $V$ . For a variable  $X_{t}^{j}$ , we guess its periodicity  $\omega$  by iterating over all possible values in  $[\omega_{\mathrm{ub}}]$ . Next, we construct time partition subsets  $\widehat{\Pi}_{k}^{j}$ ,  $k \in [\omega]$  based on the guess of periodicity  $\omega$ . In each time partition subset, we maintain a parent set, denoted by  $\widehat{\mathrm{Pa}}_{\omega}(X_{t}^{j})$ , initializing it with the superset  $\widehat{SPa}(X_{t}^{j})$ . Then we test the causal relations between  $X_{t - \tau}^{i} \in \widehat{\mathrm{Pa}}_{\omega}(X_{t}^{j})$  and  $X_{t}^{j}$  using a CI test on the sample  $t \in \widehat{\Pi}_{k}^{j}$  (lines 6-10).
For each guess  $\omega$ , every variable in  $\mathbf{X}^j$  should have its estimated parent set (line 9), and there are total  $\omega$  potentially different parent set index  $\mathrm{pInd}_{k\in [\omega]}^j$  in  $\mathbf{X}^j$ . We return an estimate  $\hat{\omega}_j$  that maximizes the sparsity of the causal graph (Lemma 3.4). Therefore, we select the value of  $\omega \in [\omega_{\mathrm{ub}}]$  that minimizes the maximum value of  $|\widehat{\mathrm{Pa}}_{\omega}(X_t^j)|$ ,  $t \in [T]$  as the estimator of  $\omega_j$  (line 12).
3.1 Theoretical Guarantees
Our main theorem shows that  $\mathrm{PCMCl}_{\Omega}$  recovers the true causal graph on discrete data. There are three important lemmas. We provide all the detailed proof in the supplementary material.
Theorem 3.1. Let  $\hat{\mathcal{G}}$  be the estimated graph using the Algorithm  $PCMCI_{\Omega}$ . Under assumptions A1-A7 and with an oracle (infinite sample size limit), we have that:
$$
\hat {\mathcal {G}} = \mathcal {G} \tag {13}
$$
Lemma 3.2 and Lemma 3.3 jointly state that if CI tests are conducted on samples generated by different causal mechanisms, the obtained parent sets  $\widehat{SPa}(X_t^j)$  should be the superset of the union of the true and illusory parent sets  $\cup_k\mathrm{Pa}_k(X_t^j)$ . That is, the estimated graph should be denser than the correct graph. The true parent set can then be obtained by directly testing the independent relations between the target variable  $X_t^j$  and the variables in  $\widehat{SPa}(X_t^j)$ , assuming a consistent CI test. Note that the CI tests in our algorithm are assumed to be consistent given i.i.d. samples. We do not assume
the consistency of CI tests with respect to semi-stationary data. Therefore, any CI tests that maintain consistency with i.i.d. samples can be seamlessly integrated into our algorithm.
Lemma 3.2. Denote that  $\{\mathrm{Pa}_k(X_t^j)\}_{k\in [\omega_j]}$  contain the true and illusory parent sets, where  $\omega_{j}$  is the true periodicity of  $\mathbf{X}^j$ . For any random variable  $X_{t}^{j}$  with large enough  $t$ , under assumptions A1-A7 and with an oracle (infinite sample size limit), we have:
$$
p \left(p \left(X _ {t} ^ {j} \mid \cup_ {k = 1} ^ {\omega_ {j}} \operatorname {P a} _ {k} \left(X _ {t} ^ {j}\right)\right) \neq p \left(X _ {t} ^ {j} \mid \cup_ {k = 1} ^ {\omega_ {j}} \operatorname {P a} _ {k} \left(X _ {t} ^ {j}\right) \backslash y\right)\right) = 1, \forall y \in \cup_ {k = 1} ^ {\omega_ {j}} \operatorname {P a} _ {k} \left(X _ {t} ^ {j}\right) \tag {14}
$$
Here,  $p(X_{t}^{j} \mid \cup_{k=1}^{\omega_{j}} \mathrm{Pa}_{k}(X_{t}^{j})) = \lim_{T \to \infty} \hat{p}(X_{t}^{j} \mid \cup_{k=1}^{\omega_{j}} \mathrm{Pa}_{k}(X_{t}^{j}))$  where  $\hat{p}(X_{t}^{j} \mid \cup_{k=1}^{\omega_{j}} \mathrm{Pa}_{k}(X_{t}^{j}))$  is an estimated conditional distribution using all samples  $t \in [\tau_{\max} + 1, T]$ :
$$
\hat {p} \left(X _ {t} ^ {j} \mid \cup_ {k = 1} ^ {\omega_ {j}} \operatorname {P a} _ {k} \left(X _ {t} ^ {j}\right)\right) = \frac {\sum_ {t} \mathbb {1} \left(X _ {t} ^ {j} , \cup_ {k = 1} ^ {\omega_ {j}} \operatorname {P a} _ {k} \left(X _ {t} ^ {j}\right)\right)}{\sum_ {t} \mathbb {1} \left(\cup_ {k = 1} ^ {\omega_ {j}} \operatorname {P a} _ {k} \left(X _ {t} ^ {j}\right)\right)}. \tag {15}
$$
Proof sketch. We argue that the estimated conditional distribution in Eq.(15) can be written as a linear combination of  $\hat{p}(X_t^j|\mathrm{Pa}(X_t^j))$  where  $t\in \Pi_k^j$ ,  $k\in [\omega_j]$ , i.e., as a mixture of conditional distributions. The coefficients in the linear function, say  $\alpha_{k}, k\in [\omega_{j}]$ , can be further decomposed based on a finer time partition called the homogenous time partition, which consists of subsets constructed according to the Markov chains  $\{Z_n^q\}_{q\in [\delta ]}$  corresponding to the time series. Based on Assumption A7, the Markov chains are stationary and ergodic. Therefore, after sufficiently large time steps, the distribution of  $\{Z_n^q\}_{q\in [\delta ]}$  will be invariant across  $n$  as it achieves unique equilibrium. With this type of stationary sample, we can express  $\alpha_{k}$  by joint distributions instead of the indicators. Then, we can complete the proof of our inequality claim in Eq.(14) using Assumption A2 and Bayes theorem.
Lemma 3.3. Let  $\widehat{\mathrm{SPa}}(\mathbf{X}_t^j)$  denote the estimated superset of parent set for  $\mathbf{X}^j \in V$  obtained from the Algorithm [1] (line 2).  $\{\mathrm{Pa}_k(X_t^j)\}_{k \in [\omega_j]}$  contain the true and illusory parent sets, where  $\omega_j$  is the true periodicity of  $\mathbf{X}^j$ . Under assumptions A1-A7 and with an oracle (infinite sample size limit), we have that:
$$
\cup_ {k = 1} ^ {\omega_ {j}} \mathrm {P a} _ {k} (X _ {t} ^ {j}) \subseteq \widehat {S \mathrm {P a}} (X _ {t} ^ {j}), \forall t \in [ \tau_ {\max } + 1, T ]
$$
Proof sketch. Assume the contrary, i.e., there exists  $s \in \cup_{k} \mathrm{Pa}_{k}(X_{t}^{j}) \setminus \widehat{\mathrm{SPa}}(X_{t}^{j})$ . From Lemma 3.2, we have  $X_{t}^{j} \nVdash s \mid \cup_{k=1}^{\omega_{j}} \mathrm{Pa}_{k}(X_{t}^{j}) \setminus s$ . By the Definition 2.4, we have  $\mathrm{Pa}(X_{t}^{j}) \subset \cup_{k=1}^{\omega_{j}} \mathrm{Pa}_{k}(X_{t}^{j})$ . If  $s \notin \mathrm{Pa}(X_{t}^{j})$ , by the causal Markov property (Assumption A2), the dependence relation can not be true because  $s$  is a non-descendant of  $X_{t}^{j}$ . If  $s \in \mathrm{Pa}(X_{t}^{j})$ , our Algorithm would have concluded that  $X_{t}^{j} \nVdash s \mid \widehat{\mathrm{SPa}}(X_{t}^{j})$  (line 2), evident from the causal Markov property, contradicting our assumption. Hence, the lemma.
Based on Lemma 3.2 and Lemma 3.3, we can identify the true  $\omega_{j}$  for  $\mathbf{X}^j$  through Lemma 3.4.
Lemma 3.4. Let  $\omega_{j}$  denote the true periodicity for  $\mathbf{X}^j\in V$  and  $\widehat{\mathrm{Pa}}_{\omega}(X_{t\in \Pi_k^j}^j)$  denote the estimated parent set for  $X_{t}^{j}$  obtained from Algorithm line 9, where  $t\in \Pi_k^j$ . Define:
$$
\widehat {\omega} _ {j} = \arg \min  _ {\omega \in [ \omega_ {u b} ]} \max  _ {k \in [ \omega ]} | \widehat {\mathrm {P a}} _ {\omega} \left(X _ {t \in \Pi_ {k} ^ {j}} ^ {j}\right) | \tag {16}
$$
Under assumptions A1-A7 and with an oracle (infinite sample limit), we have that  $\hat{\omega}_j = \omega_j$ ,  $\forall j \in [n]$  almost surely.
Proof sketch. Assume the contrary that  $\hat{\omega}_j \neq \omega_j$ , then in the Algorithm [1], we have an incorrect time partition  $\widehat{\Pi}^j$ . Hence, CI tests that are performed use samples with different causal mechanisms.
(a) Accuracy of  $\hat{\omega}$
(b) Runtime (in sec.) when  $\omega_{\mathrm{max}}$  varies
Figure 2:  $\mathrm{PCMCl}_{\Omega}$  is tested on 5-variate time series with  $\tau_{\mathrm{max}} = 5$ . Set  $\tau_{\mathrm{ub}} = 15, \omega_{\mathrm{ub}} = 15$  for all variables. Every line corresponds to a different time series length. Every marker corresponds to the average accuracy rate or average running time over 100 trials. a) The accuracy rate of  $\hat{\omega}$  for different time series lengths and different  $\omega_{\mathrm{max}}$ . b) Illustration of Runtime (in sec.) when  $\omega_{\mathrm{max}}$  varies.
$\hat{p}(X_t^j \mid \cup_{k=1}^{\omega_j} \mathrm{Pa}_k(X_t^j))$  in Eq.(15) is estimated from a mixture of two or more time partition subsets, say  $\Pi_1^j$  and  $\Pi_2^j$ . We can apply Lemma 3.2 with  $\cup_{k=1}^2 \mathrm{Pa}_k(X_t^j)$ . With Lemma 3.3,  $\cup_{k=1}^2 \mathrm{Pa}_k(X_t^j) \subseteq \widehat{\mathrm{Pa}}_{\hat{\omega}_j}(X_t^j)$ . Hence, for  $\hat{\omega}_j$ ,  $|\widehat{\mathrm{Pa}}_{\hat{\omega}_j}(X_t^j)| \geq |\cup_{k=1}^2 \mathrm{Pa}_k(X_t^j)|$  using mixture samples  $t \in \cup_{k=1}^2 \Pi_k^j$ . For true  $\omega_j$ , we have  $|\widehat{\mathrm{Pa}}_{\omega_j}(X_t^j)| = |\mathrm{Pa}(X_t^j)|$ . With Assumption A6 the Hard Mechanism Change,  $|\cup_{k=1}^2 \mathrm{Pa}_k(X_t^j)| > |\mathrm{Pa}(X_t^j)|$  so that  $\omega_j$  always leads to a smaller size of estimated parent sets than  $\hat{\omega}_j$ , contrary to the definition of  $\hat{\omega}_j$ . Hence,  $\hat{\omega}_j = \omega_j$ .
4.1 Experiments on Continuous-valued Time Series
To validate the correctness and effectiveness of our algorithm, we perform a series of experiments. The Python code is provided at https://github.com/CausalML-Lab/PCMCI-Omega. In this section, we test four algorithms [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2019], [2020], on continuous-valued time series with Gaussian noise. The experiments for continuous-valued time series with exponential noise and binary-valued time series are in the supplementary material.
Following [Runge et al. 2019], we generate the continuous-valued time series in three steps:
1. Construct an  $n$ -variate time series  $V$  with length  $T$  using independent and identical (Standard Gaussian or Exponential) noise temporarily. Determine  $\tau_{\mathrm{max}}$  and  $\omega_{\mathrm{max}}$  where  $\omega_{\mathrm{max}} = \max \{\omega_j\}_{j \in \{n\}}$ . After making sure that one univariate time series, say  $\mathbf{X}^j$ , has periodicity  $\omega_{\mathrm{max}}$ , the periodicity of the remaining time series  $\mathbf{X}^i$ ,  $i \neq j$  is randomly selected from  $\{1, \dots, \omega_{\mathrm{max}}\}$  respectively.
2. Randomly generate  $\omega_{j}$  binary edge matrices with shape  $(n, \tau_{\max})$  for each time series  $\mathbf{X}^j, j \in [n]$ . 1 denotes an edge and 0 denotes no edge. Each binary matrix represents one parent set index  $\mathrm{pInd}_k^j, k \in [\omega_j]$ . Randomly generate  $\omega_{j}$  coefficient matrices with shape  $(n, \tau_{\max})$  for each time series  $\mathbf{X}^j, j \in [n]$ . One binary edge matrix and one coefficient matrix jointly determine one causal mechanism. Hence, total  $\omega_{j}$  causal mechanisms are constructed. Here, make sure that  $V$  satisfies Assumption A6.
3. Starting from time point  $t > \tau_{\max}$ , generate vector  $\mathbf{X}_t$  over time according to all the causal mechanisms of  $V$ , until  $t$  achieves  $T$ .
<sup>1</sup>We did not conduct experiments on JIT-LiNGAM because this is from a very recent paper [Fijiwara et al. 2023] and is considered concurrent per NeurIPS policy.
(a) Gaussian noise
Figure 3: 4 algorithms are tested on 5-variate time series. Set  $\tau_{\mathrm{ub}} = 15, \omega_{\mathrm{ub}} = 15$  for all variables. Every line corresponds to a different algorithm. Every marker corresponds to the average performance over 100 trials.
(b) Performance when  $\tau_{\mathrm{max}}$  or  $n$  varies
Following the previous work in Huang et al. [2020],  $F_{1}$  score, Adjacency Precision, and Adjacency Recall are used to measure the performance of the algorithms. The details of calculating these metrics are described in the Appendix. All the performance statistics are averaged over 100 trials. The standard error of the averaged statistics is displayed either by color filling or by error bars.
A correct estimator  $\hat{\omega}$  is the prerequisite for obtaining the correct causal graph. Fig 2(a) shows the accuracy rate of  $\hat{\omega}$  for different time lengths  $T$ . Here, elements in  $\{N\omega_{j}\}$  where  $N \in [\frac{\omega_{\mathrm{ub}}}{\omega_{j}}]$  are all treated as correct estimations. By Definition 2.2 and 2.3, the multiple of  $\omega_{j}$  is still associated with a correct causal graph. However, it leads to a finer time point partition  $\Pi^{j}$ , decreasing the sample size used in each CI test from approximately  $T / \omega_{j}$  to approximately  $T / (N\omega_{j})$ . The accuracy rate is sensitive to  $\omega_{\mathrm{max}}$  for small  $T$ . This result verifies that algorithm  $\mathrm{PCMCI}_{\Omega}$  has the capacity to detect the true periodicity of each  $\mathbf{X}^{j} \in V$  with a large enough time length.
We evaluate the performances of  $\mathrm{PCMCl}_{\Omega}$  on continuous-valued time series with Gaussian noise shown as Fig3(a). As  $T$  increases, it is natural to see a continuous improvement in performance. The sub-figures show that all three evaluation metrics decrease when  $\omega_{\mathrm{max}}$  gets larger. The precision of  $\mathrm{PCMCl}_{\Omega}$  is always far better than other algorithms when  $\omega_{\mathrm{max}}$  is not equal to 1. Given the fact that the parent sets  $\widehat{\mathrm{Pa}}(X_t^j) \forall j, t$  obtained from  $\mathrm{PCMCl}_{\Omega}$  are subsets of the parent set  $\widehat{\mathrm{Spa}}(X_t^j) \forall j, t$  estimated from  $\mathrm{PCMCl}$ , the recall rate of  $\mathrm{PCMCl}$  should be the upper bound of the recall rate of  $\mathrm{PCMCl}_{\Omega}$ . This assertion has been verified as the red recall line of  $\mathrm{PCMCl}_{\Omega}$  is always below the blue recall line of  $\mathrm{PCMCl}$  as  $T$  increases.
In Fig 3(a), the recall of  $\mathrm{PCMCI}_{\Omega}$  is worse than  $\mathrm{PCMCI}$  for  $T = 500$ . In this regime, the accuracy rate of  $\hat{\omega}$  is low, shown as the dark blue line in Fig 2(a). Small sample sizes in CI tests may result in a sparser causal graph. Hence the number of true positive edges may decrease. This is a common problem for many constraint-based algorithms, but it hurts  $\mathrm{PCMCI}_{\Omega}$  the most because in  $\mathrm{PCMCI}_{\Omega}$ , the sample sizes in each CI test are approximate  $T / \hat{\omega}$  instead of  $T$ . As  $T$  increases, the red recall line of  $\mathrm{PCMCI}_{\Omega}$  push forward to the blue recall line of  $\mathrm{PCMCI}$ . The high value of both adjacent precision and recall rate with large  $T$  verify that  $\mathrm{PCMCI}_{\Omega}$  can identify the correct causal graph.
We also observe the performance of our algorithm as  $\tau_{\mathrm{max}}$  and  $N$  varies in Fig 3(b). As the performance of  $\mathrm{PCMCl}_{\Omega}$  is consistent over  $n$ -variate time series with different  $n$ , large  $\tau_{\mathrm{max}}$  may lead to a smaller precision and recall rate.
4.2 Case Study
Here, we construct an experiment with a real-world climate time series dataset. In Runge et al. [2019], the authors tested dependencies among monthly surface pressure anomalies in the West Pacific and surface air temperature anomalies in the Central Pacific, East Pacific, and tropical Atlantic from 1948 to 2012. Our application explores the causal relations among the monthly mean of the same set of variables from 1948-2022 with 900 months. Let  $X_{t}^{\mathrm{wp}}$  denote the monthly mean of surface pressure in the West Pacific,  $X_{t}^{\mathrm{cp}}$ ,  $X_{t}^{\mathrm{ep}}$  and  $X_{t}^{\mathrm{ta}}$  denote the monthly mean of air temperature in the Central Pacific, East Pacific, and tropical Atlantic, respectively.
The parent sets for each variable obtained from  $\mathrm{PCMCl}_{\Omega}$  algorithms are shown in Table [1]. Sets of true and illusory parents of a variable at time  $t$  are separated by curly braces. For instance, variable  $X_{t}^{\mathrm{wp}}$  with  $\hat{\omega}_{\mathrm{wp}} = 1$  means that the causal mechanism of the surface pressure in the West Pacific remains invariant over time with the estimated parent set  $\{X_{t-1}^{\mathrm{wp}}, X_{t-2}^{\mathrm{wp}}, X_{t-1}^{\mathrm{ep}}, X_{t-1}^{\mathrm{ta}}\}$ . Only time series  $\mathbf{X}^{\mathrm{cp}}$  has three different parent sets, including one true parent set and two illusory parent sets, which appear periodically over time. The three parent sets of  $X_{t}^{\mathrm{cp}}$  imply that the causal effect from the tropical Atlantic air temperature  $X_{t-1}^{\mathrm{ta}}$  to the Central Pacific air temperature  $X_{t}^{\mathrm{cp}}$  would disappear every quarter of a year. Note that we do not have a ground truth in this case, and we do not possess the necessary knowledge in this area, so the significance of these results is under-explored. More discussion about this application can be found in the supplementary materials.
Table 1: Climate application results estimated from  ${\mathrm{{PCMCI}}}_{\Omega }$  .
PCMCIω
X	ω	{Pa_k}k∈[ω]: true and illusory parent sets
X_t^wp	1	{X_t^wp, X_t^wp, X_t^ep, X_t^ta}
X_t^cp	3	{X_t^cp, X_t^cp, X_t^ta}; {X_t^cp, X_t^ta}
X_t^ep	1	{X_t^ep, X_t^ta, X_t^ta, X_t^cp}
X_t^ta	1	{X_t^ta, X_t^wp}
In this paper, we propose a non-parametric, constraint-based causal discovery algorithm  $\mathrm{PCMCI}_{\Omega}$  designed for semi-stationary time-series data, in which a finite number of causal mechanisms are repeated periodically. We establish the soundness of our algorithm and assess its effectiveness on continuous-valued and discrete-valued time series data. The algorithm  $\mathrm{PCMCI}_{\Omega}$  has the capacity to reveal the existence of periodicity of causal mechanisms in real-world datasets.
This research has been supported in part by NSF CAREER 2239375 and Adobe Research. We wish to convey our heartfelt gratitude to the anonymous reviewers for their invaluable and constructive feedback, which significantly contributed to enhancing the quality of the manuscript.
A PCMCI Algorithm
The PCMCI algorithm is proposed by Runge et al. [2019], aiming to detect time-lagged causal relations in a window causal graph. There are two stages of PCMCI: the condition-selection stage and the causal discovery stage. In the first stage, unnecessary edges are removed based on the conditional independencies from an initialized partially connected graph where Assumption A4-A5 should be satisfied. In the second stage, Momentary Conditional Independence tests (MCI) are used to further remove the false positive edges caused by autocorrelations in time series data. More specifically, these two steps can be briefly formalized as follows:
-  $\mathrm{PC}_1$  in Algorithm A1: Condition selection stage.  $\mathrm{PC}_1$  is a variant of the skeleton-discovery part of the PC algorithm in a more robust version named stable-PC [Le et al.][2016]. The goal in this stage is to obtain a superset of the parents  $\widehat{\operatorname{Pa}}(X_t^j)$  for all variables  $X_{t\in [\tau_{\max} + 1,T]}^{j\in [n]}\in \mathbf{V}$ . Initialize  $\widehat{\operatorname{Pa}}(X_t^j) = \{X_{t - \tau}^i\}_{i\in [n],\tau \in [\tau_{\max}]}$ .  $\widehat{\operatorname{Pa}}(X_t^j)$  will remove  $X_{t - \tau}^i$  if
$$
X _ {t - \tau} ^ {i} \perp X _ {t} ^ {j} \left| \widehat {\operatorname {P a}} \left(X _ {t} ^ {j}\right) \backslash \left\{X _ {t - \tau} ^ {i} \right. \right\rbrace \tag {1}
$$
- MCI in Algorithm A2: Causal discovery stage. In this stage, do MCI tests for all variable pairs  $(X_{t - \tau}^{i}, X_{t}^{j})$  with  $i, j \in [n]$  and time delays  $\tau \in [\tau_{\max}]$ :
$$
M C I \left(X _ {t - \tau} ^ {i}, X _ {t} ^ {j} \mid \widehat {\operatorname {P a}} \left(X _ {t} ^ {j}\right) \backslash \left\{X _ {t - \tau} ^ {i} \right\}, \widehat {\operatorname {P a}} \left(X _ {t - \tau} ^ {i}\right)\right) \tag {2}
$$
where  $\widehat{\mathrm{Pa}}(X_t^j)$  and  $\widehat{\mathrm{Pa}}(X_{t - \tau}^i)$  are estimated from the PC $_1$  stage.
Note that  $\tau_{\mathrm{max}}$  in this section is the same as  $\tau_{\mathrm{ub}}$  in the main paper, serving as the upper bound for the time lag that exhibits causal effects. On the other hand,  $\tau_{\mathrm{max}}$  in the main paper denotes the maximum time lag observed within the multivariate time series. Essentially, in the main paper,  $\tau_{\mathrm{ub}}$  is a parameter that must be fed into the algorithm, and  $\tau_{\mathrm{max}}$  is observed from the true causal graph. As a default, we assume  $\tau_{\mathrm{ub}}$  is configured with a value greater than  $\tau_{\mathrm{max}}$ , ensuring that the algorithm uncovers the correct causal relations. See Fig 1 for more detail.
Figure 1: Set  $\tau_{\mathrm{ub}}$  to be 5, then all parent candidates of variables at  $t = 15$  are included in the large orange box, ranging from  $t = 10$  to  $t = 14$ . Consequently, the algorithm will only examine causal effects with a time lag not exceeding 5. In the causal graph,  $\tau_{\mathrm{max}}$  is 3, representing the maximum time lag observed among the 3-variate time series. Specifically, the maximum time lag for each component time series is  $\tau_1 = 2$ ,  $\tau_{2} = 3$ ,  $\tau_{3} = 1$ , respectively, and  $\tau_{\mathrm{max}}$  represents the largest value among these three maximum lags.