Skip to content

Commit b442d0b

Browse files
committed
Handled exceptions for is_infinite checks during symbolic expression comparison
1 parent ccd621b commit b442d0b

1 file changed

Lines changed: 5 additions & 3 deletions

File tree

app/context/symbolic.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -122,9 +122,11 @@ def check_equality(criterion, parameters_dict, local_substitutions=[]):
122122
elif not isinstance(lhs_expr, Equality) and isinstance(rhs_expr, Equality):
123123
result = False
124124
else:
125-
# Subtraction of infinite values (e.g. oo - oo) yields nan rather than 0,
126-
# so we use direct comparison when either side is infinite.
127-
if lhs_expr.is_infinite or rhs_expr.is_infinite:
125+
try:
126+
either_is_infinite = lhs_expr.is_infinite or rhs_expr.is_infinite
127+
except (KeyError, TypeError):
128+
either_is_infinite = False
129+
if either_is_infinite:
128130
result = do_comparison_infinite(criterion.content, lhs_expr, rhs_expr)
129131
else:
130132
result = do_comparison(criterion.content, lhs_expr-rhs_expr)

0 commit comments

Comments
 (0)