Example #1
0
 def test_PP_MD(self):
     print("---PP_MD---")
     for i in range(0, COUNT+1):
         G = Graph(eval(PREFIX+".V_"+str(i)), eval(PREFIX+".E_"+str(i)))
         base.print_graph_name(PREFIX, i)
         T, w = tdlib.PP_MD(G)
         self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
Example #2
0
 def test_max_clique_with_treedecomposition_8(self):
     for n in range(0, 13):
         for i in range(0, 10):
             V, E = randomGNP(n, 0.2)
             G = Graph(V, E)
             T, w = tdlib.PP_MD(G)
             S = tdlib.max_clique_with_treedecomposition(G, T)
Example #3
0
 def test_min_dominating_set_with_treedecomposition_0c(self):
     V, E = cornercases[2]
     G = Graph(V, E)
     T, w = tdlib.PP_MD(G)
     s, S = tdlib.min_dominating_set_with_treedecomposition(G, T)
     self.assertEqual(len(S), 5)
     self.assertEqual(len(S), s)
Example #4
0
 def test_min_coloring_with_treedecomposition_0d(self):
     V, E = cornercases[3]
     G = Graph(V, E)
     T, w = tdlib.PP_MD(G)
     s, S = tdlib.min_coloring_with_treedecomposition(G, T)
     self.assertEqual(len(S), 5)
     self.assertEqual(len(S), s)
Example #5
0
 def test_PP_MD_8(self):
     for n in range(0, 13):
         for i in range(0, 10):
             V, E = randomGNP(n, 0.2)
             G = Graph(V, E)
             T, w = tdlib.PP_MD(G)
             self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
Example #6
0
 def test_min_dominating_set_with_treedecomposition_8(self):
     for n in range(0, 13):
         for i in range(0, 10):
             V, E = randomGNP(n, 0.2)
             G = Graph(V, E)
             T, w = tdlib.PP_MD(G)
             S = tdlib.min_dominating_set_with_treedecomposition(G, T)
Example #7
0
 def test_conversion_0(self):
     for V, E in cornercases:
         G = Graph(V, E)
         T, w = tdlib.PP_MD(G)
         O = tdlib.treedec_to_ordering(T)
         T, w = tdlib.ordering_to_treedec(G, O)
         self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
Example #8
0
 def test_min_coloring_with_treedecomposition_8(self):
     for n in range(0, 13):
         for i in range(0, 10):
             V, E = randomGNP(n, 0.2)
             G = Graph(V, E)
             T, w = tdlib.PP_MD(G)
             s, S = tdlib.min_coloring_with_treedecomposition(G, T)
             self.assertEqual(len(S), s)
Example #9
0
 def test_conversion_8(self):
     for i in range(0, 10):
         V, E = randomGNP(20, 0.2)
         G = Graph(V, E)
         T, w = tdlib.PP_MD(G)
         self.assertTrue(tdlib.is_valid_treedecomposition(G, T))
         O = tdlib.treedec_to_ordering(T)
         T, w = tdlib.ordering_to_treedec(G, O)
         self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
Example #10
0
 def test_min_dominating_set_with_treedecomposition_3(self):
     G = Graph(V_Petersen, E_Petersen)
     T, w = tdlib.PP_MD(G)
     s, S = tdlib.min_dominating_set_with_treedecomposition(G, T)
     self.assertEqual(len(S), 3)
     self.assertEqual(len(S), s)
Example #11
0
 def test_min_dominating_set_with_treedecomposition_2(self):
     G = Graph(V_K5, E_K5)
     T, w = tdlib.PP_MD(G)
     s, S = tdlib.min_dominating_set_with_treedecomposition(G, T)
     self.assertEqual(len(S), 1)
     self.assertEqual(len(S), s)
Example #12
0
 def test_min_dominating_set_with_treedecomposition_4(self):
     G = Graph(V_Petersen_double, E_Petersen_double)
     T, w = tdlib.PP_MD(G)
     S = tdlib.min_dominating_set_with_treedecomposition(G, T)
     self.assertEqual(len(S), 6)
Example #13
0
 def test_max_independent_set_with_treedecomposition_4(self):
     G = Graph(V_Petersen_double, E_Petersen_double)
     T, w = tdlib.PP_MD(G)
     s, S = tdlib.max_independent_set_with_treedecomposition(G, T)
     self.assertEqual(s, 8)
     self.assertEqual(len(S), s)
Example #14
0
 def test_max_clique_with_treedecomposition_0d(self):
     V, E = cornercases[3]
     G = Graph(V, E)
     T, w = tdlib.PP_MD(G)
     S = tdlib.max_clique_with_treedecomposition(G, T)
     self.assertEqual(len(S), 5)
Example #15
0
 def test_min_coloring_with_treedecomposition_7(self):
     G = Graph(V_Grid_5_5, E_Grid_5_5)
     T, w = tdlib.PP_MD(G)
     s, S = tdlib.min_coloring_with_treedecomposition(G, T)
     self.assertEqual(len(S), 2)
     self.assertEqual(len(S), s)
Example #16
0
 def test_min_coloring_with_treedecomposition_5(self):
     G = Graph(V_Wagner, E_Wagner)
     T, w = tdlib.PP_MD(G)
     s, S = tdlib.min_coloring_with_treedecomposition(G, T)
     self.assertEqual(len(S), 3)
     self.assertEqual(len(S), s)
Example #17
0
 def test_min_dominating_set_with_treedecomposition_6(self):
     G = Graph(V_Pappus, E_Pappus)
     T, w = tdlib.PP_MD(G)
     S = tdlib.min_dominating_set_with_treedecomposition(G, T)
     self.assertEqual(len(S), 5)
Example #18
0
 def test_max_clique_with_treedecomposition_5(self):
     G = Graph(V_Wagner, E_Wagner)
     T, w = tdlib.PP_MD(G)
     S = tdlib.max_clique_with_treedecomposition(G, T)
     self.assertEqual(len(S), 2)
Example #19
0
 def test_max_clique_with_treedecomposition_6(self):
     G = Graph(V_Pappus, E_Pappus)
     T, w = tdlib.PP_MD(G)
     S = tdlib.max_clique_with_treedecomposition(G, T)
     self.assertEqual(len(S), 2)
Example #20
0
 def test_max_clique_with_treedecomposition_4(self):
     G = Graph(V_Petersen_double, E_Petersen_double)
     T, w = tdlib.PP_MD(G)
     S = tdlib.max_clique_with_treedecomposition(G, T)
     self.assertEqual(len(S), 2)
Example #21
0
 def test_min_coloring_with_treedecomposition_3(self):
     G = Graph(V_Petersen, E_Petersen)
     T, w = tdlib.PP_MD(G)
     S = tdlib.min_coloring_with_treedecomposition(G, T)
     self.assertEqual(len(S), 3)
Example #22
0
 def test_min_coloring_with_treedecomposition_2(self):
     G = Graph(V_K5, E_K5)
     T, w = tdlib.PP_MD(G)
     S = tdlib.min_coloring_with_treedecomposition(G, T)
     self.assertEqual(len(S), 5)
Example #23
0
 def test_min_vertex_cover_with_treedecomposition_7(self):
     G = Graph(V_Grid_5_5, E_Grid_5_5)
     T, w = tdlib.PP_MD(G)
     S = tdlib.min_vertex_cover_with_treedecomposition(G, T)
     self.assertEqual(len(S), 12)
Example #24
0
 def test_max_independent_set_with_treedecomposition_0c(self):
     V, E = cornercases[2]
     G = Graph(V, E)
     T, w = tdlib.PP_MD(G)
     S = tdlib.max_independent_set_with_treedecomposition(G, T)
     self.assertEqual(len(S), 5)
Example #25
0
 def test_min_coloring_with_treedecomposition_4(self):
     G = Graph(V_Petersen_double, E_Petersen_double)
     T, w = tdlib.PP_MD(G)
     s, S = tdlib.min_coloring_with_treedecomposition(G, T)
     self.assertEqual(len(S), 3)
     self.assertEqual(len(S), s)
Example #26
0
 def test_min_dominating_set_with_treedecomposition_5(self):
     G = Graph(V_Wagner, E_Wagner)
     T, w = tdlib.PP_MD(G)
     S = tdlib.min_dominating_set_with_treedecomposition(G, T)
     self.assertEqual(len(S), 3)
Example #27
0
 def test_min_coloring_with_treedecomposition_6(self):
     G = Graph(V_Pappus, E_Pappus)
     T, w = tdlib.PP_MD(G)
     s, S = tdlib.min_coloring_with_treedecomposition(G, T)
     self.assertEqual(len(S), 2)
     self.assertEqual(len(S), s)
Example #28
0
 def test_max_independent_set_with_treedecomposition_2(self):
     G = Graph(V_K5, E_K5)
     T, w = tdlib.PP_MD(G)
     s, S = tdlib.max_independent_set_with_treedecomposition(G, T)
     self.assertEqual(s, 1)
     self.assertEqual(len(S), s)
Example #29
0
 def test_max_clique_with_treedecomposition_7(self):
     G = Graph(V_Grid_5_5, E_Grid_5_5)
     T, w = tdlib.PP_MD(G)
     S = tdlib.max_clique_with_treedecomposition(G, T)
     self.assertEqual(len(S), 2)
Example #30
0
 def test_min_dominating_set_with_treedecomposition_7(self):
     G = Graph(V_Grid_5_5, E_Grid_5_5)
     T, w = tdlib.PP_MD(G)
     S = tdlib.min_dominating_set_with_treedecomposition(G, T)
     self.assertEqual(len(S), 7)