示例#1
0
 def test_single_vertex(self) :
     G=nx.DiGraph()
     G.add_node('x')
     peb = PebblingFormula(G)
     self.assertTrue(peb._check_coherence())
     self.assertSetEqual(set(peb.variables()),set(['x']))
     self.assertSetSetEqual(peb,[[(True,'x')],[(False,'x')]])
示例#2
0
 def test_single_vertex(self):
     G = nx.DiGraph()
     G.add_node('x')
     peb = PebblingFormula(G)
     self.assertTrue(peb._check_coherence())
     self.assertSetEqual(set(peb.variables()), set(['x']))
     self.assertSetSetEqual(peb, [[(True, 'x')], [(False, 'x')]])
示例#3
0
 def test_path(self) :
     G=nx.path_graph(10,nx.DiGraph())
     peb = PebblingFormula(G)
     self.assertTrue(peb._check_coherence())
     clauses = \
         [[(True,0)]] + \
         [[(False,i-1),(True,i)] for i in xrange(1,10)] + \
         [[(False,9)]]
     self.assertListEqual(list(peb.variables()),range(10))
     self.assertSetSetEqual(peb,clauses)
示例#4
0
 def test_path(self):
     G = nx.path_graph(10, nx.DiGraph())
     peb = PebblingFormula(G)
     self.assertTrue(peb._check_coherence())
     clauses = \
         [[(True,0)]] + \
         [[(False,i-1),(True,i)] for i in range(1,10)] + \
         [[(False,9)]]
     self.assertListEqual(list(peb.variables()), list(range(10)))
     self.assertSetSetEqual(peb.clauses(), clauses)
示例#5
0
 def test_pyramid(self) :
     G=nx.DiGraph()
     G.add_node(10)
     for i in xrange(0,10) :
         G.add_node(i)
         G.add_edge(i,10)
     peb = PebblingFormula(G)
     self.assertTrue(peb._check_coherence())
     clauses = \
         [[(True,i)] for i in xrange(10)] + \
         [[(False,i) for i in xrange(10)] + [(True,10)]] + \
         [[(False,10)]]
     self.assertListEqual(list(peb.variables()),range(11))
     self.assertSetSetEqual(list(peb),clauses)
示例#6
0
 def test_pyramid(self):
     G = nx.DiGraph()
     G.add_node(10)
     for i in range(0, 10):
         G.add_node(i)
         G.add_edge(i, 10)
     peb = PebblingFormula(G)
     self.assertTrue(peb._check_coherence())
     clauses = \
         [[(True,i)] for i in range(10)] + \
         [[(False,i) for i in range(10)] + [(True,10)]] + \
         [[(False,10)]]
     self.assertListEqual(list(peb.variables()), list(range(11)))
     self.assertSetSetEqual(peb.clauses(), clauses)
示例#7
0
 def test_null_graph(self) :
     G=nx.DiGraph()
     peb = PebblingFormula(G)
     self.assertTrue(peb._check_coherence())
     self.assertCnfEqual(peb,CNF())
示例#8
0
 def test_null_graph(self):
     G = nx.DiGraph()
     peb = PebblingFormula(G)
     self.assertTrue(peb._check_coherence())
     self.assertCnfEqual(peb, CNF())