Files
app-store-optimization/skills/loki-mode/benchmarks/results/2026-01-05-10-37-54/swebench-loki-patches/sympy__sympy-15011.patch

31 lines
1.4 KiB
Diff

# sympy__sympy-15011
# Loki Mode Multi-Agent Patch
# Attempts: 1
--- a/sympy/utilities/lambdify.py
+++ b/sympy/utilities/lambdify.py
@@ -739,10 +739,21 @@ def _preprocess(self, args, expr):
from sympy import Symbol, Function, flatten, Derivative, ordered, Basic
from sympy.matrices import DeferredVector
- # Args of type Dummy can cause name collisions with args
- # of type Symbol. Force dummify of everything in this
- # temporary situation to handle a corner case:
- dummify = self._dummify or any(isinstance(arg, Basic) and arg.has(Dummy) for arg in flatten(args))
+ # Check if dummify is needed
+ dummify = self._dummify
+
+ if not dummify:
+ # Args of type Dummy can cause name collisions with args
+ # of type Symbol. Force dummify of everything in this
+ # temporary situation to handle a corner case:
+ dummify = any(isinstance(arg, Basic) and arg.has(Dummy) for arg in flatten(args))
+
+ if not dummify:
+ # Check if any MatrixSymbol has an invalid Python identifier name
+ from sympy.matrices import MatrixSymbol
+ dummify = any(isinstance(arg, MatrixSymbol) and not self._is_safe_ident(arg.name)
+ for arg in flatten(args))
argstrs = [None]*len(args)
for arg, i in reversed(list(ordered(zip(args, range(len(args)))))):