Beispiel #1
0
 def test_deeply_nested(self):  # just for fun :-)
     ap = tctl.AtomicProposition(None)
     deepnest = tctl.And(ap, ap)
     for _ in range(10):
         deepnest = tctl.And(deepnest, tctl.And(ap, tctl.Or(deepnest, ap)))
     self.assertCountEqual(deepnest.get_propositions(), [ap])
Beispiel #2
0
    def test_U_operators(self):
        ap = tctl.AtomicProposition(None)
        ap2 = tctl.AtomicProposition(None)

        eu = tctl.EU(ap, ap2)
        self.assertCountEqual(eu.get_propositions(), [ap, ap2])
Beispiel #3
0
 def test_Or_return_parts_avoids_nested_duplicates(self):
     ap = tctl.AtomicProposition(None)
     ap2 = tctl.AtomicProposition(None)
     or_formula = tctl.Or(ap, ap2)
     or_or_formula = tctl.Or(ap, or_formula)
     self.assertCountEqual(or_or_formula.get_propositions(), [ap, ap2])
Beispiel #4
0
 def test_Or_return_parts(self):
     ap = tctl.AtomicProposition(None)
     ap2 = tctl.AtomicProposition(None)
     ap3 = tctl.AtomicProposition(None)
     or_formula = tctl.Or(ap, ap2)
     self.assertCountEqual(or_formula.get_propositions(), [ap, ap2])
Beispiel #5
0
 def test_And_return_parts_avoids_nested_duplicates(self):
     ap = tctl.AtomicProposition(None)
     ap2 = tctl.AtomicProposition(None)
     and_formula = tctl.And(ap, ap2)
     and_and_formula = tctl.And(ap, and_formula)
     self.assertCountEqual(and_and_formula.get_propositions(), [ap, ap2])
Beispiel #6
0
 def test_And_return_parts(self):
     ap = tctl.AtomicProposition(None)
     ap2 = tctl.AtomicProposition(None)
     and_formula = tctl.And(ap, ap2)
     self.assertCountEqual(and_formula.get_propositions(), [ap, ap2])
Beispiel #7
0
 def test_AtomicProposition_return_self(self):
     ap = tctl.AtomicProposition(None)
     self.assertEqual(ap.get_propositions(), [ap],
                      "Calling get_propositions on an AP, returns the AP")