File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 88from .variables import get_propositional_variables
99
1010
11- def iter_interpretations (formula : Formula ) -> Iterable [PropositionalInterpretation ]:
12- variables = sorted (get_propositional_variables (formula ))
11+ def iter_interpretations (* formulas : Formula ) -> Iterable [PropositionalInterpretation ]:
12+ variables = sorted (var for formula in formulas for var in get_propositional_variables (formula ))
1313
1414 for spec in product ([True , False ], repeat = len (variables )):
1515 yield PropositionalInterpretation (dict (zip (variables , spec , strict = True )))
@@ -39,15 +39,8 @@ def is_contradiction(formula: Formula) -> bool:
3939
4040
4141def are_semantically_equivalent (first : Formula , second : Formula ) -> bool :
42- for interp in iter_interpretations (first ):
43- try :
44- eval_second = evaluate_propositional_formula (second , interp )
45- except MissingInterpretationError :
46- return False
47-
48- eval_first = evaluate_propositional_formula (first , interp )
49-
50- if eval_first != eval_second :
42+ for interp in iter_interpretations (first , second ):
43+ if evaluate_propositional_formula (first , interp ) != evaluate_propositional_formula (second , interp ):
5144 return False
5245
5346 return True
Original file line number Diff line number Diff line change 11from ....support .pytest import pytest_parametrize_kwargs
2- from ..propositional import are_equisatisfiable , parse_propositional_formula
2+ from ..propositional import are_equisatisfiable , are_semantically_equivalent , parse_propositional_formula
33from .constants import collapse_constants , expand_constants
44
55
1212def test_expand_constants (formula : str , expected : str ) -> None :
1313 formula_ = parse_propositional_formula (formula )
1414 expected_ = parse_propositional_formula (expected )
15- assert are_equisatisfiable (formula_ , expected_ )
15+ assert are_semantically_equivalent (formula_ , expected_ )
1616
1717 expanded = expand_constants (formula_ )
1818 assert expanded == expected_
You can’t perform that action at this time.
0 commit comments