about summary refs log tree commit diff
path: root/sourcecodes/bnt-master/BNT/general/dsep.m
blob: d4d9c4419b0e70f1d7d62dddcf5ff2c8d6497c0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function sep = dsep(X, Y, S, G)
% DSEP Is X indep Y given S wrt DAG G?
% sep = dsep(X, Y, S, G)
%
% Instead of using the Bayes-Ball criterion, we see if S separates X and Y
% in the moralized ancestral graph.

conn = reachability_graph(G);
M = myunion(myunion(X, Y), S);
[A,junk] = find(conn(:, M));
A = unique(A);
A = myunion(A, M);
GM = moralize(G(A,A));
%sep = graph_separated(GM, X, Y, S);
sep = graph_separated(GM, find_equiv_posns(X,A), find_equiv_posns(Y,A), find_equiv_posns(S,A));