K iddlmZddlmZddlmZddlmZddlm Z ddl m Z m Z ddl mZddlmZed ed cZZd Zd Zd ZdZdZdZdZdZy)) rewriterule)Basic)S)Symbol)sinxy)rebuild)Qpqc ttttdtttdtf}t |ttdtdttdtdgk(sJtdz}tdz}t||tf}t dz}t ||t dzgk(sJyN) variables)rrr rlistr )rlp1p2exprs d/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/unify/tests/test_rewrite.py test_simpler s U1ad^U1ad^t DB 51qt$% &51qt+<*= == = AB AB Rt ,B a4D 4>adV ## #c ttttdtttdtf}t |ttdtdttdtdgk(sJttdztdztf}t |t dzt dzgk(sJyr)rrr rrr rs rtest_simple_variablesrs U1ad^U1ad^t DB 51qt$% &51qt+<*= == = QT1a4A4 0B 1a4>adV ## #rctdztdzz}ttzdz}t||ttf}tdztdzz}t ||ttzdzgk(sJy)Nrr)r rrr r r)rrrrs r test_moderater"sc A1B A#B RaV $B a4!Q$;D 4>qsQhZ '' 'rchttdzttdzz}d}t||ttf}t |tt dztt dzzdgk(sJt |tt dztt dzzdgk(sJy)Nrr)rr rrrr r )rrrs r test_sincosr$&s QSVQY B B RaV $B 3q619s1vqy() *qc 11 1 3q619s1vqy() *qc 11 1rctttzttzttf}t|tt zj tt|tt zyN)rr rnextr r is_commutativestrrs r test_Exprs_okr*.sE QqS!A#1v &BAaCM  R!W rc tttdztgd}t|tdrJt t |tddk(sJy)Nrc |dkS)N )r s rz'test_condition_simple..4s AFr)rr rrr r'rs rtest_condition_simpler33sM Q!aS"2 3BBquI  41Q4> "a '' 'rcFtttzttzttgd}td}tdd}||z}t ||||zgk(sJtdd}tdd}t |||z||z||zhk(sJy)Nc|jSr&) is_integerrs rr/z)test_condition_multiple..:s allrabT)integercd)rr r rrset)rr7r8rr:r;s rtest_condition_multipler=9s QUAqD1Q%)B CBs AsD!A q5D 4>adV ## #sD!AsD!A r!a%y>adAqD\ )) )rctttzttzttgtjt}t t d\}}||z}t||tj|||zgk(sJy)N)assumeab)rr r r r9maprr)rr7r8rs rtest_assumptionsrBEsg QUAqD1a&1 >B vt DAq q5D 41& 'AqD6 11 1rN)sympy.unify.rewritersympy.core.basicrsympy.core.singletonrsympy.core.symbolr(sympy.functions.elementary.trigonometricr sympy.abcr r sympy.strategies.rlr sympy.assumptionsr r rrrr"r$r*r3r=rBr.rrrKsX+""$8' c{F3K1 $$(2 ( *2r