SlowGuess/NeurIPS_2023_OCR huggingface dataset:
1. Suppose an active path has the same augmented subgraph in both  $G_{1}$  and  $G_{2}$ , then it will get blocked in  $G_{2}$  when intervened on  $I_{j} = I_{i}$ . Note that  $I_{i}$  is neither  $V_{i}$  nor  $V_{j}$ . Because  $V_{i} \rightarrow V_{j}$  is isolated, they do not have other parents. Intervening on them will not block/delete that path.
2. Suppose an augmented subgraphs in  $G_{1}$  and an augmented subgraphs in  $G_{2}$  differ in one isolated edge. If the intervention target  $I_{i}$  is  $V_{i}$ , then we can choose  $I_{j}$  to be  $V_{j}$  (intervening on  $V_{j}$  in  $G_{2}$  will not delete that path). If the intervention target is neither  $V_{i}$  nor  $V_{j}$ , then we can keep  $I_{j}$  to be the same as  $I_{i}$ . Because  $V_{i} \rightarrow V_{j}$  is an isolated edge, this edge must be on the active path itself and not on the active descendant paths. Suppose the active path  $P$  is  $V_{1} \rightarrow \ldots \rightarrow V_{k}$ , then the subpath  $P_{1}: V_{1} \rightarrow \ldots \rightarrow V_{i}$  and  $P_{2}: V_{j} \rightarrow \ldots \rightarrow V_{k}$  have the same augmented subgraphs in both  $G_{1}$  and  $G_{2}$ . By Lemma F.6, the intervention would have the same effect on them.
Therefore, if  $I_{j} = \{I_{i}\}$  when  $I_{i} \neq \{V_{i}\}$  and  $I_{j} = \{V_{j}\}$  when  $I_{i} = \{V_{i}\}$ . By similar argument,  $\mathcal{T}(G_2^{(I_j)}) \subseteq \mathcal{T}(G_1^{(I_i)})$ .
F.1.2 Orienting Non-isolated Edges
While it is impossible to distinguish within an IEC, it is possible to do so between IECs.
Theorem F.7. Let  $G_{1}$  and  $G_{2}$  be two DAGs. Suppose
A.  $G_{1}$  and  $G_{2}$  are Markov equivalent.
B.  $G_{1}$  and  $G_{2}$  are not isolated equivalent.
Then there exists a single-node hard intervention target  $I_{1}$  such that
$$
\mathcal {T} \left(G _ {1} ^ {\left(I _ {1}\right)}\right) \neq \mathcal {T} \left(G _ {2} ^ {\left(I _ {2}\right)}\right) \quad \forall I _ {2}
$$
where  $I_{2}$  is also a single-node hard intervention target.
Proof. Let  $\Delta(G_1, G_2)$  denote the set of edges in  $G_1$  that have opposite orientations in  $G_2$ .
By theorem 2 of [12], we know that there exists a sequence of  $|\Delta(G_1, G_2)|$  distinct covered edge reversals that can transform  $G_1$  to  $G_2$ . And each covered edge reversal creates a DAG in the same Markov equivalence class.
Because  $G_{1}$  and  $G_{2}$  are not isolated equivalent, there exist DAGs  $G_{m}$  and  $G_{n}$  in the sequence such that  $G_{m}$  and  $G_{n}$  differ by a covered edge where endpoints of the edge share at least one additional parent node. Without loss of generality, let  $G_{m}$  and  $G_{n}$  be the first pair in the sequence to have covered but not isolated edge reversal. In particular, the sequence is  $G_{1} \to \ldots \to G_{m} \to G_{n} \to \ldots \to G_{2}$ .
For simplicity, suppose the covered edge in  $G_{m}$  is  $A \to B$  and the common parent is  $C$ . Obviously, in  $G_{n}$ , the covered edge is reversed ( $A \gets B$ ). Suppose there is an intervention target  $I_{1}'$  on  $G_{m}$  that is  $\{B\}$ , then edges  $C \to B$  and  $A \to B$  get removed. Therefore, there exist subsets of vertices  $S_{1}$  and  $S_{2}$  such that  $C$  and  $B$  are d separated by  $S_{1}$ , and  $A$  and  $B$  are d separated by  $S_{1}$ .
However, for all DAGS in the subsequence after  $G_{m}$  including  $G_{n}$  and  $G_{2}$ . The edge is reversed to be  $A \leftarrow B$  (Note that the sequence has  $|\Delta(G_{1}, G_{2})|$  distinct covered edge reversals that can transform  $G_{1}$  to  $G_{2}$ . A reversed edge cannot be reversed again). There does not exist a single node intervention target that can remove both edges between  $A$ ,  $B$ , and  $B$ ,  $C$ .
$$
\mathcal {T} (G _ {m} ^ {(I _ {1} ^ {\prime})}) \neq \mathcal {T} (G _ {2} ^ {(I _ {2})}) \quad \forall I _ {2}
$$
By our construction,  $G_{m}$  and  $G_{1}$  are in the same IEC. By Theorem F.2, there exists an intervention target  $I_{1}$  such that,
$$
\mathcal {T} (G _ {1} ^ {(I _ {1})}) \neq \mathcal {T} (G _ {2} ^ {(I _ {2})}) \quad \forall I _ {2}.
$$
F.1.3 Useful Lemmas
The first lemma characterizes the uncovered reversible edges.
Lemma F.8. Let  $G_{1}$  be a consistent extension of a CPDAG  $G$ . Suppose there is an uncovered edge  $e: A \to B$  in  $G_{1}$  and the edge is unoriented in the CPDAG, then there must exist a node  $C$  in  $G_{1}$  such that  $C \to B$  and  $C \gets A$ .
Proof. Because  $e$  is uncovered, there are two cases.
A. There is a node  $C$  in  $G_{1}$  that is a parent of  $B$  but not a parent of  $A$ . Suppose there is no edge between  $C$  and  $A$ . Then because  $e_{1}$  is unoriented, changing its direction would destroy a  $v$ -structure. Therefore there must be an edge between  $C$  and  $A$  and because  $C$  is not a parent  $A$ , we have  $C \gets A$ .
B. There is a node  $C$  in  $G_{1}$  that is a parent of  $A$  but not a parent of  $B$ . By a similar argument, therefore there must be an edge between  $C$  and  $B$ . Because  $C$  is not a parent of  $B$ , we have  $C \gets B$ . In this case, we have a circle. Therefore, this is not a valid case.
The next lemma characterizes reversible edges in an IEC.
Lemma F.9. Let  $G_{1}$  and  $G_{2}$  be two DAGs in the same IEC. Let  $e_{1}$  be a reversible edge in  $G_{1}$  that has the opposite orientation in  $G_{2}$ . Then,  $e_{1}$  must be isolated.
Proof. Let's denote  $e_1$  in  $G_1$  as  $A \gets B$ . We can consider two cases.
A.  $e_1$  is a covered edge in  $G_{1}$
Suppose, on the contrary,  $e_1$  is non-isolated. By definition, there exists a common parent  $C$ .
Because  $e_1$  has the opposite orientation in  $G_2$ , we have  $A \gets B$  in  $G_2$ .  $G_1$  and  $G_2$  are isolated equivalent and thus Markov equivalent. They must share the same skeleton. So there must be edges connecting  $C, A$ , and  $C, B$  in  $G_2$ . By definition, there exists a sequence of isolated edge reversals from  $G_2$  to  $G_1$ . There are only three valid possibilities (the fourth one is ignored because it creates a circle) in  $G_2$ :
(a)  $C \to A, C \gets B$ . Out of all the three edges among  $A, B, C$ , the first edge that might be reversed in the sequence is  $C \gets B$ . But regardless of the orientation of the edge between  $B$  and  $C$ , one cannot reverse  $A \gets B$  in the sequence as it cannot be an isolated edge.
(b)  $C \to A, C \to B$ . Out of all the three edges among  $A, B, C$ , the first edge that might be reversed in the sequence is  $C \to A$ . But regardless of the orientation of the edge between  $B$  and  $C$ , one cannot reverse  $A \gets B$  in the sequence as it cannot be an isolated edge.
(c)  $C \gets A$ ,  $C \gets B$ . Because  $G_{1}$  and  $G_{2}$  are in the same IEC. The first edge to be reversed must be  $B \to A$ . But then, we cannot reverse  $B \to C$  because it is not covered and we cannot reverse  $A \to C$  because it is covered but not isolated. So this case is also not possible.
B.  $e_1$  is not a covered edge in  $G_{1}$
By Lemma F.8, there must exist a node  $C$  in  $G_{1}$  such that  $C \to B$  and  $C \gets A$ . Note that in  $G_{2}$ , we have  $A \gets B$ . By definition, there exists a sequence of isolated edge reversals from  $G_{2}$  to  $G_{1}$ . There are only three valid possibilities (the fourth one is ignored because it creates circles) in  $G_{2}$ :
(a)  $C \to A, C \to B$ . Both  $C \to A$  and  $A \leftarrow B$  have to be reversed. Out of all the three edges among  $A, B, C$ , the first edge that might be reversed in the sequence is  $C \leftarrow B$ . But regardless of the orientation of the edge between  $B$  and  $C$ , one cannot reverse  $A \leftarrow B$  in the sequence as it cannot be an isolated edge.
(b)  $C \gets A$ ,  $C \gets B$ . Because  $G_{1}$  and  $G_{2}$  are in the same IEC. The first edge to be reversed must be  $B \to A$ . But then, we cannot reverse  $B \to C$  because it is not covered.
(c)  $C \to A$ ,  $C \gets B$ . All the edges must be reversed. Because  $G_{1}$  and  $G_{2}$  are in the same IEC. The first edge to be reversed must be  $B \to C$ . But then, we cannot reverse  $B \to A$  because it is covered but not isolated and we cannot reverse  $C \to A$  because it is not covered. So this case is also not possible.
G Edge orientations for measurement model
Up to this point, we have used unknown interventions to learn the skeleton of the underlying DAG  $G$  (Appendix D, Appendix E). For causal interpretation, we must go one step further and orient these edges. Now, orienting the edges in the bipartite graph is easy: In a measurement model, the observed  $X$  cannot have any children, so the only possibility is to orient the edges from hidden to observed. Orienting edges in the latent space is a different matter: Since the intervention targets are additionally unknown, this raises additional complications.
We extend Algorithm 1 to Algorithm 2 to orient edges in  $G_{H}$  up to isolated edges which cannot be oriented using CI information only in general (Appendix F).
Proof. The identification is given by Algorithm 2.
Suppose the returned PDAG is  $G_H^\#$ . First, by Theorem E.1,  $G_H^\#$  and  $G_H$  share the same skeleton. By Lemma G.2, all the unoriented edges are the reversible edges of the Markov equivalence class  $\mathcal{E}(G_H)$ . If a reversible edge  $H_1 \to H_2$  is not covered or covered but non-isolated in  $G_H$ , then  $H_2$  has at least two incoming edges by definition and Lemma F.8. Then  $H_1 \to H_2$  will be correctly oriented because  $\mathcal{M}_H(G^{(H_2)})$  has at least two members. Therefore, the only reversible edge that cannot be oriented is the isolated one.
By Lemma F.9, the only reversible edges in the IEC of  $G_{H}$  are isolated in  $G_{H}$ . And by Theorem 5.3, we cannot distinguish DAGs in IEC with unknown single-node hard interventions.
G.1 Useful Lemmas
Lemma G.1. Let  $G$  be a DAG and suppose  $X \to Y$  is a covered edge in  $G$ , then  $X \to Y$  is not compelled in  $\mathcal{E}(G)$ .
Proof. By Lemma 1 of [12], we can reverse this edge to get  $G'$  and  $G'$  is Markov equivalent to  $G$ . By definition of compelled edge, it is not a compelled edge.
Lemma G.2. Every unoriented edge returned by Algorithm 2 is a reversible edge of the Markov equivalence class  $\mathcal{E}(G_H)$ .
Proof. Recall that an edge is reversible if there exist two members of the equivalence class that have two different orientations of this edge.
Without loss of generality, suppose one of the unoriented edges returned by Algorithm 2 is  $H_{1} \gets H_{2}$  in  $G_{H}$ . Let's consider the following cases:
A. In  $G_{H}$ ,  $H_{1}$  has incoming edges other than  $H_{1} \gets H_{2}$ .
In this case, when the unknown intervention target  $I$  is  $\{H_1\}$ , there are at least two elements in  $\mathcal{M}_H(G^{(I)})$  after step 1 of the algorithm. By Lemma E.6, we can thus orient the edge  $H_1 \gets H_2$  in step 2.
B. In  $G_{H}$ ,  $H_{1}$  has no incoming edge other than  $H_{1} \gets H_{2}$  and  $H_{2}$  has at least two incoming edges.
In this case, when the unknown intervention target  $I$  is  $H_{2}$ , there are at least two elements in  $\mathcal{M}_H(G^{(I)})$  after step 1 of the algorithm. By Lemma E.6, we can thus orient the incoming edge of  $H_{2}$  in step 2 and orient  $H_{1} \gets H_{2}$  in step 3.
C. In  $G_{H}$ ,  $H_{1}$  has no incoming edge other than  $H_{1} \gets H_{2}$  and  $H_{2}$  has only one incoming edge. Suppose the other edge is  $H_{2} \gets H_{3}$  in  $G_{H}$ . Then this edge must also be unoriented the Algorithm 2. Because if this edge is oriented, then  $H_{2}$  must be in  $\widehat{\mathcal{I}}$  by step 3 which implies that  $H_{1} \gets H_{2}$  must also be oriented as well. Therefore, we can reverse  $H_{1} \gets H_{2}$  and  $H_{2} \gets H_{3}$ . Because  $H_{2} \gets H_{3}$  is unoriented,  $H_{3}$  must have at most one incoming edge since the other cases have been ruled out by the previous argument. If it has one incoming edge, we can reserve that edge as well. The process continues until we reach one node that does not have any incoming edge. The whole process does not create any new  $v$ -structures. So we have two Markov equivalent graphs with different orientations of  $H_{1} \gets H_{2}$ .
D. In  $G_H$ ,  $H_1$  has no incoming edge other than  $H_1 \gets H_2$  and  $H_2$  has no incoming edge.
Consider  $G_H'$  where  $G_H'$  has the same edges as  $G_H$  except that  $G_H$  has  $H_1 \to H_2$ . Because no  $v$ -structure is created or destroyed with this edge reversal,  $G_H'$  and  $G_H$  are Markov equivalent.
If an edge is unoriented, it must fall in the last two cases and be reversible.
Algorithm 2 Learning Skeleton and Orienting Edges
Input:  $H,\{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}}$   
9  $E\gets \emptyset$  // Set of directed and undirected edges  
10  $\widehat{\mathcal{I}}\gets \emptyset$  // Set of intervention targets  
/* Step 0 */  
11 if  $\{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}}$  only has one distinct element then  
Output:  $E$   
/* Step 1: Remove any pair of hidden variables that appears twice */  
for  $\mathcal{M}_H(G^{(I)})\in \{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}}$  do  
for  $\langle H_1,H_2\rangle \in \mathcal{M}_H(G^{(I)})$  do  
If  $\langle H_1,H_2\rangle$  appears twice with at least two different intervention targets, delete  $\langle H_1,H_2\rangle$  from  $\{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}}$   
Remove  $\mathcal{M}_H(G^{(I)})$  from  $\{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}}$  if  $\mathcal{M}_H(G^{(I)})$  has no element.  
/* Step 2: Add edges for colliders */  
for  $\mathcal{M}_H(G^{(I)})\in \{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}}$  do  
if  $\left|\mathcal{M}_H(G^{(I)})\right| > 1$  then  
Find the common hidden variables  $H_*$  shared by all tuples in  $\mathcal{M}_H(G^{(I)})$ $\widehat{\mathcal{I}}\gets \widehat{\mathcal{I}}\cup \{H_*\}$   
for  $\langle H_1,H_2\rangle \in \mathcal{M}_H(G^{(I)})$  do  
if  $H_{1} = H_{*}$  then  
 $\begin{array}{r}\bigtriangledown E\gets E\cup \{H_{2}\to H_{1}\} \\ \text{else}\\ E\gets E\cup \{H_1\to H_2\} \\ \text{Remove}\mathcal{M}_H(G^{(I)})\text{from}\{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}} \end{array}$   
/* Step 3: Add compelled edges */  
NewInv  $\leftarrow$  True; // Flag to check if new intervention targets are added to  $\widehat{\mathcal{I}}$   
while NewInv is True do  
NewInv  $\leftarrow$  False  
for  $\mathcal{M}_H(G^{(I)})\in \{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}}$  do  
Let the only element in  $\mathcal{M}_H(G^{(I)})$  be  $\langle H_1,H_2\rangle$   
if  $H_{1}\in \widehat{\mathcal{I}}$  then  
 $E\gets E\cup \{H_1\to H_2\}$ $\widehat{\mathcal{I}}\gets \widehat{\mathcal{I}}\cup \{H_2\}$   
NewInv  $\leftarrow$  True  
Remove  $\mathcal{M}_H(G^{(I)})$  from  $\{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}}$   
else if  $H_{2}\in \widehat{\mathcal{I}}$  then  
 $E\gets E\cup \{H_2\to H_1\}$ $\widehat{\mathcal{I}}\gets \widehat{\mathcal{I}}\cup \{H_1\}$   
NewInv  $\leftarrow$  True  
Remove  $\mathcal{M}_H(G^{(I)})$  from  $\{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}}$   
/* Step 4: Add unoriented edges */  
for  $\mathcal{M}_H(G^{(I)})\in \{\mathcal{M}_H(G^{(I)})\}_{I\in \mathcal{I}}$  do  
Let the only element in  $\mathcal{M}_H(G^{(I)})$  be  $\langle H_1,H_2\rangle$ $E\gets E\cup \{H_1 - H_2\}$   
Output:  $G_H^{\#} = (H,E)$