K i(ddlmZmZmZmZmZmZddlmZddl m Z ddl m Z m Z ddlmZddlmZmZddlmZddlmZd Zd Zd Zd Zd ZdZdZdZdZdZ y))purestrstyleof attrprintdotnodedotedgesdotprint)Basic)Expr)FloatInteger)S)Symbolsymbols)srepr)xcttddk(sJtttdtddk(sJtt ddk(sJttddd k(sJtttdtddd k(sJtt ddd k(sJy) Nr Symbol('x')Basic(Integer(1), Integer(2))Float('2.0', precision=53)T) with_args)r)r)z Integer(1) Integer(2))rr)rrr r r rc/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/printing/tests/test_dot.py test_purestrr s 6#; = 00 0 51qt$ %)H HH H 58  < << < 6#;$ /3F FF F 51qt$ 5 K LL L 58t ,* ++ +rctdddftddifg}tttd|dddk(sJttdz|dddk(sJy)Nblueellipsecolorshaper"blackr)r r rr r)styless r test_styleofr&sc;<w()+F 51; 'Vi+P PP P 1q5& !w%K KK Krc*tddddk(sJy)Nrr r!z!"color"="blue", "shape"="ellipse")rrrrtest_attrprintr( s! v : ; . // /rcttddk(sJttdzddk(sJttdzdtttdzzddk(sJtttdzzdd k(sJy) NFrepeatz@"Symbol('x')" ["color"="black", "label"="x", "shape"="ellipse"];rzS"Add(Integer(2), Symbol('x'))" ["color"="black", "label"="Add", "shape"="ellipse"];rze"Add(Symbol('x'), Pow(Symbol('x'), Integer(2)))" ["color"="black", "label"="Add", "shape"="ellipse"];Tzh"Add(Symbol('x'), Pow(Symbol('x'), Integer(2)))_()" ["color"="black", "label"="Add", "shape"="ellipse"];)rrrrr test_dotnoder,$s 1U #L MM M 1Q3u % ? ? !1 ? 1q!t8E * ? ?? ? 1q!t8D ) ? ?? ?rctttdzdddgk(sJtttdzdddgk(sJy) NrFr*z/"Add(Integer(2), Symbol('x'))" -> "Integer(2)";z0"Add(Integer(2), Symbol('x'))" -> "Symbol('x')";Tz7"Add(Integer(2), Symbol('x'))_()" -> "Integer(2)_(0,)";z8"Add(Integer(2), Symbol('x'))_()" -> "Symbol('x')_(1,)";)sortedrrrrr test_dotedgesr/4s^ (1Q3u- .;>3   (1q5. /CF4  rc pttdzdtfdttdzdDsJtfdtt dtdzfDcgc]}t |dc}DsJdvsJtttdzzdtfdtttdzzdDsJtfdtt dtdzfDcgc]}t |dc}DsJdvsJtttdzzd tfd tttdzzd DsJtfd ttdzzfDcgc]}t |d c}DsJtttzd tfdtttzd DsJtfdt td t td fDsJdvsJycc}wcc}wcc}w)NrFr*c3&K|]}|v ywNr.0etexts r z test_dotprint..@>QqDy>c3&K|]}|v ywr2rr4nr6s rr7z test_dotprint..As+T +r9digraphc3&K|]}|v ywr2rr3s rr7z test_dotprint..GsAQqDyAr9c3&K|]}|v ywr2rr;s rr7z test_dotprint..Hs,T ,r9Tc3&K|]}|v ywr2rr3s rr7z test_dotprint..Ns@QqDy@r9c3&K|]}|v ywr2rr;s rr7z test_dotprint..Os!T !r9r)posc3&K|]}|v ywr2rr3s rr7z test_dotprint..Tr8r9c3&K|]}|v ywr2rr;s rr7z test_dotprint..UsIT Ir9)r)r)rrallrr r)exprr6s @r test_dotprintrG>s AaC &D >(1Q3u"=> >> > + AaC(* $D7*+ ++ +    AadF5 )D A(1QT6%"@A AA A , AqD)+ $D7+, ,, ,    AadF4 (D @(1QT6$"?@ @@ @ !AXJ $Db1 ! !! ! AqD &D >(1a4"=> >> > I#A40'!2FGI II I   +*+ s"H) 8H. H3 ctdtzdzd}tdtzdz|vsJtt|vsJtdtzdz}d|vsJy)Nrr)depthrJ)rrrr6s rtest_dotprint_depthrLYsa AaCE #D 1Q3q5>T !! ! 1:T !! ! AaCE?D $  rcVddlm}td}t|d||dk(sJy)Nr) MatrixSymbolr<Xadigraph{ # Graph style "ordering"="out" "rankdir"="TD" ######### # Nodes # ######### "MatrixSymbol(Str('X'), Symbol('n'), Symbol('n'))_()" ["color"="black", "label"="MatrixSymbol", "shape"="ellipse"]; "Str('X')_(0,)" ["color"="blue", "label"="X", "shape"="ellipse"]; "Symbol('n')_(1,)" ["color"="black", "label"="n", "shape"="ellipse"]; "Symbol('n')_(2,)" ["color"="black", "label"="n", "shape"="ellipse"]; ######### # Edges # ######### "MatrixSymbol(Str('X'), Symbol('n'), Symbol('n'))_()" -> "Str('X')_(0,)"; "MatrixSymbol(Str('X'), Symbol('n'), Symbol('n'))_()" -> "Symbol('n')_(1,)"; "MatrixSymbol(Str('X'), Symbol('n'), Symbol('n'))_()" -> "Symbol('n')_(2,)"; })"sympy.matrices.expressions.matexprrNrr)rNr<s rtest_Matrix_and_non_basicsrQ`s3?s A La+ ,  rcLttdzt}d|vsJd|vsJy)Nr) labelfuncrr)rrrrKs rtest_labelfuncrT}s. AEU +D D  4  rctdd\}}t||zt||zk(sJt||zt||zk7sJy)Nzx yF) commutative)rr)rys rtest_commutativerXsN 5e ,DAq AE?hq1uo -- - AaC=HQqSM )) )rN)!sympy.printing.dotrrrrrrsympy.core.basicr sympy.core.exprr sympy.core.numbersr r sympy.core.singletonr sympy.core.symbolrrsympy.printing.reprr sympy.abcrrr&r(r,r/rGrLrQrTrXrrrrasW" /"/% +L/? 6: *r