### confounded exposure and outcome
b <- igraph::graph_from_literal(X -+ Y, Ur -+ X, Ur -+ Y)
V(b)$leftside <- c(0,0,0)
V(b)$latent <- c(0,0,1)
V(b)$nvals <- c(2,2,2)
E(b)$rlconnect <- E(b)$edge.monotone <- c(0, 0, 0)
cond.vars <- V(b)[V(b)$leftside == 1 & names(V(b)) != "Ul"]
right.vars <- V(b)[V(b)$leftside == 0 & names(V(b)) != "Ur"]
create_response_function(b, right.vars, cond.vars)
Run the code above in your browser using DataLab