Closed thomasahle closed 4 months ago
The following program gives illegal tikz:
x = Variable("x", "batch, din") W1 = Variable("W", "din1, dout1, k") act = x @ Copy("din, din1, din2") @ W1 W2 = Variable("W2", "din2, dout2, k") expr = act @ Copy("dout1, dout2, dout") @ W2
it outputs:
\documentclass[tikz]{standalone} \usetikzlibrary{graphs, graphdrawing, quotes, arrows.meta, decorations.markings, shapes.geometric} \usegdlibrary{trees, layered, force} \usepackage[T1]{fontenc} \usepackage{comicneue} \begin{document} \tikz[ font=\sffamily, every node/.style={ inner sep=3pt, }, identity/.style={circle, draw=black, fill=black, inner sep=0pt, minimum size=4pt}, zero/.style={rectangle, draw=black, fill=white, inner sep=2pt}, conv/.style={rectangle, draw=black, fill=white, inner sep=2pt}, flatten/.style={rectangle, draw=black, fill=white, inner sep=2pt}, function/.style={circle, draw=black, fill=white, inner sep=2pt}, var/.style={circle, draw=purple!50!black, very thick, fill=purple!20, inner sep=3pt}, degree0/.style={circle, draw=orange!50!black, very thick, fill=orange!20, inner sep=3pt}, degree1/.style={circle, draw=blue!50!black, very thick, fill=blue!20, inner sep=4pt}, degree2/.style={rectangle, draw=red!50!black, very thick, fill=red!20, inner sep=6pt}, degree3/.style={diamond, draw=green!50!black, very thick, fill=green!20, inner sep=4pt}, degree4/.style={star, star points=5, draw=purple!50!black, very thick, fill=purple!20, inner sep=4pt}, label/.style={scale=2, inner sep=0pt}, subgraph nodes={draw=gray, rounded corners}, derivative_subgraph/.style={draw=black, very thick, circle}, expectation_subgraph/.style={draw=black, very thick, sharp corners}, function_subgraph/.style={draw=black, thick, dashed, rounded corners}, subgraph text none, every edge/.append style={ very thick, }, every edge quotes/.style={ font=\fontsize{5}{5.5}\selectfont, fill=white, fill opacity=0.85, text opacity=1, midway, auto, inner sep=1pt, }, ] \graph [ tree layout, components go down left aligned, fresh nodes, sibling sep=1em, node sep=1em, nodes behind edges, ] { 9384427349064316675[degree2,as=x,nudge=(left:-0.302em)]; 17252257576052696935[identity,as=,nudge=(left:-0.454em)]; (9384427349064316675) -- [, bend left=0, auto=right, "$din$", "$din$" at start, "$$" at end] (17252257576052696935); 3232644547172726449[degree3,as=W,nudge=(left:-0.462em)]; (17252257576052696935) -- [, bend left=0, auto=right, "$din_{1}$", "$$" at start, "$din1$" at end] (3232644547172726449); 14440642115467507157[identity,as=,nudge=(left:-0.278em)]; (3232644547172726449) -- [, bend left=0, auto=right, "$dout_{1}$", "$dout1$" at start, "$$" at end] (14440642115467507157); 7385809608858714323[degree3,as=W_{2},nudge=(left:-0.285em)]; (17252257576052696935) -- [, bend left=0, auto=right, "$din_{2}$", "$$" at start, "$din2$" at end] (7385809608858714323); (3232644547172726449) -- [, bend left=0, auto=right, "$k$", "$k$" at start, "$k$" at end] (7385809608858714323); (14440642115467507157) -- [, bend left=0, auto=right, "$dout_{2}$", "$$" at start, "$dout2$" at end] (7385809608858714323); 9384427349064316675+batch[style={},as=,nudge=(left:-0.252em)]; (9384427349064316675) -- [, bend left=0, auto=right, "$batch$", "$batch$" at start, "$$" at end] (9384427349064316675+batch); 14440642115467507157+dout[style={},as=,nudge=(left:0.476em)]; (14440642115467507157) -- [, bend left=0, auto=right, "$dout$", "$$" at start, "$$" at end] (14440642115467507157+dout); }; \end{document}
I think the issue is the empty $$.
Fixed in https://github.com/thomasahle/tensorgrad/commit/406f3c5c2ca947d8d8a8247eb6bc09d4d2fb520a
The following program gives illegal tikz:
it outputs:
I think the issue is the empty $$.