Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def test_evaluate(debug=True):
- infix1 = "~(p&q7)"
- models_values1 = [
- ({"p": True, "q7": False}, True),
- ({"p": False, "q7": False}, True),
- ({"p": True, "q7": True}, False),
- ]
- infix2 = "~~~x"
- models_values2 = [({"x": True}, False), ({"x": False}, True)]
- infix3 = "((x->y)&(~x->z))"
- models_values3 = [
- ({"x": True, "y": False, "z": True}, False),
- ({"x": False, "y": False, "z": True}, True),
- ({"x": True, "y": True, "z": False}, True),
- ]
- infix4 = "(T&p)"
- models_values4 = [({"p": True}, True), ({"p": False}, False)]
- infix5 = "(F|p)"
- models_values5 = [({"p": True}, True), ({"p": False}, False)]
- for infix, models_values in [
- [infix1, models_values1],
- [infix2, models_values2],
- [infix3, models_values3],
- [infix4, models_values4],
- [infix5, models_values5],
- ]:
- formula = Formula.parse(infix)
- for model, value in models_values:
- if debug:
- print(
- "Testing evaluation of formula", formula, "in model", model
- )
- assert evaluate(formula, frozendict(model)) == value
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement