SlowGuess/NeurIPS_2023_OCR huggingface dataset:
$$
\begin{array}{l} p _ {t \in \Pi_ {1} ^ {j}} \left(x _ {t} ^ {j} \mid \operatorname {P a} \left(x _ {t} ^ {j}\right) \backslash b _ {t _ {1}}\right) (94) \\ = \frac {p _ {t \in \Pi_ {1} ^ {j}} \left(x _ {t} ^ {j} , b _ {t _ {2}} , . . . , b _ {t _ {n _ {1}}}\right)}{p _ {t \in \Pi_ {1} ^ {j}} \left(b _ {t _ {2}} , . . . , b _ {t _ {n _ {1}}}\right)} (95) \\ = \frac {\sum_ {b _ {t _ {1}}} p _ {t \in \Pi_ {1} ^ {j}} \left(x _ {t} ^ {j} , b _ {t _ {1}} , \dots , b _ {t _ {n _ {1}}}\right)}{\sum_ {b _ {t _ {1}}} p _ {t \in \Pi_ {1} ^ {j}} \left(b _ {t _ {1}} , \dots , b _ {t _ {n _ {1}}}\right)} (96) \\ = \frac {\sum_ {b _ {t _ {1}}} p _ {t \in \Pi_ {1} ^ {j}} \left(x _ {t} ^ {j} , \mathrm {P a} _ {1} \left(x _ {t} ^ {j}\right)\right)}{\sum_ {b _ {t _ {1}}} p _ {t \in \Pi_ {1} ^ {j}} \left(\mathrm {P a} _ {1} \left(x _ {t} ^ {j}\right)\right)} (97) \\ = \frac {\sum_ {b _ {t _ {1}}} p \left(x _ {t} ^ {j} \mid \operatorname {P a} _ {1} \left(x _ {t} ^ {j}\right)\right) p _ {t \in \Pi_ {1} ^ {j}} \left(b _ {t _ {1}} , \dots , b _ {t _ {n _ {1}}}\right)}{\sum_ {b _ {t _ {1}}} p _ {t \in \Pi_ {1} ^ {j}} \left(b _ {t _ {1}} , \dots , b _ {t _ {n _ {1}}}\right)} (98) \\ = \frac {\sum_ {b _ {t _ {1}}} p \left(x _ {t} ^ {j} \mid \operatorname {P a} _ {1} \left(x _ {t} ^ {j}\right)\right) \sum_ {V _ {h} \backslash \left\{b _ {t _ {i} \in [ n _ {1} ]} \right\}} p _ {t \in \Pi_ {1} ^ {j}} \left(b _ {t _ {1}}, \dots b _ {t _ {n _ {1}}}, V _ {h} \backslash \left\{b _ {t _ {i} \in [ n _ {1} ]} \right\} \mid h = \max  \left\{t _ {i \in [ n _ {1} ]} \right\}\right)}{\sum_ {b _ {t _ {1}}} \sum_ {V _ {h} \backslash \left\{b _ {t _ {i} \in [ n _ {1} ]} \right\}} p _ {t \in \Pi_ {1} ^ {j}} \left(b _ {t _ {1}}, \dots b _ {t _ {n _ {1}}}, V _ {h} \backslash \left\{b _ {t _ {i} \text {在} [ n _ {1} ]} \right\} \mid h = \max  \left\{t _ {i \in [ n _ {1} ]} \right\}\right)} (99) \\ = \frac {\sum_ {b _ {t _ {1}}} A B}{\sum_ {b _ {t _ {1}}} C D} (100) \\ \end{array}
$$
$$
A = p \left(x _ {t} ^ {j} \mid \mathrm {P a} _ {1} \left(x _ {t} ^ {j}\right)\right) \sum_ {\left\{\mathrm {P a} \left(b _ {t _ {i}}\right) \right\} _ {i \in [ n _ {1} ]}} p \left(b _ {t _ {i}} \mid \mathrm {P a} \left(b _ {t _ {i}}\right)\right) \tag {101}
$$
$$
B = \sum_ {V _ {\tau_ {\max }}} \sum_ {\tau_ {\max } <   t ^ {\prime} \leq h} \sum_ {j \in [ n ]} \sum_ {x _ {t ^ {\prime}} ^ {j}, \operatorname {P a} \left(x _ {t ^ {\prime}} ^ {j}\right)} p \left(x _ {t ^ {\prime}} ^ {j} \mid \operatorname {P a} \left(x _ {t ^ {\prime}} ^ {j}\right)\right) p \left(V _ {\tau_ {\max }}\right) \tag {102}
$$
$$
C = \sum_ {\left\{\mathrm {P a} \left(b _ {t _ {i}}\right) \right\} _ {i \in [ n _ {1} ]}} p \left(b _ {t _ {i}} \mid \mathrm {P a} \left(b _ {t _ {i}}\right)\right) \tag {103}
$$
$$
D = \sum_ {V _ {\tau_ {\max }}} \sum_ {\tau_ {\max } <   t ^ {\prime} \leq h} \sum_ {j \in [ n ]} \sum_ {x _ {t ^ {\prime}} ^ {j}, \operatorname {P a} \left(x _ {t ^ {\prime}} ^ {j}\right)} p \left(x _ {t ^ {\prime}} ^ {j} \mid \operatorname {P a} \left(x _ {t ^ {\prime}} ^ {j}\right)\right) p \left(V _ {\tau_ {\max }}\right) \tag {104}
$$
Note that  $t \in \Pi_1^j$  for distributions in above section from Eq.(94) to Eq.(104) and that  $x_{t'}^j \in V_h \setminus \{b_{t_i}\}_{i \in [n_1]}$ .
Hence, every term in Eq.(83) can be expressed as a function of those conditional distributions. Substituting Eq.(88), Eq.(93) and Eq.(100) in Eq.(83), we have a polynomial equation only composed of conditional distributions  $\{p(x_{t'}^j |\mathrm{Pa}(x_{t'}^j))\}_{j\in [n],t'\leq t}$  except the joint distribution of the starting points  $p(V_{\tau_{\max}})$ . Note that the conditional distributions of variables in  $\{X_t^j\}_{t\in \Pi_k^j}, j\in [n], k\in [\omega_j]$  are the same. Since sets do not allow duplicate values, set  $\{p(x_{t'}^j|\mathrm{Pa}(x_{t'}^j))\}_{j\in [n],t'\leq t}$  contains only different conditional distributions. There should be potentially total  $\sum_{j = 1}^{n}\omega_{j}$  different causal mechanisms. The total number of conditional probabilities should be jointly determined by the number of causal mechanisms and also the number of realizations that variables can take. After adjusting those conditional distributions by the linear restriction  $\sum_{y}p(x|y) = 1$ , all components in the set  $\{p(x_{t'}^j|\mathrm{Pa}(x_{t'}^j))\}_{j\in [n],t'\leq t}$  are mutually independent, and  $p(V_{\tau_{\max}})$  is also independent of all the causal mechanisms because the first starting points are random noises. That is, upon adjustments, all the terms in Eq.(83) should be rendered independent of each other, without any imposed constraints across them.
After expanding all the summations in Eq.(83), the coefficients of this polynomial equation are either 1 or  $-1$ . Each coefficient is accompanied by one unique monomial as index  $(k,s)$  in the joint distribution  $p_{t\in \pi_{k,s}^j}$  determined a unique product of conditional distributions, i.e., with a different pair of  $(k,s)$ , the product should be different. Considering all random and independent conditional
distributions in  $\{p(x_{t'}^j |\mathrm{Pa}(x_{t'}^j))\}_{j\in [n],t'\leq t}$ , the polynomial is not identically zero, and the probability of choosing a root of this polynomial is zero.
Denote the polynomial equation in Eq.(83) as A, we have:
$$
p (A = 0) = 0 \tag {105}
$$
Back to the original Eq.(73), we finally have  $p\Big(p(x_t^j |\cup_h\mathrm{Pa}_h(x_t^j))\neq p(x_t^j |\cup_h\mathrm{Pa}_h(x_t^j)\setminus y)\Big) = 1, \forall y\in \cup_h\mathrm{Pa}_h(x_t^j).$
Lemma D.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 B1 (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:
Proof. 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 D.2, we have  $X_t^j \not\perp s \Big|_{\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 (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 \not\perp s \Big|_{\widehat{\mathrm{Spa}}(X_t^j)}$  (line 2) with a consistent CI test, evident from the causal Markov property, contradicting our assumption. Hence, the lemma.
Lemma D.4. Let  $\widehat{Pa}(X_t^j)$  denote the estimated parent set for  $\mathbf{X}^j \in V$  obtained from the Algorithm B1 (line 19) assuming that true  $\omega_j$  has obtained (line 17).  $\{\mathrm{Pa}_k(X_t^j)\}_{k \in [\omega_j]}$  contain the true and illusory parent sets. Under assumptions A1-A7 and with an oracle (infinite sample size limit), we have:
$$
\widehat {P a} \left(X _ {t} ^ {j}\right) = P a \left(X _ {t} ^ {j}\right), \forall t \in \left[ \tau_ {\max } + 1, T \right] \tag {106}
$$
Proof. From Lemma D.3,
$$
P a \left(X _ {t} ^ {j}\right) \subset \cup_ {k = 1} ^ {\omega_ {j}} \operatorname {P a} _ {k} \left(X _ {t} ^ {j}\right) \subseteq \widehat {S P a} \left(X _ {t} ^ {j}\right), \forall t \in \left[ \tau_ {\max } + 1, T \right], j \in [ n ] \tag {107}
$$
In Runge et al. [2019], the author proved  $\widehat{Pa}(X_t^j) = Pa(X_t^j)$  if we run PCMCI on stationary time series. Using the same logic, we have the following proof.
Suppose  $X_{t - \tau}^{i} \notin \widehat{Pa}(X_{t}^{j})$  but  $X_{t - \tau}^{i} \in Pa(X_{t}^{j})$ . With a consistent conditional independence test and correct time partition, the MCI test (line 8 in Algorithm B1) will remove  $X_{t - \tau}^{i}$  from  $\widehat{Pa}_{\omega_j}(X_t^j)$  if and only if:
$$
X _ {t - \tau} ^ {i} \perp X _ {t} ^ {j} \left| \widehat {S P a} \left(X _ {t} ^ {j}\right) \backslash \left\{X _ {t - \tau} ^ {i} \right\}, \widehat {S P a} \left(X _ {t - \tau} ^ {i}\right) \right. \tag {108}
$$
Based on Eq.107), the rule is equivalent to removing  $X_{t - \tau}^{i}$  from  $\widehat{Pa}_{\omega_j}(X_t^j)$  if and only if:
$$
\begin{array}{l} X _ {t - \tau} ^ {i} \perp X _ {t} ^ {j} \left| \left\{P a \left(X _ {t} ^ {j}\right) \backslash \left\{X _ {t - \tau} ^ {i} \right\}, P a \left(X _ {t - \tau} ^ {i}\right), \right. \right. \\ \left. \widehat {S P a} \left(X _ {t} ^ {j}\right) \backslash \left(P a \left(X _ {t} ^ {j}\right) \cup \left\{X _ {t - \tau} ^ {i} \right\}\right), \widehat {S P a} \left(X _ {t - \tau} ^ {i}\right) \backslash P a \left(X _ {t - \tau} ^ {i}\right) \right\} (109) \\ \Rightarrow X _ {t - \tau} ^ {i} \perp X _ {t} ^ {j} \left| P a \left(X _ {t} ^ {j}\right) \backslash \left\{X _ {t - \tau} ^ {i} \right\}, P a \left(X _ {t - \tau} ^ {i}\right) \right. (110) \\ \end{array}
$$
Based on Causal Markov Condition assumption (A2) and Faithfulness Condition (A3), from Eq.(110) we have  $X_{t - \tau}^{i}\notin Pa(X_{t}^{j})$ . In other words, if  $X_{t - \tau}^{i}\notin \widehat{Pa} (X_{t}^{j})$  then  $X_{t - \tau}^{i}\notin Pa(X_{t}^{j})$ . That is,  $P a(X_{t}^{j})\subseteq \widehat{P a}(X_{t}^{j})$
Suppose  $X_{t - \tau}^{i}\in \widehat{Pa} (X_{t}^{j})$  but  $X_{t - \tau}^{i}\notin Pa(X_{t}^{j})$ . By the contraposition of Faithfulness (A1), we know that  $X_{t - \tau}^{i}\nVdash X_{t}^{j}\Big|\widehat{Pa} (X_{t}^{j})\setminus \{X_{t - \tau}^{i}\} ,\widehat{Pa} (X_{t - \tau}^{i})$ . Denote  $W = \{\widehat{Pa} (X_t^j)\setminus \{Pa(X_t^j),X_{t - \tau}^i\} \} \cup \{\widehat{Pa} (X_{t - \tau}^{i})\setminus Pa(X_{t - \tau}^{i})\}$ . Since  $X_{t - \tau}^{i}\notin Pa(X_{t}^{j})$ , based on Causal Markov Condition assumption (A2),
$$
\begin{array}{l} W \cup X _ {t - \tau} ^ {i} \perp \perp X _ {t} ^ {j} \left| P a \left(X _ {t} ^ {j}\right) \right. \\ \Rightarrow W \cup X _ {t - \tau} ^ {i} \perp \perp X _ {t} ^ {j} \left| P a \left(X _ {t} ^ {j}\right), P a \left(X _ {t - \tau} ^ {i}\right) \right. \\ \xrightarrow {\text {W e a k U n i o n}} X _ {t - \tau} ^ {i} \perp \perp X _ {t} ^ {j} \left| \left\{P a \left(X _ {t} ^ {j}\right), P a \left(X _ {t - \tau} ^ {i}\right) \right\} \cup W \right. \\ \Rightarrow X _ {t - \tau} ^ {i} \perp \perp X _ {t} ^ {j} \left| \widehat {P a} \left(X _ {t} ^ {j}\right) \backslash \left\{X _ {t - \tau} ^ {i} \right\}, \widehat {P a} \left(X _ {t - \tau} ^ {i}\right) \right. \\ \end{array}
$$
This is contrary to the assumption so that there is no such  $X_{t - \tau}^{i}$  satisfying  $X_{t - \tau}^{i} \in \widehat{Pa}(X_{t}^{j})$  but  $X_{t - \tau}^{i} \notin Pa(X_{t}^{j})$ . In other words, if  $X_{t - \tau}^{i} \in \widehat{Pa}(X_{t}^{j})$ , then  $X_{t - \tau}^{i} \in Pa(X_{t}^{j})$ . That is,  $\widehat{Pa}(X_{t}^{j}) \subseteq Pa(X_{t}^{j})$ . Combined with the previous conclusion that  $Pa(X_{t}^{j}) \subseteq \widehat{Pa}(X_{t}^{j})$ , we have  $\widehat{Pa}(X_{t}^{j}) = Pa(X_{t}^{j})$ .
Based on Lemma D.2, Lemma D.3 and Lemma D.4, we can identify the true  $\omega_{j}$  for  $\mathbf{X}^j$  through Lemma D.5.
Lemma D.5. Let  $\omega_{j}$  denote the true periodicity for  $\mathbf{X}^j\in V$  and  $\widehat{\mathrm{Pa}} (X_{t\in \Pi_k^j}^j)$  denote the estimated parent set for  $X_{t}^{j}$  obtained from Algorithm  $\boxed{B1}$  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}} \left(X _ {t \in \Pi_ {k} ^ {j}} ^ {j}\right) | \tag {111}
$$
Proof. Assume the contrary that  $\hat{\omega}_j \neq \omega_j$ , then in the Algorithm B1, we have an incorrect time partition  $\widehat{\Pi}^j$ . Hence, CI tests that are performed use samples with different causal mechanisms.  $\hat{p}(X_t^j | \cup_{k=1}^{\omega_j} \mathrm{Pa}_k(X_t^j))$  in Eq.(50) is estimated from a mixture of two or more time partition subsets, say  $\Pi_1^j$  and  $\Pi_2^j$ . We can apply Lemma D.2 where  $\cup_{k=1}^{\omega_j} \mathrm{Pa}_k(X_t^j)$  is replaced by  $\cup_{k=1}^2 \mathrm{Pa}_k(X_t^j)$  and then in Lemma D.3,  $\widehat{\mathrm{SPa}}(X_t^j)$  is replaced by  $\widehat{\mathrm{Pa}}_{\hat{\omega}_j}(X_t^j)$  and hence  $\cup_{k=1}^2 \mathrm{Pa}_k(X_t^j) \subseteq \widehat{\mathrm{Pa}}_{\hat{\omega}_j}(X_t^j)$  where  $\widehat{\mathrm{Pa}}_{\hat{\omega}_j}(X_t^j)$  is obtained from samples with  $t$  from the mixture of two different partition subsets (line 8). Hence, with  $\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$ . However, with true  $\omega_j$ , we have  $|\widehat{\mathrm{Pa}}_{\omega_j}(X_t^j)| = |\mathrm{Pa}(X_t^j)|$  based on Lemma D.4. 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$ .
With those lemmas, we can prove Theorem 1.
Proof. Assuming that a correct  $\omega_{j}$  has already been obtained, from Lemma D.4 we have
$$
\widehat {P a} (X _ {t} ^ {j}) = P a (X _ {t} ^ {j}), \forall t \geq 2 \tau_ {\mathrm {u b}}, j \in [ n ]
$$
From Lemma D.5, we know that a correct  $\omega_{j}$  must be obtained with consistent CI tests, that is,  $\hat{\omega}_{j} = \omega_{j},\forall j\in [n]$ . Therefore from Algorithm B1, we have
Figure 3: In the above illustration of the "turning point," the sizes of parent sets for different estimates  $\hat{\omega}_j$  are depicted as  $|\widehat{\mathrm{Pa}}_k(X_t^j)|, k \in [\hat{\omega}_j]$ . It is worth noting that  $\widehat{\mathrm{Pa}}_k(X_t^j)$  represents either the true parent set or the illusory parent set of  $X_t^j$ . In this context, we are interested in the sizes of these parent sets. The first occurrence of the "turning point" happens at  $\hat{\omega}_j = 3$  since the sizes of parent sets obtained when  $\hat{\omega}_j = 2$  and  $\hat{\omega}_j = 4$  are larger than the corresponding size when  $\hat{\omega}_j = 3$ , respectively. The term "turning point" denotes that as  $\hat{\omega}_j$  increases, the size of the parent set initially decreases and then starts increasing once the local minimum is reached. The corresponding relations exist because as long as  $\hat{\omega}_j$  is not a multiple of the true  $\omega_j$ , the estimated time partition subsets with  $\hat{\omega}_j$  must be a mixture of some correct time partition subsets with  $\omega_j$ . Therefore, it is reasonable to use this trick rather than looking at the maximum size of the parent sets  $\widehat{\mathrm{Pa}}_k(X_t^j), k \in [\hat{\omega}_j]$  (line 17 in Algorithm B1).
If the causal mechanism is fixed across time, i.e.,  $\omega_{j} = 1, j \in [n]$ , the proof of PCMCI [Runge et al. 2019] showed that for all  $\mathbf{X}^{j} \in V$ ,
$$
X _ {t - \tau} ^ {i} \to X _ {t} ^ {j} \notin \mathcal {G} \Rightarrow X _ {t - \tau} ^ {i} \to X _ {t} ^ {j} \notin \widehat {\mathcal {G}}
$$
$$
X _ {t - \tau} ^ {i} \to X _ {t} ^ {j} \in \mathcal {G} \Rightarrow X _ {t - \tau} ^ {i} \to X _ {t} ^ {j} \in \widehat {\mathcal {G}}
$$
Therefore  $\widehat{\mathcal{G}} = \mathcal{G}$
If  $\exists \omega_{j} > 1$ , we can simply separate the whole graph  $\mathcal{G}$  into sub graphs  $\{\mathcal{G}_k^{\omega_j}\}_{k\in [\omega_j]}$  consisting of only target variable  $X_{t}^{j}$  with corresponding  $t\in \{\Pi_k^j\}_{k\in [\omega_j]}$  and parent variables  $X_{t'}^i\in \mathrm{Pa}(X_t^j)$ . Focusing only on one time partition subset  $\Pi_k^j$ ,  $k\in [\omega_j]$ , we have
$$
\widehat {\mathcal {G}} _ {k} ^ {\omega_ {j}} = \mathcal {G} _ {k} ^ {\omega_ {j}} \tag {112}
$$
for any  $k \in [\omega_j]$  and  $j \in [n]$  based on the proof of Proposition 1 in the supplementary materials of Runge et al. [2019].
Each sub-graph  $\mathcal{G}_k^{\omega_j}$  includes only variable  $X_{t}^{j}$ , the edges entering  $X_{t}^{j}$  for time points  $t\in \Pi_k^j$  and the corresponding parent variables  $X_{t'}^i\in Pa(X_t^j)$ . Given  $\Pi^j = \bigcup_{k\in [\omega_j]}\Pi_k^j$  and  $V = \bigcup_{j\in [n]}\mathbf{X}^j$ , we have:
$$
\widehat {\mathcal {G}} = \bigcup_ {j \in [ n ], k \in [ \omega_ {j} ]} \widehat {\mathcal {G}} _ {k} ^ {\omega_ {j}} \tag {113}
$$
$$
\mathcal {G} = \bigcup_ {j \in [ n ], k \in [ \omega_ {j} ]} \mathcal {G} _ {k} ^ {\omega_ {j}} \tag {114}
$$
On the basis of Eq.112, we finally have:
$$
\widehat {\mathcal {G}} = \mathcal {G}
$$
E Turning Points
Given infinite samples, our estimate  $\hat{\omega}_j$  (line 17 in Algorithm B1) is the exact value  $\omega_j$  (see Lemma D.5). However, for finite samples, estimating  $\omega_j$  by the equation in line 17 in Algorithm B1 does
not yield good performance when  $T$  is small. While searching, larger guesses  $\omega$  lead to finer time partitions in  $\Pi_j$ , resulting in smaller sizes for  $\Pi_j^k$  (see Line 5 in Algorithm B1). Due to the power limit of CI tests on a smaller sample given by  $\Pi_j^k$ , the number of false negative edges increases. In order to solve this issue, we introduce turning points. A turning point is a guess  $\hat{\omega}$  satisfying:
$$
\max  _ {t} | \widehat {\mathrm {P a}} _ {\hat {\omega}} (X _ {t} ^ {j}) | <   \min  \left\{\max  _ {t} | \widehat {\mathrm {P a}} _ {\hat {\omega} - 1} (X _ {t} ^ {j}) |, \max  _ {t} | \widehat {\mathrm {P a}} _ {\hat {\omega} + 1} (X _ {t} ^ {j}) | \right\}
$$
where  $|\widehat{\mathrm{Pa}}_{\hat{\omega}}(X_t^j)|$  is the estimated parent set for  $X_{t}^{j}$  with periodicity guess  $\hat{\omega}$ . See line 19 in Algorithm B1.
We illustrate it with a special example in Fig.3. If there are several turning points, then  $\hat{\omega}_j$  is the first turning point. If there is no turning point, then we obtain  $\hat{\omega}_j$  using Line 17 of Algorithm B1.
The concept of the turning point is not based on any formal theorem but rather on experimental observations. In experiments, the turning point often corresponds to a multiple of the true periodicity when  $T$  is not large. This occurs due to the limitations of CI tests on finite samples. In such cases, the causal graph can still be correct because the estimated time partition remains accurate. In these experiments, the accuracy rate is calculated by considering  $\{N\omega_{j}\}_{N\in \lfloor \frac{\omega_{\mathrm{ub}}}{\omega_{j}}\rfloor}$  as correct estimations.
Executing the PCMCI algorithm on the entire time series constitutes the initial phase of the proposed approach (Algorithm B1 line 2). The algorithm's worst-case overall computational complexity is  $O(n^{3}\tau_{\mathrm{ub}}^{2}) + O(n^{2}\tau_{\mathrm{ub}})$ , discussed in Runge et al. [2019]. Here, the symbol  $n$  denotes  $n$ -variate time series and  $\tau_{\mathrm{ub}}$  represents the upper boundary for time lags.
The subsequent computational load stemming from the remaining components of our algorithm follows a complexity of  $O(\omega_{\mathrm{ub}}^2 n^2 \tau_{\mathrm{ub}})$ . This encompasses the  $O(n^{2} \tau_{\mathrm{ub}})$  complexity associated with conducting Momentary Conditional Independence (MCI) tests on all  $n$  univariate time series. The parameter  $\omega_{\mathrm{ub}}^2$  here arises due to the search procedure involving  $\omega$ , iterating through values from 1 to  $\omega_{\mathrm{ub}}$  for all  $n$  univariate time series.
The runtime of the computation is further influenced by the scaling behavior of the CI test concerning the dimensionality of the conditioning set and the temporal series length  $T$ . For further details, see section 5.1 in Runge et al. [2019].
All experiments, including those detailed in the main paper, are conducted on a single node with one core, utilizing 512 GB of memory in the Gilbreth cluster at Purdue University.
Here, we describe how to calculate the metrics ( $F_{1}$  score, Adjacency Precision, and Adjacency Recall) in our setting. In stationary time series, the output of the causal discovery algorithm is typically an adjacency matrix with dimensions  $[n,n,\tau_{\mathrm{max}} + 1]$ . Within the three-dimensional binary array, the value 1 signifies an edge pointing from one variable to another with a specific time lag, while 0 indicates the absence of an edge. For instance, if element  $[i,j,k]$  in the matrix is 1, then there is an edge pointing from  $X_{t - k}^{i}$  to  $X_{t}^{j}$ . In semi-stationary time series, due to the presence of multiple causal mechanisms, the binary edge matrix is a four-dimensional array with dimensions  $[n,\Omega ,n,\tau_{\mathrm{max}} + 1]$ , where  $\Omega$  is defined as Eq.(7) in the main paper. This expanded binary matrix is constructed based on the edge matrix of each variable  $X_{t}^{j}, j\in [n]$ , through repetition. For instance, if  $\Omega = 2\omega j$ , setting the third dimension of the large binary matrix to  $j$  should yield  $\omega_{j}$  potentially different parent sets (including illusory and true parent sets), each appearing twice.
We should have two such binary arrays, one representing the ground truth with dimensions  $[n,\Omega ,n,\tau_{\max} + 1]$  and one obtained from the algorithm with dimensions  $[n,\widehat{\Omega},n,\tau_{\max} + 1]$ . If the estimator  $\widehat{\Omega}$  is incorrect, those two binary arrays will have different sizes, so we can not directly compare them. To solve this problem, we do the same operation and calculate the least common multiple of  $\Omega$  and  $\widehat{\Omega}$ . Denoting this least common multiple as  $\mathrm{LCM}(\Omega ,\widehat{\Omega})$ , we create two four-dimensional binary arrays with dimensions of  $[n,\mathrm{LCM}(\Omega ,\widehat{\Omega}),n,\tau_{\max} + 1]$  based on the true edge array and the
estimated edge array, respectively, through repetition. The metrics are then computed by comparing the values in these two arrays.
G.1 More Discussion regarding the Case Study
As stated in the main paper, we express our inability to comment on the significance of the case study results. We open a door for the related experts; if assumptions A1-A7 are satisfied, the stationary assumption may not hold in this real-world dataset, and such periodicity exists. However, if the finding is not correct from an expert's viewpoint, the following assumptions may be violated:
- Assumption A4 No Contemporaneous Causal Effects: There is a possibility of potential causal effects from  $X_{t}^{\mathrm{ta}}$  to  $X_{t}^{\mathrm{cp}}$  that the algorithm is unable to capture.
- Assumption A6 Hard Mechanism Change combined with limited power of CI tests: If there is a soft mechanism change in the variables, the reliability of the CI test of two variables given their parents will be influenced by the skewed distribution of the parent variables. This effect will be exacerbated by the fact that the sample size will be shrunk by  $\hat{\omega}$ .
We provide a sound and robust algorithm for experts in various fields who are interested in validating the presence of periodicity within the causal mechanisms specific to their domain.
G.2 Experiments on Continuous-valued Time Series with Exponential Noise
Considering that VARLiNGAM is a temporal extension of LiNGAM and LiNGAM is an algorithm designed for non-Gaussian data, following the work in Pamfil et al. [2020], we also construct experiments on continuous-valued time series data with Exponential noise. Shown as Fig.4(a), the performance of  $\mathrm{PCMCI}_{\Omega}$ , PCMCI and VARLiNGAM, are quite similar with their performance on Gaussian noise. The recall rate of DYNOTEARS, however, gets worse with Exponential noise.
G.3 Experiments on Binary Time Series
Similar to the process of generating continuous-valued time series, the generation of binary time series also involves three steps. However, the main difference lies in the last two steps. In the third step, we simulate the conditional distributions of each child variable based on all possible combinations of parent variable values. Subsequently, we randomly generate the value of the child variable by considering the corresponding conditional distribution given its parent sets.