Example #1
0
 def test_MSVS_8(self):
     for i in range(0, 10):
         V, E = randomGNP(20, 0.2)
         G = Graph(V, E)
         T, w = tdlib.trivial_decomposition(G)
         T, w = tdlib.MSVS(G, T)
         self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
Example #2
0
 def test_MSVS_8(self):
     for i in range(0, 10):
         V, E = randomGNP(20, 0.2)
         G = Graph(V, E)
         T, w = tdlib.trivial_decomposition(G)
         T, w = tdlib.MSVS(G, T)
         self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
Example #3
0
 def test_minimalChordal_trivial(self):
     print("---minimalChordal_trivial---")
     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)
         T1, w1 = tdlib.trivial_decomposition(G)
         T2, w2 = tdlib.minimalChordal_decomp(G, T1)
         self.assertEqual(tdlib.is_valid_treedecomposition(G, T2), True)
Example #4
0
    def test_MSVS_trivial(self):
	print("---MSVS_trivial---")
        for i in range(0, COUNT+1):
            base.print_graph_name(PREFIX, i)
            G = Graph(eval(PREFIX+".V_"+str(i)), eval(PREFIX+".E_"+str(i)))
            T1, w1 = tdlib.trivial_decomposition(G)
            T2, w2 = tdlib.MSVS(G, T1)
            self.assertEqual(tdlib.is_valid_treedecomposition(G, T2), True)
Example #5
0
 def test_MSVS_5(self):
     G = Graph(V_Wagner, E_Wagner)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.MSVS(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 4)
Example #6
0
 def test_minimalChordal_2(self):
     G = Graph(V_K5, E_K5)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.minimalChordal_decomp(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 4)
Example #7
0
 def test_MSVS_6(self):
     G = Graph(V_Pappus, E_Pappus)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.MSVS(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 6)
Example #8
0
 def test_MSVS_3(self):
     G = Graph(V_Petersen, E_Petersen)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.MSVS(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 4)
Example #9
0
 def test_trivial_decomposition_4(self):
     G = Graph(V_Petersen_double, E_Petersen_double)
     T, w = tdlib.trivial_decomposition(G)
     self.assertEqual(T.vertices(), [V_Petersen_double])
Example #10
0
 def test_minimalChordal_4(self):
     G = Graph(V_Petersen_double, E_Petersen_double)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.minimalChordal_decomp(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 4)
Example #11
0
 def test_minimalChordal_2(self):
     G = Graph(V_K5, E_K5)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.minimalChordal_decomp(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 4)
Example #12
0
 def test_minimalChordal_0(self):
     for V, E in cornercases:
         G = Graph(V, E)
         T, w = tdlib.trivial_decomposition(G)
         T, w = tdlib.minimalChordal_decomp(G, T)
         self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
Example #13
0
 def test_MSVS_7(self):
     G = Graph(V_Grid_5_5, E_Grid_5_5)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.MSVS(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 5)
Example #14
0
 def test_MSVS_6(self):
     G = Graph(V_Pappus, E_Pappus)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.MSVS(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 6)
Example #15
0
 def test_trivial_decomposition_2(self):
     G = Graph(V_K5, E_K5)
     T, w = tdlib.trivial_decomposition(G)
     self.assertEqual(T.vertices(), [V_K5])
Example #16
0
 def test_trivial_decomposition_3(self):
     G = Graph(V_Petersen, E_Petersen)
     T, w = tdlib.trivial_decomposition(G)
     self.assertEqual(T.vertices(), [V_Petersen])
Example #17
0
 def test_trivial_decomposition_6(self):
     G = Graph(V_Pappus, E_Pappus)
     T, w = tdlib.trivial_decomposition(G)
     self.assertEqual(T.vertices(), [V_Pappus])
Example #18
0
 def test_trivial_decomposition_5(self):
     G = Graph(V_Wagner, E_Wagner)
     T, w = tdlib.trivial_decomposition(G)
     self.assertEqual(T.vertices(), [V_Wagner])
Example #19
0
 def test_trivial_decomposition_7(self):
     G = Graph(V_Grid_5_5, E_Grid_5_5)
     T, w = tdlib.trivial_decomposition(G)
     self.assertEqual(T.vertices(), [V_Grid_5_5])
Example #20
0
 def test_MSVS_5(self):
     G = Graph(V_Wagner, E_Wagner)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.MSVS(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 4)
Example #21
0
 def test_trivial_decomposition_8(self):
     for i in range(0, 10):
         V, E = randomGNP(20, 0.2)
         G = Graph(V, E)
         T, w = tdlib.trivial_decomposition(G)
         self.assertEqual(T.vertices(), [V])
Example #22
0
 def test_MSVS_7(self):
     G = Graph(V_Grid_5_5, E_Grid_5_5)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.MSVS(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 5)
Example #23
0
 def test_is_valid_treedecomposition_0(self):
     G = Graph(V_P6, E_P6)
     T, w = tdlib.trivial_decomposition(G)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
Example #24
0
 def test_minimalChordal_0(self):
     for V, E in cornercases:
         G = Graph(V, E)
         T, w = tdlib.trivial_decomposition(G)
         T, w = tdlib.minimalChordal_decomp(G, T)
         self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
Example #25
0
 def test_is_valid_treedecomposition_1(self):
     G = Graph(V_P6, E_P6)
     T, w = tdlib.trivial_decomposition(G)
     self.assertEqual(
         tdlib.is_valid_treedecomposition(Graph(V_K5, E_K5), T, False),
         False)
Example #26
0
 def test_minimalChordal_4(self):
     G = Graph(V_Petersen_double, E_Petersen_double)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.minimalChordal_decomp(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 4)
Example #27
0
 def test_trivial_decomposition_0(self):
     for V, E in cornercases:
         G = Graph(V, E)
         T, w = tdlib.trivial_decomposition(G)
         self.assertEqual(T.vertices(), [V])
Example #28
0
 def test_trivial_decomposition_1(self):
     G = Graph(V_P6, E_P6)
     T, w = tdlib.trivial_decomposition(G)
     self.assertEqual(T.vertices(), [V_P6])
Example #29
0
 def test_MSVS_3(self):
     G = Graph(V_Petersen, E_Petersen)
     T, w = tdlib.trivial_decomposition(G)
     T, w = tdlib.MSVS(G, T)
     self.assertEqual(tdlib.is_valid_treedecomposition(G, T), True)
     self.assertEqual(w, 4)