blob: 93dad09f5dab142f1e5767fb515c2d0838b7aedc (
plain)
1
2
3
4
5
6
7
8
9
10
|
from sympy import *
from sympy.codegen.rewriting import ReplaceOptim
expand_square = ReplaceOptim(
lambda e: e.is_Pow and e.exp.is_integer and e.exp == 2,
lambda p: UnevaluatedExpr(Mul(p.base, p.base, evaluate = False))
)
custom = [ (expand_square, expand_square) ] + cse_main.basic_optimizations
|