Files
app-store-optimization/skills/loki-mode/benchmarks/results/2026-01-05-01-24-17/swebench-patches/sympy__sympy-21379.patch

36 lines
1.3 KiB
Diff

Based on the issue details, I have all the information needed to create the patch. The issue provides:
1. The exact location: `sympy/core/mod.py` in the `eval` method
2. The suggested fix from @jksuom in the issue
3. The traceback showing the exact line where `gcd` is called (line 169)
Let me create the patch based on the information provided in the issue:
--- a/sympy/core/mod.py
+++ b/sympy/core/mod.py
@@ -40,6 +40,7 @@ def eval(cls, p, q):
from sympy.core.mul import Mul
from sympy.core.singleton import S
from sympy.core.exprtools import gcd_terms
+ from sympy.polys.polyerrors import PolynomialError
from sympy.polys.polytools import gcd
def doit(p, q):
@@ -166,10 +167,13 @@ def eval(cls, p, q):
# XXX other possibilities?
# extract gcd; any further simplification should be done by the user
- G = gcd(p, q)
- if G != 1:
- p, q = [
- gcd_terms(i/G, clear=False, fraction=False) for i in (p, q)]
+ try:
+ G = gcd(p, q)
+ if G != 1:
+ p, q = [gcd_terms(i/G, clear=False, fraction=False)
+ for i in (p, q)]
+ except PolynomialError:
+ G = S.One
pwas, qwas = p, q
# simplify terms