Esempio n. 1
0
    def test_rule_4(self):
        g = make_graph(4, [(0, 1), (1, 0), (0, 2), (2, 0), (0, 3), (3, 0),
                           (1, 2), (2, 3)])
        k = Knowledge()
        k.set_forbidden(1, 3)

        meek = MeekRules(undirect_unforced_edges=False, knowledge=k)
        meek.orient_implied_subset(g, [0])

        assert len(g.edges()) == 7
        assert has_dir_edge(g, 1, 2)
        assert has_dir_edge(g, 2, 3)
        assert has_dir_edge(g, 0, 3)
        assert has_undir_edge(g, 0, 1)
        assert has_undir_edge(g, 0, 2)