Skip to content

Instantly share code, notes, and snippets.

@dpsanders
Last active June 25, 2020 02:47
Show Gist options
  • Star 4 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dpsanders/5cc1acff2471d27bc583916e00d43387 to your computer and use it in GitHub Desktop.
Save dpsanders/5cc1acff2471d27bc583916e00d43387 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"using LightGraphs, TikzGraphs\n",
"using MacroTools"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Draw AST (Abstract Syntax Tree)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"add_numbered_vertex! (generic function with 1 method)"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"add_numbered_vertex!(g) = (add_vertex!(g); top = nv(g)) # returns the number of the new vertex"
]
},
{
"cell_type": "code",
"execution_count": 81,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING: Method definition label(Any) in module Main at In[80]:3 overwritten at In[81]:3.\n",
"WARNING: replacing docs for 'label :: Tuple{Any}' in module 'Main'.\n"
]
},
{
"data": {
"text/plain": [
"label"
]
},
"execution_count": 81,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\"Convert the current node into a label\"\n",
"function label(sym) \n",
" sym == :(^) && return \"\\\\textasciicircum\" # TikzGraphs chokes on ^\n",
" \n",
" return string(\"\\\\texttt{\", sym, \"}\")\n",
"end"
]
},
{
"cell_type": "code",
"execution_count": 113,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING: Method definition traverse!(Any, Any, Any) in module Main at In[101]:5 overwritten at In[113]:7.\n",
"WARNING: Method definition traverse!(Any, Any, Any, Any) in module Main at In[101]:5 overwritten at In[113]:7.\n",
"WARNING: replacing docs for 'traverse! :: Union{Tuple{Any,Any,Any,Any},Tuple{Any,Any,Any}}' in module 'Main'.\n"
]
},
{
"data": {
"text/plain": [
"traverse!"
]
},
"execution_count": 113,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\"\"\"Traverse the expression and build up the graph g and the set of labels\n",
"for each node. (These both get modified in place.) `show_call` specifies whether to include `call` nodes in the graph\n",
"in function calls. Including them represents the Julia AST more precisely, but adds a lot\n",
"of visual noise to the display.\n",
"\n",
"traverse! returns the number of the vertex at the top of the subexpression.\"\"\"\n",
"\n",
"function traverse!(g, labels, ex, show_call=true)\n",
"\n",
" top_vertex = add_numbered_vertex!(g)\n",
" \n",
" start_argument = 1 # which argument to start with\n",
" \n",
" if !(show_call) && ex.head == :call \n",
" f = ex.args[1] # the function name\n",
" push!(labels, label(f))\n",
" start_argument = 2 # drop \"call\" from tree\n",
" \n",
" else\n",
" push!(labels, label(ex.head))\n",
" end\n",
"\n",
" \n",
" for i in start_argument:length(ex.args)\n",
" \n",
" if isa(ex.args[i], Expr)\n",
" \n",
" child = traverse!(g, labels, ex.args[i], show_call)\n",
" add_edge!(g, top_vertex, child)\n",
" \n",
" else\n",
" n = add_numbered_vertex!(g)\n",
" add_edge!(g, top_vertex, n)\n",
" \n",
" push!(labels, label(ex.args[i]))\n",
" \n",
" end\n",
" end\n",
" \n",
" return top_vertex\n",
" \n",
"end"
]
},
{
"cell_type": "code",
"execution_count": 102,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING: Method definition draw_syntax_tree(Expr) in module Main at In[100]:3 overwritten at In[102]:3.\n",
"WARNING: Method definition draw_syntax_tree(Expr, Any) in module Main at In[100]:3 overwritten at In[102]:3.\n"
]
},
{
"data": {
"text/plain": [
"draw_syntax_tree (generic function with 2 methods)"
]
},
"execution_count": 102,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"function draw_syntax_tree(ex::Expr, show_call=false)\n",
" \n",
" ex = MacroTools.striplines(ex)\n",
" \n",
" g = Graph()\n",
" labels = String[]\n",
" \n",
" traverse!(g, labels, ex, show_call)\n",
" \n",
" TikzGraphs.plot(g, labels)\n",
"end"
]
},
{
"cell_type": "code",
"execution_count": 106,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING: Method definition @tree(Expr) in module Main at In[103]:2 overwritten at In[106]:2.\n",
"WARNING: Method definition @tree_with_call(Expr) in module Main at In[103]:6 overwritten at In[106]:6.\n"
]
},
{
"data": {
"text/plain": [
"@tree_with_call (macro with 1 method)"
]
},
"execution_count": 106,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"macro tree(ex::Expr)\n",
" draw_syntax_tree(ex)\n",
"end\n",
"\n",
"macro tree_with_call(ex::Expr)\n",
" draw_syntax_tree(ex, true)\n",
"end"
]
},
{
"cell_type": "code",
"execution_count": 114,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/svg+xml": [
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"96.911pt\" height=\"153.733pt\" viewBox=\"0 0 96.911 153.733\" version=\"1.1\">\n",
"<defs>\n",
"<g>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-0-0\">\n",
"<path style=\"stroke:none;\" d=\"\"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-0-1\">\n",
"<path style=\"stroke:none;\" d=\"M 4.84375 -3.8125 C 4.84375 -4.15625 4.46875 -4.15625 4.34375 -4.15625 L 0.890625 -4.15625 C 0.75 -4.15625 0.375 -4.15625 0.375 -3.8125 C 0.375 -3.453125 0.703125 -3.453125 0.828125 -3.453125 L 4.390625 -3.453125 C 4.515625 -3.453125 4.84375 -3.453125 4.84375 -3.8125 Z M 4.84375 -2.296875 C 4.84375 -2.640625 4.515625 -2.640625 4.390625 -2.640625 L 0.828125 -2.640625 C 0.703125 -2.640625 0.375 -2.640625 0.375 -2.296875 C 0.375 -1.9375 0.75 -1.9375 0.890625 -1.9375 L 4.34375 -1.9375 C 4.46875 -1.9375 4.84375 -1.9375 4.84375 -2.296875 Z M 4.84375 -2.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-0-2\">\n",
"<path style=\"stroke:none;\" d=\"M 4.734375 -0.40625 L 4.734375 -0.984375 C 4.734375 -1.171875 4.734375 -1.390625 4.390625 -1.390625 C 4.046875 -1.390625 4.046875 -1.1875 4.046875 -0.984375 L 4.046875 -0.609375 L 1.359375 -0.609375 L 4.46875 -3.5625 C 4.6875 -3.765625 4.6875 -3.78125 4.6875 -3.953125 C 4.6875 -4.296875 4.46875 -4.296875 4.28125 -4.296875 L 0.890625 -4.296875 C 0.5625 -4.296875 0.484375 -4.21875 0.484375 -3.890625 L 0.484375 -3.421875 C 0.484375 -3.234375 0.484375 -3.015625 0.828125 -3.015625 C 1.171875 -3.015625 1.171875 -3.234375 1.171875 -3.421875 L 1.171875 -3.6875 L 3.65625 -3.6875 L 0.546875 -0.734375 C 0.34375 -0.53125 0.328125 -0.515625 0.328125 -0.34375 C 0.328125 0 0.546875 0 0.734375 0 L 4.515625 0 C 4.734375 -0.0625 4.734375 -0.265625 4.734375 -0.40625 Z M 4.734375 -0.40625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-0-3\">\n",
"<path style=\"stroke:none;\" d=\"M 4.84375 -3.046875 C 4.84375 -3.40625 4.5 -3.40625 4.375 -3.40625 L 2.953125 -3.40625 L 2.953125 -4.828125 C 2.953125 -4.9375 2.953125 -5.296875 2.609375 -5.296875 C 2.265625 -5.296875 2.265625 -4.9375 2.265625 -4.828125 L 2.265625 -3.40625 L 0.84375 -3.40625 C 0.734375 -3.40625 0.375 -3.40625 0.375 -3.046875 C 0.375 -2.703125 0.734375 -2.703125 0.84375 -2.703125 L 2.265625 -2.703125 L 2.265625 -1.28125 C 2.265625 -1.15625 2.265625 -0.8125 2.609375 -0.8125 C 2.953125 -0.8125 2.953125 -1.15625 2.953125 -1.28125 L 2.953125 -2.703125 L 4.375 -2.703125 C 4.5 -2.703125 4.84375 -2.703125 4.84375 -3.046875 Z M 4.84375 -3.046875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-0-4\">\n",
"<path style=\"stroke:none;\" d=\"M 4.546875 -2.140625 C 4.546875 -2.296875 4.421875 -2.390625 4.40625 -2.40625 C 4.15625 -2.578125 3.484375 -2.90625 3.21875 -3.046875 L 4.296875 -3.625 C 4.421875 -3.703125 4.546875 -3.765625 4.546875 -3.953125 C 4.546875 -4 4.546875 -4.28125 4.140625 -4.28125 L 2.90625 -3.5625 C 2.9375 -3.828125 2.9375 -4.484375 2.9375 -4.78125 C 2.9375 -4.859375 2.9375 -5.1875 2.609375 -5.1875 C 2.28125 -5.1875 2.28125 -4.859375 2.28125 -4.78125 C 2.28125 -4.484375 2.296875 -3.828125 2.3125 -3.5625 L 1.234375 -4.203125 C 1.09375 -4.28125 1.078125 -4.28125 1 -4.28125 C 0.8125 -4.28125 0.671875 -4.109375 0.671875 -3.953125 C 0.671875 -3.765625 0.78125 -3.703125 0.921875 -3.640625 L 2 -3.046875 L 0.921875 -2.46875 C 0.8125 -2.390625 0.671875 -2.328125 0.671875 -2.140625 C 0.671875 -2.09375 0.671875 -1.796875 1.078125 -1.796875 L 2.3125 -2.515625 C 2.296875 -2.265625 2.28125 -1.609375 2.28125 -1.3125 C 2.28125 -1.21875 2.28125 -0.890625 2.609375 -0.890625 C 2.9375 -0.890625 2.9375 -1.21875 2.9375 -1.3125 C 2.9375 -1.609375 2.9375 -2.265625 2.90625 -2.515625 C 3.515625 -2.1875 3.15625 -2.375 3.84375 -1.96875 C 4.109375 -1.796875 4.140625 -1.796875 4.21875 -1.796875 C 4.421875 -1.796875 4.546875 -1.984375 4.546875 -2.140625 Z M 4.546875 -2.140625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-0-5\">\n",
"<path style=\"stroke:none;\" d=\"M 4.78125 -1.734375 C 4.78125 -2.4375 4.3125 -3.03125 3.65625 -3.328125 C 4.21875 -3.6875 4.5 -4.25 4.5 -4.796875 C 4.5 -5.53125 3.765625 -6.203125 2.625 -6.203125 C 1.421875 -6.203125 0.734375 -5.71875 0.734375 -5.03125 C 0.734375 -4.703125 0.984375 -4.5625 1.171875 -4.5625 C 1.390625 -4.5625 1.609375 -4.734375 1.609375 -5.015625 C 1.609375 -5.15625 1.5625 -5.25 1.53125 -5.28125 C 1.828125 -5.59375 2.546875 -5.59375 2.625 -5.59375 C 3.3125 -5.59375 3.8125 -5.234375 3.8125 -4.78125 C 3.8125 -4.484375 3.65625 -4.140625 3.390625 -3.921875 C 3.078125 -3.65625 2.828125 -3.640625 2.46875 -3.625 C 1.890625 -3.578125 1.75 -3.578125 1.75 -3.296875 C 1.75 -2.984375 1.984375 -2.984375 2.140625 -2.984375 L 2.609375 -2.984375 C 3.59375 -2.984375 4.09375 -2.3125 4.09375 -1.734375 C 4.09375 -1.125 3.53125 -0.5 2.625 -0.5 C 2.234375 -0.5 1.46875 -0.609375 1.203125 -1.078125 C 1.25 -1.125 1.328125 -1.1875 1.328125 -1.390625 C 1.328125 -1.625 1.140625 -1.828125 0.890625 -1.828125 C 0.65625 -1.828125 0.4375 -1.671875 0.4375 -1.359375 C 0.4375 -0.46875 1.40625 0.109375 2.625 0.109375 C 3.9375 0.109375 4.78125 -0.8125 4.78125 -1.734375 Z M 4.78125 -1.734375 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-0-6\">\n",
"<path style=\"stroke:none;\" d=\"M 4.9375 -0.296875 C 4.9375 -0.609375 4.6875 -0.609375 4.53125 -0.609375 L 4.140625 -0.609375 L 2.859375 -2.21875 L 4 -3.6875 L 4.390625 -3.6875 C 4.53125 -3.6875 4.8125 -3.6875 4.8125 -3.984375 C 4.8125 -4.296875 4.546875 -4.296875 4.390625 -4.296875 L 3.234375 -4.296875 C 3.078125 -4.296875 2.828125 -4.296875 2.828125 -4 C 2.828125 -3.6875 3.046875 -3.6875 3.3125 -3.6875 L 2.578125 -2.6875 L 1.828125 -3.6875 C 2.078125 -3.6875 2.296875 -3.6875 2.296875 -4 C 2.296875 -4.296875 2.046875 -4.296875 1.90625 -4.296875 L 0.734375 -4.296875 C 0.59375 -4.296875 0.328125 -4.296875 0.328125 -3.984375 C 0.328125 -3.6875 0.59375 -3.6875 0.734375 -3.6875 L 1.140625 -3.6875 L 2.3125 -2.21875 L 1.078125 -0.609375 L 0.671875 -0.609375 C 0.53125 -0.609375 0.265625 -0.609375 0.265625 -0.296875 C 0.265625 0 0.53125 0 0.671875 0 L 1.84375 0 C 2 0 2.25 0 2.25 -0.296875 C 2.25 -0.609375 2.03125 -0.609375 1.71875 -0.609375 L 2.578125 -1.828125 L 3.46875 -0.609375 C 3.1875 -0.609375 2.96875 -0.609375 2.96875 -0.296875 C 2.96875 0 3.21875 0 3.375 0 L 4.53125 0 C 4.671875 0 4.9375 0 4.9375 -0.296875 Z M 4.9375 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-0-7\">\n",
"<path style=\"stroke:none;\" d=\"M 4.703125 -0.40625 L 4.703125 -0.671875 C 4.703125 -0.859375 4.703125 -1.078125 4.359375 -1.078125 C 4.015625 -1.078125 4.015625 -0.890625 4.015625 -0.609375 L 1.640625 -0.609375 C 2.234375 -1.109375 3.1875 -1.859375 3.625 -2.265625 C 4.25 -2.828125 4.703125 -3.453125 4.703125 -4.25 C 4.703125 -5.453125 3.703125 -6.203125 2.484375 -6.203125 C 1.3125 -6.203125 0.515625 -5.390625 0.515625 -4.53125 C 0.515625 -4.171875 0.796875 -4.0625 0.96875 -4.0625 C 1.171875 -4.0625 1.40625 -4.234375 1.40625 -4.5 C 1.40625 -4.625 1.359375 -4.75 1.265625 -4.828125 C 1.421875 -5.28125 1.890625 -5.59375 2.4375 -5.59375 C 3.25 -5.59375 4.015625 -5.140625 4.015625 -4.25 C 4.015625 -3.5625 3.53125 -2.984375 2.875 -2.4375 L 0.671875 -0.578125 C 0.578125 -0.5 0.515625 -0.453125 0.515625 -0.3125 C 0.515625 0 0.765625 0 0.921875 0 L 4.3125 0 C 4.640625 0 4.703125 -0.09375 4.703125 -0.40625 Z M 4.703125 -0.40625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-0-8\">\n",
"<path style=\"stroke:none;\" d=\"M 4.984375 -3.984375 C 4.984375 -4.296875 4.75 -4.296875 4.578125 -4.296875 L 3.421875 -4.296875 C 3.265625 -4.296875 3.015625 -4.296875 3.015625 -4 C 3.015625 -3.6875 3.265625 -3.6875 3.421875 -3.6875 L 3.703125 -3.6875 L 2.984375 -1.5625 C 2.84375 -1.203125 2.796875 -1.015625 2.71875 -0.703125 C 2.65625 -0.890625 2.578125 -1.109375 2.5 -1.296875 L 1.578125 -3.6875 L 1.828125 -3.6875 C 1.96875 -3.6875 2.21875 -3.6875 2.21875 -3.984375 C 2.21875 -4.296875 1.984375 -4.296875 1.828125 -4.296875 L 0.65625 -4.296875 C 0.5 -4.296875 0.265625 -4.296875 0.265625 -3.984375 C 0.265625 -3.6875 0.515625 -3.6875 0.65625 -3.6875 L 0.96875 -3.6875 L 2.375 -0.125 C 2.421875 -0.03125 2.421875 0 2.421875 0 C 2.421875 0 2.171875 0.84375 2.046875 1.09375 C 1.75 1.640625 1.390625 1.65625 1.25 1.671875 C 1.25 1.671875 1.296875 1.578125 1.296875 1.453125 C 1.296875 1.203125 1.109375 1.015625 0.875 1.015625 C 0.59375 1.015625 0.421875 1.203125 0.421875 1.453125 C 0.421875 1.875 0.765625 2.265625 1.25 2.265625 C 2.25 2.265625 2.703125 0.953125 2.734375 0.84375 L 4.28125 -3.6875 L 4.578125 -3.6875 C 4.734375 -3.6875 4.984375 -3.6875 4.984375 -3.984375 Z M 4.984375 -3.984375 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-0-9\">\n",
"<path style=\"stroke:none;\" d=\"M 4.40625 -0.296875 C 4.40625 -0.609375 4.171875 -0.609375 4 -0.609375 L 3.09375 -0.609375 L 3.09375 -5.796875 C 3.09375 -5.953125 3.09375 -6.203125 2.796875 -6.203125 C 2.609375 -6.203125 2.546875 -6.078125 2.5 -5.96875 C 2.125 -5.109375 1.609375 -5 1.421875 -4.984375 C 1.25 -4.96875 1.046875 -4.953125 1.046875 -4.671875 C 1.046875 -4.421875 1.21875 -4.375 1.375 -4.375 C 1.5625 -4.375 1.96875 -4.4375 2.40625 -4.8125 L 2.40625 -0.609375 L 1.5 -0.609375 C 1.34375 -0.609375 1.109375 -0.609375 1.109375 -0.296875 C 1.109375 0 1.359375 0 1.5 0 L 4 0 C 4.15625 0 4.40625 0 4.40625 -0.296875 Z M 4.40625 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-1-0\">\n",
"<path style=\"stroke:none;\" d=\"\"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949167-1-1\">\n",
"<path style=\"stroke:none;\" d=\"M 5.59375 -5.828125 L 2.765625 -7.421875 L -0.046875 -5.828125 L 0.0625 -5.609375 L 2.765625 -6.828125 L 5.46875 -5.609375 Z M 5.59375 -5.828125 \"/>\n",
"</symbol>\n",
"</g>\n",
"</defs>\n",
"<g id=\"surface1\">\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -2.797625 -5.598094 L -11.133563 -22.269969 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193957 1.592705 C -1.096124 0.995254 -0.000787969 0.0973397 0.297939 -0.00223285 C 0.000960715 -0.0983169 -1.096106 -0.996251 -1.195676 -1.591956 \" transform=\"matrix(-0.44722,0.89442,0.89442,0.44722,23.14696,27.66811)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 2.800031 -5.598094 L 10.885969 -21.769969 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195412 1.594659 C -1.094476 0.996102 0.00174902 0.10003 0.299292 -0.000881768 C 0.00175437 -0.10007 -1.094422 -0.9962 -1.197066 -1.593023 \" transform=\"matrix(0.44897,0.898,0.898,-0.44897,45.1672,27.16834)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 11.089094 -34.512156 L 3.260969 -50.168406 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194424 1.593449 C -1.09658 0.996005 -0.00123805 0.0981181 0.297488 -0.00144825 C 0.000514115 -0.0975367 -1.096527 -0.995482 -1.194338 -1.594678 \" transform=\"matrix(-0.44724,0.89442,0.89442,0.44724,37.5445,55.5666)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 17.257062 -34.512156 L 24.5305 -49.059031 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196538 1.595835 C -1.09521 0.994885 -0.00161087 0.0987096 0.298865 0.000883136 C 0.000137844 -0.0986957 -1.095192 -0.996638 -1.19651 -1.592349 \" transform=\"matrix(0.4472,0.89442,0.89442,-0.4472,58.81087,54.45574)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -6.114031 -62.809031 L -21.887469 -78.582469 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195382 1.594743 C -1.095944 0.998116 0.000634634 0.100414 0.298948 0.000975817 C 0.000634634 -0.098462 -1.095944 -0.996165 -1.195382 -1.592792 \" transform=\"matrix(-0.7071,0.7071,0.7071,0.7071,12.39429,83.97933)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -0.00075 -62.809031 L -0.00075 -78.9145 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196152 1.593 C -1.09459 0.995344 -0.00084 0.100812 0.299941 -0.00075 C -0.00084 -0.0984063 -1.09459 -0.996844 -1.196152 -1.5945 \" transform=\"matrix(0,1,1,0,34.282,84.31334)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 28.346906 -63.918406 L 28.346906 -78.418406 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194106 1.593856 C -1.09645 0.9962 0.00120625 0.0977625 0.298081 0.00010625 C 0.00120625 -0.101456 -1.09645 -0.995988 -1.194106 -1.593644 \" transform=\"matrix(0,1,1,0,62.6288,83.8152)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 34.635969 -62.984813 L 50.233625 -78.582469 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195816 1.59233 C -1.096378 0.995703 0.000200643 0.0979998 0.298514 -0.00143809 C 0.000200643 -0.100876 -1.093616 -0.995817 -1.195816 -1.595206 \" transform=\"matrix(0.7071,0.7071,0.7071,-0.7071,84.5165,83.97931)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 25.264875 -91.203563 L 17.43675 -106.863719 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.197446 1.594588 C -1.094362 0.995398 -0.000766882 0.101005 0.297959 0.00143851 C -0.000761492 -0.0998908 -1.094309 -0.996089 -1.197361 -1.593538 \" transform=\"matrix(-0.44724,0.89442,0.89442,0.44724,51.71791,112.2602)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 31.428937 -91.203563 L 39.007062 -106.355906 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.19595 1.596064 C -1.095032 0.997512 -0.000585746 0.0979432 0.29869 0.000504454 C 0.00115423 -0.0986743 -1.095032 -0.994763 -1.19421 -1.593315 \" transform=\"matrix(0.449,0.898,0.898,-0.449,73.28731,111.75544)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 11.116437 -119.500438 L 3.514875 -134.707469 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.197377 1.594584 C -1.094293 0.995393 -0.000697564 0.101 0.298028 0.00143404 C -0.000692174 -0.0998953 -1.094239 -0.996094 -1.197291 -1.593543 \" transform=\"matrix(-0.44724,0.89442,0.89442,0.44724,37.79607,140.10389)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 17.229719 -119.500438 L 24.741437 -134.519969 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194548 1.595317 C -1.093641 0.996768 0.000779008 0.0971884 0.300051 -0.000254787 C -0.000964427 -0.0976873 -1.093677 -0.995488 -1.196345 -1.592294 \" transform=\"matrix(0.44902,0.898,0.898,-0.44902,59.02175,139.91794)\"/>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-1\" x=\"31.667\" y=\"7.475\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-2\" x=\"17.494\" y=\"35.891\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-3\" x=\"45.84\" y=\"36.389\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-4\" x=\"31.667\" y=\"64.686\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-5\" x=\"3.321\" y=\"93.48\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-6\" x=\"31.667\" y=\"92.584\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-1-1\" x=\"59.859\" y=\"65.797\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-3\" x=\"60.013\" y=\"93.082\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-4\" x=\"45.84\" y=\"121.379\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-7\" x=\"31.667\" y=\"150.228\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-8\" x=\"60.013\" y=\"148.141\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-9\" x=\"74.187\" y=\"121.882\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949167-0-7\" x=\"88.36\" y=\"93.535\"/>\n",
"</g>\n",
"</g>\n",
"</svg>\n",
"\n"
],
"text/plain": [
"TikzPictures.TikzPicture(\"\\\\graph [layered layout, ] {\\n1/\\\"\\\\texttt{=}\\\",\\n2/\\\"\\\\texttt{z}\\\",\\n3/\\\"\\\\texttt{+}\\\",\\n4/\\\"\\\\texttt{*}\\\",\\n5/\\\"\\\\texttt{3}\\\",\\n6/\\\"\\\\texttt{x}\\\",\\n7/\\\"\\\\textasciicircum\\\",\\n8/\\\"\\\\texttt{+}\\\",\\n9/\\\"\\\\texttt{*}\\\",\\n10/\\\"\\\\texttt{2}\\\",\\n11/\\\"\\\\texttt{y}\\\",\\n12/\\\"\\\\texttt{1}\\\",\\n13/\\\"\\\\texttt{2}\\\",\\n;\\n1 -> 2;\\n1 -> 3;\\n3 -> 4;\\n3 -> 7;\\n4 -> 5;\\n4 -> 6;\\n7 -> 8;\\n7 -> 13;\\n8 -> 9;\\n8 -> 12;\\n9 -> 10;\\n9 -> 11;\\n};\\n\",\"\",\"\\\\usepackage{fontspec}\\n\\\\setmainfont{Latin Modern Math}\\n\\\\usetikzlibrary{graphs}\\n\\\\usetikzlibrary{graphdrawing}\\n\\n\\\\usegdlibrary{layered}\",true,true)"
]
},
"execution_count": 114,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"t = @tree z = 3x + (2y+1)^2"
]
},
{
"cell_type": "code",
"execution_count": 115,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/svg+xml": [
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"153.604pt\" height=\"153.733pt\" viewBox=\"0 0 153.604 153.733\" version=\"1.1\">\n",
"<defs>\n",
"<g>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-0\">\n",
"<path style=\"stroke:none;\" d=\"\"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-1\">\n",
"<path style=\"stroke:none;\" d=\"M 4.84375 -3.8125 C 4.84375 -4.15625 4.46875 -4.15625 4.34375 -4.15625 L 0.890625 -4.15625 C 0.75 -4.15625 0.375 -4.15625 0.375 -3.8125 C 0.375 -3.453125 0.703125 -3.453125 0.828125 -3.453125 L 4.390625 -3.453125 C 4.515625 -3.453125 4.84375 -3.453125 4.84375 -3.8125 Z M 4.84375 -2.296875 C 4.84375 -2.640625 4.515625 -2.640625 4.390625 -2.640625 L 0.828125 -2.640625 C 0.703125 -2.640625 0.375 -2.640625 0.375 -2.296875 C 0.375 -1.9375 0.75 -1.9375 0.890625 -1.9375 L 4.34375 -1.9375 C 4.46875 -1.9375 4.84375 -1.9375 4.84375 -2.296875 Z M 4.84375 -2.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-2\">\n",
"<path style=\"stroke:none;\" d=\"M 4.734375 -0.40625 L 4.734375 -0.984375 C 4.734375 -1.171875 4.734375 -1.390625 4.390625 -1.390625 C 4.046875 -1.390625 4.046875 -1.1875 4.046875 -0.984375 L 4.046875 -0.609375 L 1.359375 -0.609375 L 4.46875 -3.5625 C 4.6875 -3.765625 4.6875 -3.78125 4.6875 -3.953125 C 4.6875 -4.296875 4.46875 -4.296875 4.28125 -4.296875 L 0.890625 -4.296875 C 0.5625 -4.296875 0.484375 -4.21875 0.484375 -3.890625 L 0.484375 -3.421875 C 0.484375 -3.234375 0.484375 -3.015625 0.828125 -3.015625 C 1.171875 -3.015625 1.171875 -3.234375 1.171875 -3.421875 L 1.171875 -3.6875 L 3.65625 -3.6875 L 0.546875 -0.734375 C 0.34375 -0.53125 0.328125 -0.515625 0.328125 -0.34375 C 0.328125 0 0.546875 0 0.734375 0 L 4.515625 0 C 4.734375 -0.0625 4.734375 -0.265625 4.734375 -0.40625 Z M 4.734375 -0.40625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-3\">\n",
"<path style=\"stroke:none;\" d=\"M 4.640625 -1.09375 C 4.640625 -1.359375 4.359375 -1.359375 4.296875 -1.359375 C 4.140625 -1.359375 4.03125 -1.34375 3.96875 -1.140625 C 3.90625 -1.015625 3.71875 -0.546875 2.984375 -0.546875 C 2.140625 -0.546875 1.421875 -1.25 1.421875 -2.15625 C 1.421875 -2.625 1.6875 -3.78125 3.046875 -3.78125 C 3.25 -3.78125 3.640625 -3.78125 3.640625 -3.6875 C 3.65625 -3.34375 3.84375 -3.203125 4.078125 -3.203125 C 4.3125 -3.203125 4.53125 -3.375 4.53125 -3.65625 C 4.53125 -4.390625 3.484375 -4.390625 3.046875 -4.390625 C 1.328125 -4.390625 0.734375 -3.03125 0.734375 -2.15625 C 0.734375 -0.953125 1.671875 0.0625 2.921875 0.0625 C 4.3125 0.0625 4.640625 -0.921875 4.640625 -1.09375 Z M 4.640625 -1.09375 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-4\">\n",
"<path style=\"stroke:none;\" d=\"M 5.171875 -0.3125 C 5.171875 -0.609375 4.921875 -0.609375 4.78125 -0.609375 C 4.359375 -0.609375 4.25 -0.65625 4.171875 -0.6875 L 4.171875 -2.84375 C 4.171875 -3.546875 3.640625 -4.390625 2.203125 -4.390625 C 1.78125 -4.390625 0.75 -4.390625 0.75 -3.65625 C 0.75 -3.359375 0.96875 -3.203125 1.203125 -3.203125 C 1.359375 -3.203125 1.640625 -3.296875 1.640625 -3.65625 C 1.640625 -3.734375 1.65625 -3.75 1.859375 -3.765625 C 2 -3.78125 2.125 -3.78125 2.21875 -3.78125 C 2.96875 -3.78125 3.484375 -3.46875 3.484375 -2.765625 C 1.71875 -2.734375 0.5 -2.234375 0.5 -1.28125 C 0.5 -0.59375 1.125 0.0625 2.140625 0.0625 C 2.515625 0.0625 3.125 -0.015625 3.59375 -0.3125 C 3.8125 -0.015625 4.296875 0 4.671875 0 C 4.953125 0 5.171875 0 5.171875 -0.3125 Z M 3.484375 -1.328125 C 3.484375 -1.109375 3.484375 -0.890625 3.09375 -0.71875 C 2.734375 -0.546875 2.296875 -0.546875 2.21875 -0.546875 C 1.59375 -0.546875 1.1875 -0.890625 1.1875 -1.28125 C 1.1875 -1.765625 2.046875 -2.140625 3.484375 -2.171875 Z M 3.484375 -1.328125 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-5\">\n",
"<path style=\"stroke:none;\" d=\"M 4.65625 -0.296875 C 4.65625 -0.609375 4.421875 -0.609375 4.25 -0.609375 L 2.953125 -0.609375 L 2.953125 -5.6875 C 2.953125 -5.984375 2.90625 -6.09375 2.5625 -6.09375 L 0.984375 -6.09375 C 0.828125 -6.09375 0.578125 -6.09375 0.578125 -5.78125 C 0.578125 -5.484375 0.84375 -5.484375 0.984375 -5.484375 L 2.265625 -5.484375 L 2.265625 -0.609375 L 0.984375 -0.609375 C 0.828125 -0.609375 0.578125 -0.609375 0.578125 -0.296875 C 0.578125 0 0.84375 0 0.984375 0 L 4.25 0 C 4.40625 0 4.65625 0 4.65625 -0.296875 Z M 4.65625 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-6\">\n",
"<path style=\"stroke:none;\" d=\"M 4.84375 -3.046875 C 4.84375 -3.40625 4.5 -3.40625 4.375 -3.40625 L 2.953125 -3.40625 L 2.953125 -4.828125 C 2.953125 -4.9375 2.953125 -5.296875 2.609375 -5.296875 C 2.265625 -5.296875 2.265625 -4.9375 2.265625 -4.828125 L 2.265625 -3.40625 L 0.84375 -3.40625 C 0.734375 -3.40625 0.375 -3.40625 0.375 -3.046875 C 0.375 -2.703125 0.734375 -2.703125 0.84375 -2.703125 L 2.265625 -2.703125 L 2.265625 -1.28125 C 2.265625 -1.15625 2.265625 -0.8125 2.609375 -0.8125 C 2.953125 -0.8125 2.953125 -1.15625 2.953125 -1.28125 L 2.953125 -2.703125 L 4.375 -2.703125 C 4.5 -2.703125 4.84375 -2.703125 4.84375 -3.046875 Z M 4.84375 -3.046875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-7\">\n",
"<path style=\"stroke:none;\" d=\"M 4.546875 -2.140625 C 4.546875 -2.296875 4.421875 -2.390625 4.40625 -2.40625 C 4.15625 -2.578125 3.484375 -2.90625 3.21875 -3.046875 L 4.296875 -3.625 C 4.421875 -3.703125 4.546875 -3.765625 4.546875 -3.953125 C 4.546875 -4 4.546875 -4.28125 4.140625 -4.28125 L 2.90625 -3.5625 C 2.9375 -3.828125 2.9375 -4.484375 2.9375 -4.78125 C 2.9375 -4.859375 2.9375 -5.1875 2.609375 -5.1875 C 2.28125 -5.1875 2.28125 -4.859375 2.28125 -4.78125 C 2.28125 -4.484375 2.296875 -3.828125 2.3125 -3.5625 L 1.234375 -4.203125 C 1.09375 -4.28125 1.078125 -4.28125 1 -4.28125 C 0.8125 -4.28125 0.671875 -4.109375 0.671875 -3.953125 C 0.671875 -3.765625 0.78125 -3.703125 0.921875 -3.640625 L 2 -3.046875 L 0.921875 -2.46875 C 0.8125 -2.390625 0.671875 -2.328125 0.671875 -2.140625 C 0.671875 -2.09375 0.671875 -1.796875 1.078125 -1.796875 L 2.3125 -2.515625 C 2.296875 -2.265625 2.28125 -1.609375 2.28125 -1.3125 C 2.28125 -1.21875 2.28125 -0.890625 2.609375 -0.890625 C 2.9375 -0.890625 2.9375 -1.21875 2.9375 -1.3125 C 2.9375 -1.609375 2.9375 -2.265625 2.90625 -2.515625 C 3.515625 -2.1875 3.15625 -2.375 3.84375 -1.96875 C 4.109375 -1.796875 4.140625 -1.796875 4.21875 -1.796875 C 4.421875 -1.796875 4.546875 -1.984375 4.546875 -2.140625 Z M 4.546875 -2.140625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-8\">\n",
"<path style=\"stroke:none;\" d=\"M 4.78125 -1.734375 C 4.78125 -2.4375 4.3125 -3.03125 3.65625 -3.328125 C 4.21875 -3.6875 4.5 -4.25 4.5 -4.796875 C 4.5 -5.53125 3.765625 -6.203125 2.625 -6.203125 C 1.421875 -6.203125 0.734375 -5.71875 0.734375 -5.03125 C 0.734375 -4.703125 0.984375 -4.5625 1.171875 -4.5625 C 1.390625 -4.5625 1.609375 -4.734375 1.609375 -5.015625 C 1.609375 -5.15625 1.5625 -5.25 1.53125 -5.28125 C 1.828125 -5.59375 2.546875 -5.59375 2.625 -5.59375 C 3.3125 -5.59375 3.8125 -5.234375 3.8125 -4.78125 C 3.8125 -4.484375 3.65625 -4.140625 3.390625 -3.921875 C 3.078125 -3.65625 2.828125 -3.640625 2.46875 -3.625 C 1.890625 -3.578125 1.75 -3.578125 1.75 -3.296875 C 1.75 -2.984375 1.984375 -2.984375 2.140625 -2.984375 L 2.609375 -2.984375 C 3.59375 -2.984375 4.09375 -2.3125 4.09375 -1.734375 C 4.09375 -1.125 3.53125 -0.5 2.625 -0.5 C 2.234375 -0.5 1.46875 -0.609375 1.203125 -1.078125 C 1.25 -1.125 1.328125 -1.1875 1.328125 -1.390625 C 1.328125 -1.625 1.140625 -1.828125 0.890625 -1.828125 C 0.65625 -1.828125 0.4375 -1.671875 0.4375 -1.359375 C 0.4375 -0.46875 1.40625 0.109375 2.625 0.109375 C 3.9375 0.109375 4.78125 -0.8125 4.78125 -1.734375 Z M 4.78125 -1.734375 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-9\">\n",
"<path style=\"stroke:none;\" d=\"M 4.9375 -0.296875 C 4.9375 -0.609375 4.6875 -0.609375 4.53125 -0.609375 L 4.140625 -0.609375 L 2.859375 -2.21875 L 4 -3.6875 L 4.390625 -3.6875 C 4.53125 -3.6875 4.8125 -3.6875 4.8125 -3.984375 C 4.8125 -4.296875 4.546875 -4.296875 4.390625 -4.296875 L 3.234375 -4.296875 C 3.078125 -4.296875 2.828125 -4.296875 2.828125 -4 C 2.828125 -3.6875 3.046875 -3.6875 3.3125 -3.6875 L 2.578125 -2.6875 L 1.828125 -3.6875 C 2.078125 -3.6875 2.296875 -3.6875 2.296875 -4 C 2.296875 -4.296875 2.046875 -4.296875 1.90625 -4.296875 L 0.734375 -4.296875 C 0.59375 -4.296875 0.328125 -4.296875 0.328125 -3.984375 C 0.328125 -3.6875 0.59375 -3.6875 0.734375 -3.6875 L 1.140625 -3.6875 L 2.3125 -2.21875 L 1.078125 -0.609375 L 0.671875 -0.609375 C 0.53125 -0.609375 0.265625 -0.609375 0.265625 -0.296875 C 0.265625 0 0.53125 0 0.671875 0 L 1.84375 0 C 2 0 2.25 0 2.25 -0.296875 C 2.25 -0.609375 2.03125 -0.609375 1.71875 -0.609375 L 2.578125 -1.828125 L 3.46875 -0.609375 C 3.1875 -0.609375 2.96875 -0.609375 2.96875 -0.296875 C 2.96875 0 3.21875 0 3.375 0 L 4.53125 0 C 4.671875 0 4.9375 0 4.9375 -0.296875 Z M 4.9375 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-10\">\n",
"<path style=\"stroke:none;\" d=\"M 4.703125 -0.40625 L 4.703125 -0.671875 C 4.703125 -0.859375 4.703125 -1.078125 4.359375 -1.078125 C 4.015625 -1.078125 4.015625 -0.890625 4.015625 -0.609375 L 1.640625 -0.609375 C 2.234375 -1.109375 3.1875 -1.859375 3.625 -2.265625 C 4.25 -2.828125 4.703125 -3.453125 4.703125 -4.25 C 4.703125 -5.453125 3.703125 -6.203125 2.484375 -6.203125 C 1.3125 -6.203125 0.515625 -5.390625 0.515625 -4.53125 C 0.515625 -4.171875 0.796875 -4.0625 0.96875 -4.0625 C 1.171875 -4.0625 1.40625 -4.234375 1.40625 -4.5 C 1.40625 -4.625 1.359375 -4.75 1.265625 -4.828125 C 1.421875 -5.28125 1.890625 -5.59375 2.4375 -5.59375 C 3.25 -5.59375 4.015625 -5.140625 4.015625 -4.25 C 4.015625 -3.5625 3.53125 -2.984375 2.875 -2.4375 L 0.671875 -0.578125 C 0.578125 -0.5 0.515625 -0.453125 0.515625 -0.3125 C 0.515625 0 0.765625 0 0.921875 0 L 4.3125 0 C 4.640625 0 4.703125 -0.09375 4.703125 -0.40625 Z M 4.703125 -0.40625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-11\">\n",
"<path style=\"stroke:none;\" d=\"M 4.984375 -3.984375 C 4.984375 -4.296875 4.75 -4.296875 4.578125 -4.296875 L 3.421875 -4.296875 C 3.265625 -4.296875 3.015625 -4.296875 3.015625 -4 C 3.015625 -3.6875 3.265625 -3.6875 3.421875 -3.6875 L 3.703125 -3.6875 L 2.984375 -1.5625 C 2.84375 -1.203125 2.796875 -1.015625 2.71875 -0.703125 C 2.65625 -0.890625 2.578125 -1.109375 2.5 -1.296875 L 1.578125 -3.6875 L 1.828125 -3.6875 C 1.96875 -3.6875 2.21875 -3.6875 2.21875 -3.984375 C 2.21875 -4.296875 1.984375 -4.296875 1.828125 -4.296875 L 0.65625 -4.296875 C 0.5 -4.296875 0.265625 -4.296875 0.265625 -3.984375 C 0.265625 -3.6875 0.515625 -3.6875 0.65625 -3.6875 L 0.96875 -3.6875 L 2.375 -0.125 C 2.421875 -0.03125 2.421875 0 2.421875 0 C 2.421875 0 2.171875 0.84375 2.046875 1.09375 C 1.75 1.640625 1.390625 1.65625 1.25 1.671875 C 1.25 1.671875 1.296875 1.578125 1.296875 1.453125 C 1.296875 1.203125 1.109375 1.015625 0.875 1.015625 C 0.59375 1.015625 0.421875 1.203125 0.421875 1.453125 C 0.421875 1.875 0.765625 2.265625 1.25 2.265625 C 2.25 2.265625 2.703125 0.953125 2.734375 0.84375 L 4.28125 -3.6875 L 4.578125 -3.6875 C 4.734375 -3.6875 4.984375 -3.6875 4.984375 -3.984375 Z M 4.984375 -3.984375 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-0-12\">\n",
"<path style=\"stroke:none;\" d=\"M 4.40625 -0.296875 C 4.40625 -0.609375 4.171875 -0.609375 4 -0.609375 L 3.09375 -0.609375 L 3.09375 -5.796875 C 3.09375 -5.953125 3.09375 -6.203125 2.796875 -6.203125 C 2.609375 -6.203125 2.546875 -6.078125 2.5 -5.96875 C 2.125 -5.109375 1.609375 -5 1.421875 -4.984375 C 1.25 -4.96875 1.046875 -4.953125 1.046875 -4.671875 C 1.046875 -4.421875 1.21875 -4.375 1.375 -4.375 C 1.5625 -4.375 1.96875 -4.4375 2.40625 -4.8125 L 2.40625 -0.609375 L 1.5 -0.609375 C 1.34375 -0.609375 1.109375 -0.609375 1.109375 -0.296875 C 1.109375 0 1.359375 0 1.5 0 L 4 0 C 4.15625 0 4.40625 0 4.40625 -0.296875 Z M 4.40625 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-1-0\">\n",
"<path style=\"stroke:none;\" d=\"\"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949168-1-1\">\n",
"<path style=\"stroke:none;\" d=\"M 5.59375 -5.828125 L 2.765625 -7.421875 L -0.046875 -5.828125 L 0.0625 -5.609375 L 2.765625 -6.828125 L 5.46875 -5.609375 Z M 5.59375 -5.828125 \"/>\n",
"</symbol>\n",
"</g>\n",
"</defs>\n",
"<g id=\"surface1\">\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -2.797625 -5.598094 L -11.133563 -22.269969 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193957 1.592705 C -1.096124 0.995254 -0.000787969 0.0973397 0.297939 -0.00223285 C 0.000960715 -0.0983169 -1.096106 -0.996251 -1.195676 -1.591956 \" transform=\"matrix(-0.44722,0.89442,0.89442,0.44722,23.14696,27.66811)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 2.800031 -5.598094 L 10.671125 -21.340281 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196832 1.594664 C -1.095896 0.996106 0.000328623 0.100035 0.297871 -0.000877351 C 0.000333971 -0.100065 -1.095843 -0.996195 -1.195007 -1.594758 \" transform=\"matrix(0.44897,0.898,0.898,-0.44897,44.95299,26.73993)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 7.581281 -34.941844 L -7.715594 -50.234813 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194885 1.592974 C -1.095433 0.996366 0.00114005 0.09872 0.299448 -0.000706579 C 0.00114567 -0.10015 -1.095376 -0.997858 -1.194795 -1.594471 \" transform=\"matrix(-0.70714,0.7071,0.7071,0.70714,26.56772,55.63251)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 14.175031 -34.941844 L 14.175031 -49.641063 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.19625 1.595391 C -1.094687 0.997735 -0.0009375 0.0992975 0.299844 0.00164125 C -0.0009375 -0.0999213 -1.094687 -0.994453 -1.19625 -1.592109 \" transform=\"matrix(0,1,1,0,48.45539,55.04)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 27.358625 -34.941844 L 57.268781 -49.894969 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196558 1.594562 C -1.093493 0.995357 0.0000892284 0.100909 0.298817 0.00133004 C 0.0000874314 -0.0999904 -1.097005 -0.997913 -1.196587 -1.593622 \" transform=\"matrix(0.89442,0.4472,0.4472,-0.89442,91.55245,55.29334)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 4.284406 -63.285594 L -21.828875 -80.69575 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194706 1.592548 C -1.095335 0.997425 -0.000129119 0.0988043 0.297974 -0.00164146 C -0.000128032 -0.0977702 -1.095324 -0.996403 -1.194688 -1.594768 \" transform=\"matrix(-0.83461,0.5564,0.5564,0.83461,12.45273,86.09339)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 10.878156 -63.285594 L 3.542219 -77.957469 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195276 1.59561 C -1.095695 0.994665 -0.00210616 0.100244 0.296621 0.000671799 C 0.00138949 -0.0989061 -1.095677 -0.99684 -1.195247 -1.592546 \" transform=\"matrix(-0.44722,0.89442,0.89442,0.44722,37.82346,83.35549)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 17.471906 -63.285594 L 25.307844 -78.961375 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195983 1.594304 C -1.095047 0.995747 0.00117775 0.0996756 0.298721 -0.00123646 C 0.0011831 -0.100424 -1.094994 -0.996554 -1.194158 -1.595117 \" transform=\"matrix(0.44897,0.898,0.898,-0.44897,59.58965,84.3601)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 67.569562 -63.285594 L 60.510969 -77.402781 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196217 1.593679 C -1.094899 0.997968 0.000430225 0.100026 0.299158 0.00044678 C 0.000428428 -0.100874 -1.096664 -0.998796 -1.196246 -1.594505 \" transform=\"matrix(-0.4472,0.89442,0.89442,0.4472,94.79354,82.80254)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 74.163312 -63.285594 L 81.538312 -78.035594 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196583 1.593468 C -1.097001 0.997759 0.000091346 0.0998361 0.298821 -0.00148433 C 0.0000931429 -0.101063 -1.09349 -0.995511 -1.196554 -1.594716 \" transform=\"matrix(0.4472,0.89442,0.89442,-0.4472,115.82082,83.43519)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 80.757062 -63.285594 L 106.870344 -80.69575 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.197059 1.593188 C -1.094454 0.996983 0.000741911 0.0983502 0.298843 0.00222141 C 0.000740824 -0.0982244 -1.094465 -0.996845 -1.197076 -1.594129 \" transform=\"matrix(0.83461,0.5564,0.5564,-0.83461,141.15169,86.09339)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 78.448469 -91.63325 L 63.151594 -106.926219 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193723 1.594406 C -1.097067 0.995031 0.00221692 0.100085 0.300519 0.000641142 C -0.00055087 -0.101547 -1.094362 -0.996432 -1.193813 -1.593039 \" transform=\"matrix(-0.7071,0.70714,0.70714,0.7071,97.4347,112.3261)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 85.042219 -91.63325 L 85.042219 -106.336375 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194557 1.595569 C -1.096901 0.997912 0.000755 0.099475 0.29763 0.00181875 C 0.000755 -0.0997438 -1.096901 -0.998181 -1.194557 -1.595838 \" transform=\"matrix(0,1,1,0,119.3224,111.73362)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 91.632062 -91.63325 L 106.928937 -106.926219 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193935 1.592938 C -1.094516 0.996325 -0.000756374 0.101379 0.300308 -0.000826955 C 0.00200001 -0.100254 -1.097335 -0.995138 -1.194025 -1.594507 \" transform=\"matrix(0.70714,0.7071,0.7071,-0.70714,141.2101,112.32613)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 78.448469 -119.980906 L 63.132062 -135.293406 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193758 1.594902 C -1.097068 0.995532 -0.000495082 0.0978856 0.297813 -0.001541 C -0.000489458 -0.100984 -1.094249 -0.995931 -1.19643 -1.595306 \" transform=\"matrix(-0.70714,0.7071,0.7071,0.70714,97.41481,140.69285)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 85.042219 -119.980906 L 85.042219 -134.656688 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196125 1.595569 C -1.094562 0.997912 -0.0008125 0.099475 0.299969 0.00181875 C -0.0008125 -0.0997438 -1.094562 -0.998181 -1.196125 -1.595838 \" transform=\"matrix(0,1,1,0,119.3224,140.0555)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 91.632062 -119.980906 L 106.928937 -135.273875 \" transform=\"matrix(1,0,0,-1,34.282,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196084 1.595088 C -1.093904 0.995712 -0.000143872 0.100766 0.298158 0.00132267 C -0.000149497 -0.0981039 -1.096722 -0.99575 -1.196174 -1.592358 \" transform=\"matrix(0.70714,0.7071,0.7071,-0.70714,141.2101,140.67292)\"/>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-1\" x=\"31.667\" y=\"7.475\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-2\" x=\"17.494\" y=\"35.891\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-3\" x=\"37.995\" y=\"36.758\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-4\" x=\"43.225386\" y=\"36.758\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-5\" x=\"48.455772\" y=\"36.758\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-5\" x=\"53.686158\" y=\"36.758\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-6\" x=\"17.494\" y=\"64.736\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-3\" x=\"37.995\" y=\"65.104\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-4\" x=\"43.225386\" y=\"65.104\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-5\" x=\"48.455772\" y=\"65.104\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-5\" x=\"53.686158\" y=\"65.104\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-7\" x=\"3.321\" y=\"93.032\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-8\" x=\"31.667\" y=\"93.48\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-9\" x=\"60.013\" y=\"92.584\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-3\" x=\"94.687\" y=\"65.104\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-4\" x=\"99.917386\" y=\"65.104\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-5\" x=\"105.147772\" y=\"65.104\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-5\" x=\"110.378158\" y=\"65.104\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-1-1\" x=\"88.205\" y=\"94.143\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-3\" x=\"108.861\" y=\"93.451\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-4\" x=\"114.091386\" y=\"93.451\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-5\" x=\"119.321772\" y=\"93.451\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-5\" x=\"124.552158\" y=\"93.451\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-6\" x=\"88.36\" y=\"121.428\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-3\" x=\"108.861\" y=\"121.797\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-4\" x=\"114.091386\" y=\"121.797\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-5\" x=\"119.321772\" y=\"121.797\"/>\n",
" <use xlink:href=\"#glyph-1479829359949168-0-5\" x=\"124.552158\" y=\"121.797\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-7\" x=\"88.36\" y=\"149.725\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-10\" x=\"116.706\" y=\"150.228\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-11\" x=\"145.053\" y=\"148.141\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-12\" x=\"145.053\" y=\"121.882\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949168-0-10\" x=\"145.053\" y=\"93.535\"/>\n",
"</g>\n",
"</g>\n",
"</svg>\n",
"\n"
],
"text/plain": [
"TikzPictures.TikzPicture(\"\\\\graph [layered layout, ] {\\n1/\\\"\\\\texttt{=}\\\",\\n2/\\\"\\\\texttt{z}\\\",\\n3/\\\"\\\\texttt{call}\\\",\\n4/\\\"\\\\texttt{+}\\\",\\n5/\\\"\\\\texttt{call}\\\",\\n6/\\\"\\\\texttt{*}\\\",\\n7/\\\"\\\\texttt{3}\\\",\\n8/\\\"\\\\texttt{x}\\\",\\n9/\\\"\\\\texttt{call}\\\",\\n10/\\\"\\\\textasciicircum\\\",\\n11/\\\"\\\\texttt{call}\\\",\\n12/\\\"\\\\texttt{+}\\\",\\n13/\\\"\\\\texttt{call}\\\",\\n14/\\\"\\\\texttt{*}\\\",\\n15/\\\"\\\\texttt{2}\\\",\\n16/\\\"\\\\texttt{y}\\\",\\n17/\\\"\\\\texttt{1}\\\",\\n18/\\\"\\\\texttt{2}\\\",\\n;\\n1 -> 2;\\n1 -> 3;\\n3 -> 4;\\n3 -> 5;\\n3 -> 9;\\n5 -> 6;\\n5 -> 7;\\n5 -> 8;\\n9 -> 10;\\n9 -> 11;\\n9 -> 18;\\n11 -> 12;\\n11 -> 13;\\n11 -> 17;\\n13 -> 14;\\n13 -> 15;\\n13 -> 16;\\n};\\n\",\"\",\"\\\\usepackage{fontspec}\\n\\\\setmainfont{Latin Modern Math}\\n\\\\usetikzlibrary{graphs}\\n\\\\usetikzlibrary{graphdrawing}\\n\\n\\\\usegdlibrary{layered}\",true,true)"
]
},
"execution_count": 115,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"t = @tree_with_call z = 3x + (2y+1)^2"
]
},
{
"cell_type": "code",
"execution_count": 116,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/svg+xml": [
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"54.391pt\" height=\"125.387pt\" viewBox=\"0 0 54.391 125.387\" version=\"1.1\">\n",
"<defs>\n",
"<g>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949169-0-0\">\n",
"<path style=\"stroke:none;\" d=\"\"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949169-0-1\">\n",
"<path style=\"stroke:none;\" d=\"M 4.84375 -3.8125 C 4.84375 -4.15625 4.46875 -4.15625 4.34375 -4.15625 L 0.890625 -4.15625 C 0.75 -4.15625 0.375 -4.15625 0.375 -3.8125 C 0.375 -3.453125 0.703125 -3.453125 0.828125 -3.453125 L 4.390625 -3.453125 C 4.515625 -3.453125 4.84375 -3.453125 4.84375 -3.8125 Z M 4.84375 -2.296875 C 4.84375 -2.640625 4.515625 -2.640625 4.390625 -2.640625 L 0.828125 -2.640625 C 0.703125 -2.640625 0.375 -2.640625 0.375 -2.296875 C 0.375 -1.9375 0.75 -1.9375 0.890625 -1.9375 L 4.34375 -1.9375 C 4.46875 -1.9375 4.84375 -1.9375 4.84375 -2.296875 Z M 4.84375 -2.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949169-0-2\">\n",
"<path style=\"stroke:none;\" d=\"M 4.734375 -0.40625 L 4.734375 -0.984375 C 4.734375 -1.171875 4.734375 -1.390625 4.390625 -1.390625 C 4.046875 -1.390625 4.046875 -1.1875 4.046875 -0.984375 L 4.046875 -0.609375 L 1.359375 -0.609375 L 4.46875 -3.5625 C 4.6875 -3.765625 4.6875 -3.78125 4.6875 -3.953125 C 4.6875 -4.296875 4.46875 -4.296875 4.28125 -4.296875 L 0.890625 -4.296875 C 0.5625 -4.296875 0.484375 -4.21875 0.484375 -3.890625 L 0.484375 -3.421875 C 0.484375 -3.234375 0.484375 -3.015625 0.828125 -3.015625 C 1.171875 -3.015625 1.171875 -3.234375 1.171875 -3.421875 L 1.171875 -3.6875 L 3.65625 -3.6875 L 0.546875 -0.734375 C 0.34375 -0.53125 0.328125 -0.515625 0.328125 -0.34375 C 0.328125 0 0.546875 0 0.734375 0 L 4.515625 0 C 4.734375 -0.0625 4.734375 -0.265625 4.734375 -0.40625 Z M 4.734375 -0.40625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949169-0-3\">\n",
"<path style=\"stroke:none;\" d=\"M 4.359375 -5.546875 C 4.359375 -6.15625 3.5625 -6.15625 3.40625 -6.15625 C 2.609375 -6.15625 1.828125 -5.6875 1.828125 -4.828125 L 1.828125 -4.296875 L 0.84375 -4.296875 C 0.671875 -4.296875 0.421875 -4.296875 0.421875 -3.984375 C 0.421875 -3.6875 0.671875 -3.6875 0.828125 -3.6875 L 1.828125 -3.6875 L 1.828125 -0.609375 L 0.828125 -0.609375 C 0.671875 -0.609375 0.421875 -0.609375 0.421875 -0.3125 C 0.421875 0 0.671875 0 0.828125 0 L 3.53125 0 C 3.671875 0 3.9375 0 3.9375 -0.296875 C 3.9375 -0.609375 3.671875 -0.609375 3.53125 -0.609375 L 2.515625 -0.609375 L 2.515625 -3.6875 L 3.734375 -3.6875 C 3.890625 -3.6875 4.140625 -3.6875 4.140625 -3.984375 C 4.140625 -4.296875 3.890625 -4.296875 3.734375 -4.296875 L 2.515625 -4.296875 L 2.515625 -4.765625 C 2.515625 -5.546875 3.1875 -5.546875 3.484375 -5.546875 C 3.484375 -5.5 3.578125 -5.109375 3.921875 -5.109375 C 4.125 -5.109375 4.359375 -5.28125 4.359375 -5.546875 Z M 4.359375 -5.546875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949169-0-4\">\n",
"<path style=\"stroke:none;\" d=\"M 5.078125 -3.875 C 5.078125 -4.09375 4.890625 -4.40625 4.34375 -4.40625 C 4.234375 -4.40625 3.75 -4.390625 3.296875 -4.0625 C 3.125 -4.171875 2.78125 -4.359375 2.328125 -4.359375 C 1.390625 -4.359375 0.671875 -3.609375 0.671875 -2.765625 C 0.671875 -2.328125 0.84375 -2 1 -1.8125 C 0.890625 -1.65625 0.796875 -1.4375 0.796875 -1.140625 C 0.796875 -0.78125 0.9375 -0.53125 1.03125 -0.421875 C 0.296875 0.03125 0.296875 0.703125 0.296875 0.8125 C 0.296875 1.671875 1.328125 2.28125 2.609375 2.28125 C 3.890625 2.28125 4.9375 1.671875 4.9375 0.8125 C 4.9375 0.453125 4.75 -0.046875 4.25 -0.3125 C 4.109375 -0.390625 3.703125 -0.609375 2.796875 -0.609375 L 2.109375 -0.609375 C 2.03125 -0.609375 1.890625 -0.609375 1.8125 -0.625 C 1.671875 -0.625 1.609375 -0.625 1.484375 -0.765625 C 1.375 -0.90625 1.359375 -1.125 1.359375 -1.125 C 1.359375 -1.171875 1.390625 -1.3125 1.421875 -1.40625 C 1.453125 -1.390625 1.828125 -1.15625 2.328125 -1.15625 C 3.234375 -1.15625 3.96875 -1.875 3.96875 -2.765625 C 3.96875 -3.0625 3.875 -3.34375 3.703125 -3.625 C 3.921875 -3.75 4.15625 -3.78125 4.28125 -3.796875 C 4.34375 -3.53125 4.578125 -3.453125 4.671875 -3.453125 C 4.84375 -3.453125 5.078125 -3.578125 5.078125 -3.875 Z M 3.28125 -2.765625 C 3.28125 -2.1875 2.84375 -1.75 2.328125 -1.75 C 1.78125 -1.75 1.359375 -2.21875 1.359375 -2.75 C 1.359375 -3.3125 1.796875 -3.765625 2.328125 -3.765625 C 2.859375 -3.765625 3.28125 -3.296875 3.28125 -2.765625 Z M 4.359375 0.8125 C 4.359375 1.25 3.609375 1.6875 2.609375 1.6875 C 1.609375 1.6875 0.875 1.25 0.875 0.8125 C 0.875 0.640625 0.953125 0.3125 1.28125 0.125 C 1.53125 -0.046875 1.609375 -0.046875 2.34375 -0.046875 C 3.234375 -0.046875 4.359375 -0.046875 4.359375 0.8125 Z M 4.359375 0.8125 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949169-0-5\">\n",
"<path style=\"stroke:none;\" d=\"M 4.9375 -0.296875 C 4.9375 -0.609375 4.6875 -0.609375 4.53125 -0.609375 L 4.140625 -0.609375 L 2.859375 -2.21875 L 4 -3.6875 L 4.390625 -3.6875 C 4.53125 -3.6875 4.8125 -3.6875 4.8125 -3.984375 C 4.8125 -4.296875 4.546875 -4.296875 4.390625 -4.296875 L 3.234375 -4.296875 C 3.078125 -4.296875 2.828125 -4.296875 2.828125 -4 C 2.828125 -3.6875 3.046875 -3.6875 3.3125 -3.6875 L 2.578125 -2.6875 L 1.828125 -3.6875 C 2.078125 -3.6875 2.296875 -3.6875 2.296875 -4 C 2.296875 -4.296875 2.046875 -4.296875 1.90625 -4.296875 L 0.734375 -4.296875 C 0.59375 -4.296875 0.328125 -4.296875 0.328125 -3.984375 C 0.328125 -3.6875 0.59375 -3.6875 0.734375 -3.6875 L 1.140625 -3.6875 L 2.3125 -2.21875 L 1.078125 -0.609375 L 0.671875 -0.609375 C 0.53125 -0.609375 0.265625 -0.609375 0.265625 -0.296875 C 0.265625 0 0.53125 0 0.671875 0 L 1.84375 0 C 2 0 2.25 0 2.25 -0.296875 C 2.25 -0.609375 2.03125 -0.609375 1.71875 -0.609375 L 2.578125 -1.828125 L 3.46875 -0.609375 C 3.1875 -0.609375 2.96875 -0.609375 2.96875 -0.296875 C 2.96875 0 3.21875 0 3.375 0 L 4.53125 0 C 4.671875 0 4.9375 0 4.9375 -0.296875 Z M 4.9375 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949169-0-6\">\n",
"<path style=\"stroke:none;\" d=\"M 4.984375 -3.984375 C 4.984375 -4.296875 4.75 -4.296875 4.578125 -4.296875 L 3.421875 -4.296875 C 3.265625 -4.296875 3.015625 -4.296875 3.015625 -4 C 3.015625 -3.6875 3.265625 -3.6875 3.421875 -3.6875 L 3.703125 -3.6875 L 2.984375 -1.5625 C 2.84375 -1.203125 2.796875 -1.015625 2.71875 -0.703125 C 2.65625 -0.890625 2.578125 -1.109375 2.5 -1.296875 L 1.578125 -3.6875 L 1.828125 -3.6875 C 1.96875 -3.6875 2.21875 -3.6875 2.21875 -3.984375 C 2.21875 -4.296875 1.984375 -4.296875 1.828125 -4.296875 L 0.65625 -4.296875 C 0.5 -4.296875 0.265625 -4.296875 0.265625 -3.984375 C 0.265625 -3.6875 0.515625 -3.6875 0.65625 -3.6875 L 0.96875 -3.6875 L 2.375 -0.125 C 2.421875 -0.03125 2.421875 0 2.421875 0 C 2.421875 0 2.171875 0.84375 2.046875 1.09375 C 1.75 1.640625 1.390625 1.65625 1.25 1.671875 C 1.25 1.671875 1.296875 1.578125 1.296875 1.453125 C 1.296875 1.203125 1.109375 1.015625 0.875 1.015625 C 0.59375 1.015625 0.421875 1.203125 0.421875 1.453125 C 0.421875 1.875 0.765625 2.265625 1.25 2.265625 C 2.25 2.265625 2.703125 0.953125 2.734375 0.84375 L 4.28125 -3.6875 L 4.578125 -3.6875 C 4.734375 -3.6875 4.984375 -3.6875 4.984375 -3.984375 Z M 4.984375 -3.984375 \"/>\n",
"</symbol>\n",
"</g>\n",
"</defs>\n",
"<g id=\"surface1\">\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -2.800406 -5.598094 L -11.136344 -22.269969 \" transform=\"matrix(1,0,0,-1,20.109,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194461 1.593711 C -1.096627 0.99626 -0.0012911 0.098346 0.297436 -0.00122662 C 0.000457589 -0.0973107 -1.096609 -0.995245 -1.194432 -1.594444 \" transform=\"matrix(-0.44722,0.89442,0.89442,0.44722,8.97396,27.66811)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 2.79725 -5.598094 L 10.67225 -21.340281 \" transform=\"matrix(1,0,0,-1,20.109,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196331 1.595666 C -1.095395 0.997108 0.000829716 0.101037 0.298373 0.000124902 C 0.000835064 -0.0990631 -1.095342 -0.995193 -1.194506 -1.593756 \" transform=\"matrix(0.44897,0.898,0.898,-0.44897,30.77999,26.73993)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 14.17225 -34.941844 L 14.17225 -49.371531 \" transform=\"matrix(1,0,0,-1,20.109,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196771 1.59261 C -1.095209 0.994954 -0.00145875 0.100423 0.299323 -0.00114 C -0.00145875 -0.0987962 -1.095209 -0.997234 -1.196771 -1.59489 \" transform=\"matrix(0,1,1,0,34.28239,54.77099)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 14.17225 -63.555125 L 14.17225 -77.988719 \" transform=\"matrix(1,0,0,-1,20.109,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195394 1.59261 C -1.097737 0.994954 -0.00008125 0.100423 0.3007 -0.00114 C -0.00008125 -0.0987962 -1.097737 -0.997234 -1.195394 -1.59489 \" transform=\"matrix(0,1,1,0,34.28239,83.3868)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 10.875375 -91.63325 L 3.039437 -107.309031 \" transform=\"matrix(1,0,0,-1,20.109,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.197085 1.594223 C -1.094441 0.9974 -0.00174402 0.0995303 0.299274 0.00208223 C 0.00173068 -0.0988299 -1.094494 -0.994901 -1.19543 -1.593459 \" transform=\"matrix(-0.44897,0.898,0.898,0.44897,23.14812,112.70688)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 17.469125 -91.63325 L 24.738656 -106.172313 \" transform=\"matrix(1,0,0,-1,20.109,5.398)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.19658 1.593209 C -1.095661 0.994657 0.000524499 0.0985685 0.299801 0.00112973 C 0.000524499 -0.101529 -1.095661 -0.997617 -1.19484 -1.59617 \" transform=\"matrix(0.449,0.898,0.898,-0.449,44.84875,111.57113)\"/>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949169-0-1\" x=\"17.494\" y=\"7.475\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949169-0-2\" x=\"3.321\" y=\"35.891\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949169-0-3\" x=\"31.667\" y=\"36.818\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949169-0-4\" x=\"31.667\" y=\"63.152\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949169-0-3\" x=\"31.667\" y=\"93.511\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949169-0-5\" x=\"17.494\" y=\"120.931\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949169-0-6\" x=\"45.84\" y=\"119.795\"/>\n",
"</g>\n",
"</g>\n",
"</svg>\n",
"\n"
],
"text/plain": [
"TikzPictures.TikzPicture(\"\\\\graph [layered layout, ] {\\n1/\\\"\\\\texttt{=}\\\",\\n2/\\\"\\\\texttt{z}\\\",\\n3/\\\"\\\\texttt{f}\\\",\\n4/\\\"\\\\texttt{g}\\\",\\n5/\\\"\\\\texttt{f}\\\",\\n6/\\\"\\\\texttt{x}\\\",\\n7/\\\"\\\\texttt{y}\\\",\\n;\\n1 -> 2;\\n1 -> 3;\\n3 -> 4;\\n4 -> 5;\\n5 -> 6;\\n5 -> 7;\\n};\\n\",\"\",\"\\\\usepackage{fontspec}\\n\\\\setmainfont{Latin Modern Math}\\n\\\\usetikzlibrary{graphs}\\n\\\\usetikzlibrary{graphdrawing}\\n\\n\\\\usegdlibrary{layered}\",true,true)"
]
},
"execution_count": 116,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"t = @tree z = f(g(f(x, y)))"
]
},
{
"cell_type": "code",
"execution_count": 112,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"true"
]
},
"execution_count": 112,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"t.data == \"\\\\graph [layered layout, ] {\\n1/\\\"\\\\texttt{=}\\\",\\n2/\\\"\\\\texttt{z}\\\",\\n3/\\\"\\\\texttt{f}\\\",\\n4/\\\"\\\\texttt{g}\\\",\\n5/\\\"\\\\texttt{f}\\\",\\n6/\\\"\\\\texttt{x}\\\",\\n7/\\\"\\\\texttt{y}\\\",\\n;\\n1 -> 2;\\n1 -> 3;\\n3 -> 4;\\n4 -> 5;\\n5 -> 6;\\n5 -> 7;\\n};\\n\""
]
},
{
"cell_type": "code",
"execution_count": 117,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/svg+xml": [
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"111.084pt\" height=\"154.545pt\" viewBox=\"0 0 111.084 154.545\" version=\"1.1\">\n",
"<defs>\n",
"<g>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-0\">\n",
"<path style=\"stroke:none;\" d=\"\"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-1\">\n",
"<path style=\"stroke:none;\" d=\"M 4.859375 -2.15625 C 4.859375 -3.375 3.984375 -4.359375 2.921875 -4.359375 C 2.4375 -4.359375 2 -4.171875 1.65625 -3.875 L 1.65625 -5.6875 C 1.65625 -5.984375 1.59375 -6.09375 1.25 -6.09375 L 0.53125 -6.09375 C 0.375 -6.09375 0.125 -6.09375 0.125 -5.78125 C 0.125 -5.484375 0.375 -5.484375 0.515625 -5.484375 L 0.96875 -5.484375 L 0.96875 -0.40625 C 0.96875 -0.203125 0.96875 0 1.3125 0 C 1.65625 0 1.65625 -0.203125 1.65625 -0.453125 C 2.0625 -0.03125 2.5 0.0625 2.8125 0.0625 C 3.890625 0.0625 4.859375 -0.890625 4.859375 -2.15625 Z M 4.171875 -2.15625 C 4.171875 -1.203125 3.484375 -0.546875 2.78125 -0.546875 C 2 -0.546875 1.65625 -1.421875 1.65625 -1.90625 L 1.65625 -2.625 C 1.65625 -3.21875 2.234375 -3.75 2.859375 -3.75 C 3.59375 -3.75 4.171875 -3.015625 4.171875 -2.15625 Z M 4.171875 -2.15625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-2\">\n",
"<path style=\"stroke:none;\" d=\"M 4.65625 -0.296875 C 4.65625 -0.609375 4.421875 -0.609375 4.25 -0.609375 L 2.953125 -0.609375 L 2.953125 -5.6875 C 2.953125 -5.984375 2.90625 -6.09375 2.5625 -6.09375 L 0.984375 -6.09375 C 0.828125 -6.09375 0.578125 -6.09375 0.578125 -5.78125 C 0.578125 -5.484375 0.84375 -5.484375 0.984375 -5.484375 L 2.265625 -5.484375 L 2.265625 -0.609375 L 0.984375 -0.609375 C 0.828125 -0.609375 0.578125 -0.609375 0.578125 -0.296875 C 0.578125 0 0.84375 0 0.984375 0 L 4.25 0 C 4.40625 0 4.65625 0 4.65625 -0.296875 Z M 4.65625 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-3\">\n",
"<path style=\"stroke:none;\" d=\"M 4.65625 -2.15625 C 4.65625 -3.40625 3.734375 -4.390625 2.609375 -4.390625 C 1.5 -4.390625 0.5625 -3.40625 0.5625 -2.15625 C 0.5625 -0.890625 1.515625 0.0625 2.609375 0.0625 C 3.703125 0.0625 4.65625 -0.890625 4.65625 -2.15625 Z M 3.96875 -2.21875 C 3.96875 -1.296875 3.34375 -0.546875 2.609375 -0.546875 C 1.875 -0.546875 1.25 -1.296875 1.25 -2.21875 C 1.25 -3.125 1.90625 -3.78125 2.609375 -3.78125 C 3.328125 -3.78125 3.96875 -3.125 3.96875 -2.21875 Z M 3.96875 -2.21875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-4\">\n",
"<path style=\"stroke:none;\" d=\"M 4.640625 -1.09375 C 4.640625 -1.359375 4.359375 -1.359375 4.296875 -1.359375 C 4.140625 -1.359375 4.03125 -1.34375 3.96875 -1.140625 C 3.90625 -1.015625 3.71875 -0.546875 2.984375 -0.546875 C 2.140625 -0.546875 1.421875 -1.25 1.421875 -2.15625 C 1.421875 -2.625 1.6875 -3.78125 3.046875 -3.78125 C 3.25 -3.78125 3.640625 -3.78125 3.640625 -3.6875 C 3.65625 -3.34375 3.84375 -3.203125 4.078125 -3.203125 C 4.3125 -3.203125 4.53125 -3.375 4.53125 -3.65625 C 4.53125 -4.390625 3.484375 -4.390625 3.046875 -4.390625 C 1.328125 -4.390625 0.734375 -3.03125 0.734375 -2.15625 C 0.734375 -0.953125 1.671875 0.0625 2.921875 0.0625 C 4.3125 0.0625 4.640625 -0.921875 4.640625 -1.09375 Z M 4.640625 -1.09375 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-5\">\n",
"<path style=\"stroke:none;\" d=\"M 5.0625 -0.296875 C 5.0625 -0.609375 4.8125 -0.609375 4.65625 -0.609375 L 4.34375 -0.609375 L 2.859375 -2.546875 L 4.09375 -3.6875 L 4.4375 -3.6875 C 4.578125 -3.6875 4.84375 -3.6875 4.84375 -3.984375 C 4.84375 -4.296875 4.578125 -4.296875 4.4375 -4.296875 L 2.90625 -4.296875 C 2.734375 -4.296875 2.5 -4.296875 2.5 -3.984375 C 2.5 -3.6875 2.75 -3.6875 2.90625 -3.6875 L 3.265625 -3.6875 L 1.65625 -2.171875 L 1.65625 -5.6875 C 1.65625 -5.984375 1.59375 -6.09375 1.25 -6.09375 L 0.609375 -6.09375 C 0.453125 -6.09375 0.203125 -6.09375 0.203125 -5.796875 C 0.203125 -5.484375 0.453125 -5.484375 0.609375 -5.484375 L 1.09375 -5.484375 L 1.09375 -0.609375 L 0.609375 -0.609375 C 0.453125 -0.609375 0.203125 -0.609375 0.203125 -0.3125 C 0.203125 0 0.453125 0 0.609375 0 L 2.140625 0 C 2.296875 0 2.546875 0 2.546875 -0.296875 C 2.546875 -0.609375 2.296875 -0.609375 2.140625 -0.609375 L 1.65625 -0.609375 L 1.65625 -1.421875 L 2.453125 -2.15625 L 3.640625 -0.609375 C 3.28125 -0.609375 3.078125 -0.609375 3.078125 -0.296875 C 3.078125 0 3.328125 0 3.484375 0 L 4.65625 0 C 4.8125 0 5.0625 0 5.0625 -0.296875 Z M 5.0625 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-6\">\n",
"<path style=\"stroke:none;\" d=\"M 4.84375 -3.8125 C 4.84375 -4.15625 4.46875 -4.15625 4.34375 -4.15625 L 0.890625 -4.15625 C 0.75 -4.15625 0.375 -4.15625 0.375 -3.8125 C 0.375 -3.453125 0.703125 -3.453125 0.828125 -3.453125 L 4.390625 -3.453125 C 4.515625 -3.453125 4.84375 -3.453125 4.84375 -3.8125 Z M 4.84375 -2.296875 C 4.84375 -2.640625 4.515625 -2.640625 4.390625 -2.640625 L 0.828125 -2.640625 C 0.703125 -2.640625 0.375 -2.640625 0.375 -2.296875 C 0.375 -1.9375 0.75 -1.9375 0.890625 -1.9375 L 4.34375 -1.9375 C 4.46875 -1.9375 4.84375 -1.9375 4.84375 -2.296875 Z M 4.84375 -2.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-7\">\n",
"<path style=\"stroke:none;\" d=\"M 5.171875 -0.3125 C 5.171875 -0.609375 4.921875 -0.609375 4.78125 -0.609375 C 4.359375 -0.609375 4.25 -0.65625 4.171875 -0.6875 L 4.171875 -2.84375 C 4.171875 -3.546875 3.640625 -4.390625 2.203125 -4.390625 C 1.78125 -4.390625 0.75 -4.390625 0.75 -3.65625 C 0.75 -3.359375 0.96875 -3.203125 1.203125 -3.203125 C 1.359375 -3.203125 1.640625 -3.296875 1.640625 -3.65625 C 1.640625 -3.734375 1.65625 -3.75 1.859375 -3.765625 C 2 -3.78125 2.125 -3.78125 2.21875 -3.78125 C 2.96875 -3.78125 3.484375 -3.46875 3.484375 -2.765625 C 1.71875 -2.734375 0.5 -2.234375 0.5 -1.28125 C 0.5 -0.59375 1.125 0.0625 2.140625 0.0625 C 2.515625 0.0625 3.125 -0.015625 3.59375 -0.3125 C 3.8125 -0.015625 4.296875 0 4.671875 0 C 4.953125 0 5.171875 0 5.171875 -0.3125 Z M 3.484375 -1.328125 C 3.484375 -1.109375 3.484375 -0.890625 3.09375 -0.71875 C 2.734375 -0.546875 2.296875 -0.546875 2.21875 -0.546875 C 1.59375 -0.546875 1.1875 -0.890625 1.1875 -1.28125 C 1.1875 -1.765625 2.046875 -2.140625 3.484375 -2.171875 Z M 3.484375 -1.328125 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-8\">\n",
"<path style=\"stroke:none;\" d=\"M 4.84375 -3.046875 C 4.84375 -3.40625 4.5 -3.40625 4.375 -3.40625 L 2.953125 -3.40625 L 2.953125 -4.828125 C 2.953125 -4.9375 2.953125 -5.296875 2.609375 -5.296875 C 2.265625 -5.296875 2.265625 -4.9375 2.265625 -4.828125 L 2.265625 -3.40625 L 0.84375 -3.40625 C 0.734375 -3.40625 0.375 -3.40625 0.375 -3.046875 C 0.375 -2.703125 0.734375 -2.703125 0.84375 -2.703125 L 2.265625 -2.703125 L 2.265625 -1.28125 C 2.265625 -1.15625 2.265625 -0.8125 2.609375 -0.8125 C 2.953125 -0.8125 2.953125 -1.15625 2.953125 -1.28125 L 2.953125 -2.703125 L 4.375 -2.703125 C 4.5 -2.703125 4.84375 -2.703125 4.84375 -3.046875 Z M 4.84375 -3.046875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-9\">\n",
"<path style=\"stroke:none;\" d=\"M 5.109375 -0.3125 C 5.109375 -0.609375 4.84375 -0.609375 4.703125 -0.609375 L 4.25 -0.609375 L 4.25 -5.6875 C 4.25 -5.984375 4.203125 -6.09375 3.859375 -6.09375 L 3.125 -6.09375 C 2.96875 -6.09375 2.71875 -6.09375 2.71875 -5.78125 C 2.71875 -5.484375 2.984375 -5.484375 3.125 -5.484375 L 3.5625 -5.484375 L 3.5625 -3.90625 C 3.234375 -4.203125 2.828125 -4.359375 2.40625 -4.359375 C 1.3125 -4.359375 0.359375 -3.40625 0.359375 -2.140625 C 0.359375 -0.90625 1.25 0.0625 2.3125 0.0625 C 2.875 0.0625 3.296875 -0.203125 3.5625 -0.5 C 3.5625 -0.140625 3.5625 0 3.96875 0 L 4.6875 0 C 4.859375 0 5.109375 0 5.109375 -0.3125 Z M 3.5625 -1.9375 C 3.5625 -1.375 3.125 -0.546875 2.359375 -0.546875 C 1.640625 -0.546875 1.046875 -1.25 1.046875 -2.140625 C 1.046875 -3.09375 1.75 -3.75 2.4375 -3.75 C 3.078125 -3.75 3.5625 -3.1875 3.5625 -2.640625 Z M 3.5625 -1.9375 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-10\">\n",
"<path style=\"stroke:none;\" d=\"M 4.546875 -2.140625 C 4.546875 -2.296875 4.421875 -2.390625 4.40625 -2.40625 C 4.15625 -2.578125 3.484375 -2.90625 3.21875 -3.046875 L 4.296875 -3.625 C 4.421875 -3.703125 4.546875 -3.765625 4.546875 -3.953125 C 4.546875 -4 4.546875 -4.28125 4.140625 -4.28125 L 2.90625 -3.5625 C 2.9375 -3.828125 2.9375 -4.484375 2.9375 -4.78125 C 2.9375 -4.859375 2.9375 -5.1875 2.609375 -5.1875 C 2.28125 -5.1875 2.28125 -4.859375 2.28125 -4.78125 C 2.28125 -4.484375 2.296875 -3.828125 2.3125 -3.5625 L 1.234375 -4.203125 C 1.09375 -4.28125 1.078125 -4.28125 1 -4.28125 C 0.8125 -4.28125 0.671875 -4.109375 0.671875 -3.953125 C 0.671875 -3.765625 0.78125 -3.703125 0.921875 -3.640625 L 2 -3.046875 L 0.921875 -2.46875 C 0.8125 -2.390625 0.671875 -2.328125 0.671875 -2.140625 C 0.671875 -2.09375 0.671875 -1.796875 1.078125 -1.796875 L 2.3125 -2.515625 C 2.296875 -2.265625 2.28125 -1.609375 2.28125 -1.3125 C 2.28125 -1.21875 2.28125 -0.890625 2.609375 -0.890625 C 2.9375 -0.890625 2.9375 -1.21875 2.9375 -1.3125 C 2.9375 -1.609375 2.9375 -2.265625 2.90625 -2.515625 C 3.515625 -2.1875 3.15625 -2.375 3.84375 -1.96875 C 4.109375 -1.796875 4.140625 -1.796875 4.21875 -1.796875 C 4.421875 -1.796875 4.546875 -1.984375 4.546875 -2.140625 Z M 4.546875 -2.140625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-0-11\">\n",
"<path style=\"stroke:none;\" d=\"M 4.703125 -0.40625 L 4.703125 -0.671875 C 4.703125 -0.859375 4.703125 -1.078125 4.359375 -1.078125 C 4.015625 -1.078125 4.015625 -0.890625 4.015625 -0.609375 L 1.640625 -0.609375 C 2.234375 -1.109375 3.1875 -1.859375 3.625 -2.265625 C 4.25 -2.828125 4.703125 -3.453125 4.703125 -4.25 C 4.703125 -5.453125 3.703125 -6.203125 2.484375 -6.203125 C 1.3125 -6.203125 0.515625 -5.390625 0.515625 -4.53125 C 0.515625 -4.171875 0.796875 -4.0625 0.96875 -4.0625 C 1.171875 -4.0625 1.40625 -4.234375 1.40625 -4.5 C 1.40625 -4.625 1.359375 -4.75 1.265625 -4.828125 C 1.421875 -5.28125 1.890625 -5.59375 2.4375 -5.59375 C 3.25 -5.59375 4.015625 -5.140625 4.015625 -4.25 C 4.015625 -3.5625 3.53125 -2.984375 2.875 -2.4375 L 0.671875 -0.578125 C 0.578125 -0.5 0.515625 -0.453125 0.515625 -0.3125 C 0.515625 0 0.765625 0 0.921875 0 L 4.3125 0 C 4.640625 0 4.703125 -0.09375 4.703125 -0.40625 Z M 4.703125 -0.40625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-1-0\">\n",
"<path style=\"stroke:none;\" d=\"\"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949170-1-1\">\n",
"<path style=\"stroke:none;\" d=\"M 5.59375 -5.828125 L 2.765625 -7.421875 L -0.046875 -5.828125 L 0.0625 -5.609375 L 2.765625 -6.828125 L 5.46875 -5.609375 Z M 5.59375 -5.828125 \"/>\n",
"</symbol>\n",
"</g>\n",
"</defs>\n",
"<g id=\"surface1\">\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -3.294844 -6.594281 L -11.169844 -22.336469 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194831 1.594201 C -1.095667 0.995638 0.000509348 0.0995086 0.298047 0.000320546 C 0.000504 -0.100592 -1.095721 -0.996663 -1.196657 -1.59522 \" transform=\"matrix(-0.44897,0.898,0.898,0.44897,37.28587,28.73221)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 3.295 -6.594281 L 11.17 -22.336469 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196587 1.59536 C -1.095651 0.996802 0.000573596 0.100731 0.298116 -0.000181345 C 0.000578944 -0.0993694 -1.095598 -0.995499 -1.194762 -1.594062 \" transform=\"matrix(0.44897,0.898,0.898,-0.44897,59.62413,28.73221)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -19.771406 -33.941938 L -36.455 -50.629438 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194749 1.594387 C -1.095298 0.99778 0.00127524 0.100133 0.299583 0.000706728 C 0.00128086 -0.0987367 -1.095241 -0.996445 -1.194659 -1.593058 \" transform=\"matrix(-0.70714,0.7071,0.7071,0.70714,12.00041,57.02204)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -14.17375 -33.941938 L -14.17375 -50.070844 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194869 1.59339 C -1.097212 0.995734 0.00044375 0.101202 0.297319 -0.00036 C 0.00044375 -0.0980163 -1.097212 -0.996454 -1.194869 -1.59411 \" transform=\"matrix(0,1,1,0,34.28161,56.4644)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -18.79875 -62.859906 L -30.212812 -78.078656 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196295 1.594994 C -1.095995 0.994741 -0.00201341 0.0998033 0.300445 0.00105659 C 0.000318779 -0.097689 -1.094443 -0.99651 -1.196301 -1.592874 \" transform=\"matrix(-0.60287,0.80383,0.80383,0.60287,18.24278,84.4727)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -12.630781 -62.859906 L -8.634687 -78.856 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194365 1.593576 C -1.09393 0.996709 -0.00155278 0.0995272 0.299725 0.0000534754 C 0.00129234 -0.0984816 -1.096744 -0.995695 -1.194318 -1.595408 \" transform=\"matrix(0.24252,0.97014,0.97014,-0.24252,39.82179,85.2483)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 14.173906 -33.941938 L 14.173906 -49.641156 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196156 1.594266 C -1.094594 0.99661 -0.00084375 0.0981725 0.299938 0.00051625 C -0.00084375 -0.101046 -1.094594 -0.995577 -1.196156 -1.593234 \" transform=\"matrix(0,1,1,0,62.62839,56.036)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 19.771563 -33.941938 L 36.060625 -50.234906 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195972 1.593147 C -1.096554 0.996534 -0.0000316756 0.098826 0.298271 -0.000617421 C -0.0000373004 -0.100044 -1.09661 -0.99769 -1.196062 -1.594298 \" transform=\"matrix(0.70714,0.7071,0.7071,-0.70714,84.51608,56.6285)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 39.439531 -62.859906 L 31.6075 -78.516156 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193449 1.593624 C -1.095606 0.99618 -0.000263697 0.0982937 0.298462 -0.00127269 C -0.00200532 -0.0991082 -1.095552 -0.995307 -1.193364 -1.594503 \" transform=\"matrix(-0.44724,0.89442,0.89442,0.44724,80.06431,84.9094)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 45.603594 -62.859906 L 53.619219 -78.88725 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195821 1.595193 C -1.098009 0.995997 -0.000968376 0.0980516 0.299499 0.000216128 C 0.000773246 -0.0993502 -1.094569 -0.997237 -1.195906 -1.592934 \" transform=\"matrix(0.44724,0.89442,0.89442,-0.44724,102.07289,85.283)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 25.291094 -91.156781 L 17.685625 -106.359906 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193376 1.593611 C -1.095532 0.996167 -0.000189907 0.0982802 0.298536 -0.00128611 C -0.00193153 -0.0991216 -1.095479 -0.99532 -1.19329 -1.594516 \" transform=\"matrix(-0.44724,0.89442,0.89442,0.44724,66.14248,112.75309)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 31.404375 -91.156781 L 38.70125 -105.750531 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194683 1.593283 C -1.097256 0.996474 -0.00109564 0.100374 0.296436 -0.000549263 C -0.00109921 -0.0997218 -1.097291 -0.995783 -1.19648 -1.594328 \" transform=\"matrix(0.44902,0.898,0.898,-0.44902,87.15645,112.14371)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 38.908281 -120.613813 L 31.423906 -135.582563 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193833 1.592665 C -1.095999 0.995214 -0.000663308 0.0973 0.298063 -0.00227254 C 0.00108538 -0.0983566 -1.095981 -0.996291 -1.195551 -1.591996 \" transform=\"matrix(-0.44722,0.89442,0.89442,0.44722,79.87752,141.97661)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 46.134844 -120.613813 L 53.177813 -134.703656 \" transform=\"matrix(1,0,0,-1,48.455,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.19625 1.593301 C -1.095343 0.994752 0.000817452 0.0986517 0.300089 0.00120845 C 0.000813887 -0.101444 -1.095378 -0.997505 -1.194567 -1.59605 \" transform=\"matrix(0.44902,0.898,0.898,-0.44902,101.6337,141.09825)\"/>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-1\" x=\"35.379\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949170-0-2\" x=\"40.609386\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949170-0-3\" x=\"45.839772\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949170-0-4\" x=\"51.070158\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949170-0-5\" x=\"56.300544\" y=\"9.408\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-6\" x=\"31.667\" y=\"36.818\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-7\" x=\"3.321\" y=\"65.249\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-8\" x=\"31.667\" y=\"65.732\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-1\" x=\"10.407\" y=\"94.447\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-4\" x=\"38.754\" y=\"93.595\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-6\" x=\"60.013\" y=\"36.818\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-9\" x=\"60.013\" y=\"66.1\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-8\" x=\"88.36\" y=\"65.732\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-10\" x=\"74.187\" y=\"94.028\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-11\" x=\"60.013\" y=\"122.878\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-1-1\" x=\"88.205\" y=\"123.486\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-7\" x=\"74.187\" y=\"150.288\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-11\" x=\"102.533\" y=\"151.224\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949170-0-7\" x=\"102.533\" y=\"93.595\"/>\n",
"</g>\n",
"</g>\n",
"</svg>\n",
"\n"
],
"text/plain": [
"TikzPictures.TikzPicture(\"\\\\graph [layered layout, ] {\\n1/\\\"\\\\texttt{block}\\\",\\n2/\\\"\\\\texttt{=}\\\",\\n3/\\\"\\\\texttt{a}\\\",\\n4/\\\"\\\\texttt{+}\\\",\\n5/\\\"\\\\texttt{b}\\\",\\n6/\\\"\\\\texttt{c}\\\",\\n7/\\\"\\\\texttt{=}\\\",\\n8/\\\"\\\\texttt{d}\\\",\\n9/\\\"\\\\texttt{+}\\\",\\n10/\\\"\\\\texttt{*}\\\",\\n11/\\\"\\\\texttt{2}\\\",\\n12/\\\"\\\\textasciicircum\\\",\\n13/\\\"\\\\texttt{a}\\\",\\n14/\\\"\\\\texttt{2}\\\",\\n15/\\\"\\\\texttt{a}\\\",\\n;\\n1 -> 2;\\n1 -> 7;\\n2 -> 3;\\n2 -> 4;\\n4 -> 5;\\n4 -> 6;\\n7 -> 8;\\n7 -> 9;\\n9 -> 10;\\n9 -> 15;\\n10 -> 11;\\n10 -> 12;\\n12 -> 13;\\n12 -> 14;\\n};\\n\",\"\",\"\\\\usepackage{fontspec}\\n\\\\setmainfont{Latin Modern Math}\\n\\\\usetikzlibrary{graphs}\\n\\\\usetikzlibrary{graphdrawing}\\n\\n\\\\usegdlibrary{layered}\",true,true)"
]
},
"execution_count": 117,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"@tree begin\n",
" a = b + c\n",
" d = 2a^2 + a\n",
"end"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"There is no common subexpression elimination:"
]
},
{
"cell_type": "code",
"execution_count": 118,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/svg+xml": [
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"181.95pt\" height=\"155.621pt\" viewBox=\"0 0 181.95 155.621\" version=\"1.1\">\n",
"<defs>\n",
"<g>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-0\">\n",
"<path style=\"stroke:none;\" d=\"\"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-1\">\n",
"<path style=\"stroke:none;\" d=\"M 4.46875 -1.25 C 4.46875 -1.4375 4.46875 -1.640625 4.125 -1.640625 C 3.796875 -1.640625 3.78125 -1.4375 3.78125 -1.265625 C 3.78125 -0.640625 3.203125 -0.546875 2.984375 -0.546875 C 2.21875 -0.546875 2.21875 -1.0625 2.21875 -1.3125 L 2.21875 -3.6875 L 3.84375 -3.6875 C 4 -3.6875 4.25 -3.6875 4.25 -3.984375 C 4.25 -4.296875 4 -4.296875 3.84375 -4.296875 L 2.21875 -4.296875 L 2.21875 -5.109375 C 2.21875 -5.296875 2.21875 -5.515625 1.875 -5.515625 C 1.53125 -5.515625 1.53125 -5.3125 1.53125 -5.109375 L 1.53125 -4.296875 L 0.65625 -4.296875 C 0.5 -4.296875 0.25 -4.296875 0.25 -3.984375 C 0.25 -3.6875 0.5 -3.6875 0.640625 -3.6875 L 1.53125 -3.6875 L 1.53125 -1.25 C 1.53125 -0.296875 2.203125 0.0625 2.9375 0.0625 C 3.671875 0.0625 4.46875 -0.375 4.46875 -1.25 Z M 4.46875 -1.25 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-2\">\n",
"<path style=\"stroke:none;\" d=\"M 5.109375 -0.3125 C 5.109375 -0.609375 4.84375 -0.609375 4.703125 -0.609375 L 4.25 -0.609375 L 4.25 -3.890625 C 4.25 -4.203125 4.203125 -4.296875 3.859375 -4.296875 L 3.125 -4.296875 C 2.96875 -4.296875 2.71875 -4.296875 2.71875 -3.984375 C 2.71875 -3.6875 2.984375 -3.6875 3.125 -3.6875 L 3.5625 -3.6875 L 3.5625 -1.5625 C 3.5625 -0.671875 2.765625 -0.546875 2.4375 -0.546875 C 1.65625 -0.546875 1.65625 -0.875 1.65625 -1.203125 L 1.65625 -3.890625 C 1.65625 -4.203125 1.59375 -4.296875 1.25 -4.296875 L 0.53125 -4.296875 C 0.375 -4.296875 0.125 -4.296875 0.125 -3.984375 C 0.125 -3.6875 0.375 -3.6875 0.515625 -3.6875 L 0.96875 -3.6875 L 0.96875 -1.140625 C 0.96875 -0.171875 1.65625 0.0625 2.375 0.0625 C 2.796875 0.0625 3.203125 -0.046875 3.5625 -0.3125 C 3.578125 0 3.78125 0 3.96875 0 L 4.6875 0 C 4.859375 0 5.109375 0 5.109375 -0.3125 Z M 5.109375 -0.3125 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-3\">\n",
"<path style=\"stroke:none;\" d=\"M 4.859375 -2.15625 C 4.859375 -3.375 3.984375 -4.359375 2.921875 -4.359375 C 2.4375 -4.359375 2 -4.171875 1.65625 -3.875 C 1.65625 -4.15625 1.640625 -4.296875 1.25 -4.296875 L 0.53125 -4.296875 C 0.375 -4.296875 0.125 -4.296875 0.125 -3.984375 C 0.125 -3.6875 0.375 -3.6875 0.515625 -3.6875 L 0.96875 -3.6875 L 0.96875 1.609375 L 0.53125 1.609375 C 0.375 1.609375 0.125 1.609375 0.125 1.90625 C 0.125 2.21875 0.375 2.21875 0.515625 2.21875 L 2.109375 2.21875 C 2.25 2.21875 2.5 2.21875 2.5 1.90625 C 2.5 1.609375 2.25 1.609375 2.09375 1.609375 L 1.65625 1.609375 L 1.65625 -0.453125 C 2.0625 -0.03125 2.5 0.0625 2.8125 0.0625 C 3.890625 0.0625 4.859375 -0.890625 4.859375 -2.15625 Z M 4.171875 -2.15625 C 4.171875 -1.203125 3.484375 -0.546875 2.78125 -0.546875 C 2 -0.546875 1.65625 -1.421875 1.65625 -1.90625 L 1.65625 -2.625 C 1.65625 -3.21875 2.234375 -3.75 2.859375 -3.75 C 3.59375 -3.75 4.171875 -3.015625 4.171875 -2.15625 Z M 4.171875 -2.15625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-4\">\n",
"<path style=\"stroke:none;\" d=\"M 4.65625 -0.296875 C 4.65625 -0.609375 4.421875 -0.609375 4.25 -0.609375 L 2.953125 -0.609375 L 2.953125 -5.6875 C 2.953125 -5.984375 2.90625 -6.09375 2.5625 -6.09375 L 0.984375 -6.09375 C 0.828125 -6.09375 0.578125 -6.09375 0.578125 -5.78125 C 0.578125 -5.484375 0.84375 -5.484375 0.984375 -5.484375 L 2.265625 -5.484375 L 2.265625 -0.609375 L 0.984375 -0.609375 C 0.828125 -0.609375 0.578125 -0.609375 0.578125 -0.296875 C 0.578125 0 0.84375 0 0.984375 0 L 4.25 0 C 4.40625 0 4.65625 0 4.65625 -0.296875 Z M 4.65625 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-5\">\n",
"<path style=\"stroke:none;\" d=\"M 4.625 -1.09375 C 4.625 -1.359375 4.34375 -1.359375 4.28125 -1.359375 C 4.09375 -1.359375 4.015625 -1.328125 3.953125 -1.140625 C 3.734375 -0.640625 3.1875 -0.546875 2.90625 -0.546875 C 2.15625 -0.546875 1.421875 -1.046875 1.25 -1.90625 L 4.234375 -1.90625 C 4.4375 -1.90625 4.625 -1.90625 4.625 -2.265625 C 4.625 -3.40625 3.984375 -4.390625 2.6875 -4.390625 C 1.5 -4.390625 0.546875 -3.390625 0.546875 -2.15625 C 0.546875 -0.953125 1.5625 0.0625 2.84375 0.0625 C 4.15625 0.0625 4.625 -0.84375 4.625 -1.09375 Z M 3.921875 -2.5 L 1.265625 -2.5 C 1.40625 -3.234375 2 -3.78125 2.6875 -3.78125 C 3.203125 -3.78125 3.828125 -3.53125 3.921875 -2.5 Z M 3.921875 -2.5 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-6\">\n",
"<path style=\"stroke:none;\" d=\"M 4.359375 -5.546875 C 4.359375 -6.15625 3.5625 -6.15625 3.40625 -6.15625 C 2.609375 -6.15625 1.828125 -5.6875 1.828125 -4.828125 L 1.828125 -4.296875 L 0.84375 -4.296875 C 0.671875 -4.296875 0.421875 -4.296875 0.421875 -3.984375 C 0.421875 -3.6875 0.671875 -3.6875 0.828125 -3.6875 L 1.828125 -3.6875 L 1.828125 -0.609375 L 0.828125 -0.609375 C 0.671875 -0.609375 0.421875 -0.609375 0.421875 -0.3125 C 0.421875 0 0.671875 0 0.828125 0 L 3.53125 0 C 3.671875 0 3.9375 0 3.9375 -0.296875 C 3.9375 -0.609375 3.671875 -0.609375 3.53125 -0.609375 L 2.515625 -0.609375 L 2.515625 -3.6875 L 3.734375 -3.6875 C 3.890625 -3.6875 4.140625 -3.6875 4.140625 -3.984375 C 4.140625 -4.296875 3.890625 -4.296875 3.734375 -4.296875 L 2.515625 -4.296875 L 2.515625 -4.765625 C 2.515625 -5.546875 3.1875 -5.546875 3.484375 -5.546875 C 3.484375 -5.5 3.578125 -5.109375 3.921875 -5.109375 C 4.125 -5.109375 4.359375 -5.28125 4.359375 -5.546875 Z M 4.359375 -5.546875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-7\">\n",
"<path style=\"stroke:none;\" d=\"M 4.84375 -3.046875 C 4.84375 -3.40625 4.5 -3.40625 4.375 -3.40625 L 2.953125 -3.40625 L 2.953125 -4.828125 C 2.953125 -4.9375 2.953125 -5.296875 2.609375 -5.296875 C 2.265625 -5.296875 2.265625 -4.9375 2.265625 -4.828125 L 2.265625 -3.40625 L 0.84375 -3.40625 C 0.734375 -3.40625 0.375 -3.40625 0.375 -3.046875 C 0.375 -2.703125 0.734375 -2.703125 0.84375 -2.703125 L 2.265625 -2.703125 L 2.265625 -1.28125 C 2.265625 -1.15625 2.265625 -0.8125 2.609375 -0.8125 C 2.953125 -0.8125 2.953125 -1.15625 2.953125 -1.28125 L 2.953125 -2.703125 L 4.375 -2.703125 C 4.5 -2.703125 4.84375 -2.703125 4.84375 -3.046875 Z M 4.84375 -3.046875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-8\">\n",
"<path style=\"stroke:none;\" d=\"M 4.9375 -0.296875 C 4.9375 -0.609375 4.6875 -0.609375 4.53125 -0.609375 L 4.140625 -0.609375 L 2.859375 -2.21875 L 4 -3.6875 L 4.390625 -3.6875 C 4.53125 -3.6875 4.8125 -3.6875 4.8125 -3.984375 C 4.8125 -4.296875 4.546875 -4.296875 4.390625 -4.296875 L 3.234375 -4.296875 C 3.078125 -4.296875 2.828125 -4.296875 2.828125 -4 C 2.828125 -3.6875 3.046875 -3.6875 3.3125 -3.6875 L 2.578125 -2.6875 L 1.828125 -3.6875 C 2.078125 -3.6875 2.296875 -3.6875 2.296875 -4 C 2.296875 -4.296875 2.046875 -4.296875 1.90625 -4.296875 L 0.734375 -4.296875 C 0.59375 -4.296875 0.328125 -4.296875 0.328125 -3.984375 C 0.328125 -3.6875 0.59375 -3.6875 0.734375 -3.6875 L 1.140625 -3.6875 L 2.3125 -2.21875 L 1.078125 -0.609375 L 0.671875 -0.609375 C 0.53125 -0.609375 0.265625 -0.609375 0.265625 -0.296875 C 0.265625 0 0.53125 0 0.671875 0 L 1.84375 0 C 2 0 2.25 0 2.25 -0.296875 C 2.25 -0.609375 2.03125 -0.609375 1.71875 -0.609375 L 2.578125 -1.828125 L 3.46875 -0.609375 C 3.1875 -0.609375 2.96875 -0.609375 2.96875 -0.296875 C 2.96875 0 3.21875 0 3.375 0 L 4.53125 0 C 4.671875 0 4.9375 0 4.9375 -0.296875 Z M 4.9375 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-9\">\n",
"<path style=\"stroke:none;\" d=\"M 4.703125 -0.40625 L 4.703125 -0.671875 C 4.703125 -0.859375 4.703125 -1.078125 4.359375 -1.078125 C 4.015625 -1.078125 4.015625 -0.890625 4.015625 -0.609375 L 1.640625 -0.609375 C 2.234375 -1.109375 3.1875 -1.859375 3.625 -2.265625 C 4.25 -2.828125 4.703125 -3.453125 4.703125 -4.25 C 4.703125 -5.453125 3.703125 -6.203125 2.484375 -6.203125 C 1.3125 -6.203125 0.515625 -5.390625 0.515625 -4.53125 C 0.515625 -4.171875 0.796875 -4.0625 0.96875 -4.0625 C 1.171875 -4.0625 1.40625 -4.234375 1.40625 -4.5 C 1.40625 -4.625 1.359375 -4.75 1.265625 -4.828125 C 1.421875 -5.28125 1.890625 -5.59375 2.4375 -5.59375 C 3.25 -5.59375 4.015625 -5.140625 4.015625 -4.25 C 4.015625 -3.5625 3.53125 -2.984375 2.875 -2.4375 L 0.671875 -0.578125 C 0.578125 -0.5 0.515625 -0.453125 0.515625 -0.3125 C 0.515625 0 0.765625 0 0.921875 0 L 4.3125 0 C 4.640625 0 4.703125 -0.09375 4.703125 -0.40625 Z M 4.703125 -0.40625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-10\">\n",
"<path style=\"stroke:none;\" d=\"M 4.546875 -2.140625 C 4.546875 -2.296875 4.421875 -2.390625 4.40625 -2.40625 C 4.15625 -2.578125 3.484375 -2.90625 3.21875 -3.046875 L 4.296875 -3.625 C 4.421875 -3.703125 4.546875 -3.765625 4.546875 -3.953125 C 4.546875 -4 4.546875 -4.28125 4.140625 -4.28125 L 2.90625 -3.5625 C 2.9375 -3.828125 2.9375 -4.484375 2.9375 -4.78125 C 2.9375 -4.859375 2.9375 -5.1875 2.609375 -5.1875 C 2.28125 -5.1875 2.28125 -4.859375 2.28125 -4.78125 C 2.28125 -4.484375 2.296875 -3.828125 2.3125 -3.5625 L 1.234375 -4.203125 C 1.09375 -4.28125 1.078125 -4.28125 1 -4.28125 C 0.8125 -4.28125 0.671875 -4.109375 0.671875 -3.953125 C 0.671875 -3.765625 0.78125 -3.703125 0.921875 -3.640625 L 2 -3.046875 L 0.921875 -2.46875 C 0.8125 -2.390625 0.671875 -2.328125 0.671875 -2.140625 C 0.671875 -2.09375 0.671875 -1.796875 1.078125 -1.796875 L 2.3125 -2.515625 C 2.296875 -2.265625 2.28125 -1.609375 2.28125 -1.3125 C 2.28125 -1.21875 2.28125 -0.890625 2.609375 -0.890625 C 2.9375 -0.890625 2.9375 -1.21875 2.9375 -1.3125 C 2.9375 -1.609375 2.9375 -2.265625 2.90625 -2.515625 C 3.515625 -2.1875 3.15625 -2.375 3.84375 -1.96875 C 4.109375 -1.796875 4.140625 -1.796875 4.21875 -1.796875 C 4.421875 -1.796875 4.546875 -1.984375 4.546875 -2.140625 Z M 4.546875 -2.140625 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-11\">\n",
"<path style=\"stroke:none;\" d=\"M 5.078125 -3.875 C 5.078125 -4.09375 4.890625 -4.40625 4.34375 -4.40625 C 4.234375 -4.40625 3.75 -4.390625 3.296875 -4.0625 C 3.125 -4.171875 2.78125 -4.359375 2.328125 -4.359375 C 1.390625 -4.359375 0.671875 -3.609375 0.671875 -2.765625 C 0.671875 -2.328125 0.84375 -2 1 -1.8125 C 0.890625 -1.65625 0.796875 -1.4375 0.796875 -1.140625 C 0.796875 -0.78125 0.9375 -0.53125 1.03125 -0.421875 C 0.296875 0.03125 0.296875 0.703125 0.296875 0.8125 C 0.296875 1.671875 1.328125 2.28125 2.609375 2.28125 C 3.890625 2.28125 4.9375 1.671875 4.9375 0.8125 C 4.9375 0.453125 4.75 -0.046875 4.25 -0.3125 C 4.109375 -0.390625 3.703125 -0.609375 2.796875 -0.609375 L 2.109375 -0.609375 C 2.03125 -0.609375 1.890625 -0.609375 1.8125 -0.625 C 1.671875 -0.625 1.609375 -0.625 1.484375 -0.765625 C 1.375 -0.90625 1.359375 -1.125 1.359375 -1.125 C 1.359375 -1.171875 1.390625 -1.3125 1.421875 -1.40625 C 1.453125 -1.390625 1.828125 -1.15625 2.328125 -1.15625 C 3.234375 -1.15625 3.96875 -1.875 3.96875 -2.765625 C 3.96875 -3.0625 3.875 -3.34375 3.703125 -3.625 C 3.921875 -3.75 4.15625 -3.78125 4.28125 -3.796875 C 4.34375 -3.53125 4.578125 -3.453125 4.671875 -3.453125 C 4.84375 -3.453125 5.078125 -3.578125 5.078125 -3.875 Z M 3.28125 -2.765625 C 3.28125 -2.1875 2.84375 -1.75 2.328125 -1.75 C 1.78125 -1.75 1.359375 -2.21875 1.359375 -2.75 C 1.359375 -3.3125 1.796875 -3.765625 2.328125 -3.765625 C 2.859375 -3.765625 3.28125 -3.296875 3.28125 -2.765625 Z M 4.359375 0.8125 C 4.359375 1.25 3.609375 1.6875 2.609375 1.6875 C 1.609375 1.6875 0.875 1.25 0.875 0.8125 C 0.875 0.640625 0.953125 0.3125 1.28125 0.125 C 1.53125 -0.046875 1.609375 -0.046875 2.34375 -0.046875 C 3.234375 -0.046875 4.359375 -0.046875 4.359375 0.8125 Z M 4.359375 0.8125 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-12\">\n",
"<path style=\"stroke:none;\" d=\"M 4.671875 -3.046875 C 4.671875 -3.40625 4.3125 -3.40625 4.203125 -3.40625 L 1.03125 -3.40625 C 0.90625 -3.40625 0.5625 -3.40625 0.5625 -3.046875 C 0.5625 -2.703125 0.90625 -2.703125 1.03125 -2.703125 L 4.203125 -2.703125 C 4.3125 -2.703125 4.671875 -2.703125 4.671875 -3.046875 Z M 4.671875 -3.046875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-0-13\">\n",
"<path style=\"stroke:none;\" d=\"M 4.984375 -3.984375 C 4.984375 -4.296875 4.75 -4.296875 4.578125 -4.296875 L 3.421875 -4.296875 C 3.265625 -4.296875 3.015625 -4.296875 3.015625 -4 C 3.015625 -3.6875 3.265625 -3.6875 3.421875 -3.6875 L 3.703125 -3.6875 L 2.984375 -1.5625 C 2.84375 -1.203125 2.796875 -1.015625 2.71875 -0.703125 C 2.65625 -0.890625 2.578125 -1.109375 2.5 -1.296875 L 1.578125 -3.6875 L 1.828125 -3.6875 C 1.96875 -3.6875 2.21875 -3.6875 2.21875 -3.984375 C 2.21875 -4.296875 1.984375 -4.296875 1.828125 -4.296875 L 0.65625 -4.296875 C 0.5 -4.296875 0.265625 -4.296875 0.265625 -3.984375 C 0.265625 -3.6875 0.515625 -3.6875 0.65625 -3.6875 L 0.96875 -3.6875 L 2.375 -0.125 C 2.421875 -0.03125 2.421875 0 2.421875 0 C 2.421875 0 2.171875 0.84375 2.046875 1.09375 C 1.75 1.640625 1.390625 1.65625 1.25 1.671875 C 1.25 1.671875 1.296875 1.578125 1.296875 1.453125 C 1.296875 1.203125 1.109375 1.015625 0.875 1.015625 C 0.59375 1.015625 0.421875 1.203125 0.421875 1.453125 C 0.421875 1.875 0.765625 2.265625 1.25 2.265625 C 2.25 2.265625 2.703125 0.953125 2.734375 0.84375 L 4.28125 -3.6875 L 4.578125 -3.6875 C 4.734375 -3.6875 4.984375 -3.6875 4.984375 -3.984375 Z M 4.984375 -3.984375 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-1-0\">\n",
"<path style=\"stroke:none;\" d=\"\"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949171-1-1\">\n",
"<path style=\"stroke:none;\" d=\"M 5.59375 -5.828125 L 2.765625 -7.421875 L -0.046875 -5.828125 L 0.0625 -5.609375 L 2.765625 -6.828125 L 5.46875 -5.609375 Z M 5.59375 -5.828125 \"/>\n",
"</symbol>\n",
"</g>\n",
"</defs>\n",
"<g id=\"surface1\">\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -3.83325 -7.670625 L -10.673094 -21.3425 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195269 1.593358 C -1.09745 0.995897 0.00137028 0.0996878 0.300098 0.000105878 C -0.000380209 -0.0977184 -1.097486 -0.995635 -1.195326 -1.59484 \" transform=\"matrix(-0.44719,0.89442,0.89442,0.44719,66.1302,28.81357)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 3.834719 -7.670625 L 10.537844 -21.072969 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196137 1.594407 C -1.096549 0.998696 0.000556106 0.100779 0.299288 -0.000539138 C 0.000559699 -0.100121 -1.094767 -0.998077 -1.19608 -1.593791 \" transform=\"matrix(0.44719,0.89442,0.89442,-0.44719,87.3393,28.54457)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -14.173094 -34.940156 L -14.173094 -50.069063 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.19665 1.594046 C -1.095087 0.99639 -0.0013375 0.0979525 0.299444 0.00029625 C -0.0013375 -0.101266 -1.095087 -0.995797 -1.19665 -1.593454 \" transform=\"matrix(0,1,1,0,62.62861,57.5404)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -20.309812 -62.826875 L -35.907469 -78.428438 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194393 1.594304 C -1.094955 0.997677 0.00162371 0.0999744 0.299937 0.000536522 C 0.00162371 -0.0989013 -1.094955 -0.996604 -1.194393 -1.593231 \" transform=\"matrix(-0.7071,0.7071,0.7071,0.7071,40.8953,85.89691)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -14.173094 -62.858125 L -14.173094 -78.4675 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194823 1.594046 C -1.097166 0.99639 0.00049 0.0979525 0.297365 0.00029625 C 0.00049 -0.101266 -1.097166 -0.995797 -1.194823 -1.593454 \" transform=\"matrix(0,1,1,0,62.62861,85.93701)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -48.809812 -91.330781 L -64.876219 -107.397188 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195411 1.594304 C -1.095973 0.997677 0.000605466 0.0999744 0.298919 0.000536522 C 0.000605466 -0.0989013 -1.095973 -0.996604 -1.195411 -1.593231 \" transform=\"matrix(-0.7071,0.7071,0.7071,0.7071,11.92583,114.86638)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -42.52075 -92.268281 L -42.52075 -106.31125 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194762 1.5932 C -1.097106 0.995544 0.00055 0.101013 0.297425 -0.00055 C 0.00055 -0.0982062 -1.097106 -0.996644 -1.194762 -1.5943 \" transform=\"matrix(0,1,1,0,34.2818,113.7807)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -14.173094 -91.155 L -14.173094 -106.31125 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194762 1.594046 C -1.097106 0.99639 0.00055 0.0979525 0.297425 0.00029625 C 0.00055 -0.101266 -1.097106 -0.995797 -1.194762 -1.593454 \" transform=\"matrix(0,1,1,0,62.62861,113.7807)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -8.059812 -91.155 L 8.182375 -107.397188 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195417 1.593067 C -1.096013 0.996465 0.000466257 0.0987523 0.29876 -0.00069535 C 0.000456414 -0.100114 -1.096112 -0.997718 -1.195575 -1.59431 \" transform=\"matrix(0.70717,0.7071,0.7071,-0.70717,84.98453,114.86638)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 14.174563 -35.209688 L 14.174563 -51.018281 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193881 1.594923 C -1.096225 0.997266 0.00143125 0.0988288 0.298306 0.0011725 C 0.00143125 -0.10039 -1.096225 -0.994921 -1.193881 -1.592577 \" transform=\"matrix(0,1,1,0,90.97539,58.48685)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 14.174563 -61.912813 L 14.174563 -77.78 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194882 1.594923 C -1.097226 0.997266 0.00043 0.0988288 0.297305 0.0011725 C 0.00043 -0.10039 -1.097226 -0.994921 -1.194882 -1.592577 \" transform=\"matrix(0,1,1,0,90.97539,85.24957)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 19.393313 -61.912813 L 36.061281 -78.580781 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196269 1.594263 C -1.096831 0.997636 -0.000252793 0.0999328 0.298061 0.000494979 C -0.000252793 -0.0989429 -1.096831 -0.996646 -1.196269 -1.593273 \" transform=\"matrix(0.7071,0.7071,0.7071,-0.7071,112.86311,86.05131)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 42.518313 -91.205781 L 42.518313 -105.701875 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196407 1.595769 C -1.094845 0.998113 -0.001095 0.099675 0.299686 -0.0018875 C -0.001095 -0.0995437 -1.094845 -0.997981 -1.196407 -1.595637 \" transform=\"matrix(0,1,1,0,119.3222,113.17297)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 48.655031 -91.174531 L 64.428469 -106.947969 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.195615 1.59427 C -1.096177 0.997643 0.000401287 0.0999399 0.298715 0.000502051 C 0.000401287 -0.0989358 -1.096177 -0.996639 -1.195615 -1.593266 \" transform=\"matrix(0.7071,0.7071,0.7071,-0.7071,141.22983,114.41804)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 36.22925 -119.678438 L 20.162844 -135.744844 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.19386 1.593964 C -1.094422 0.997337 0.0021567 0.0996341 0.30047 0.000196224 C 0.0021567 -0.0992416 -1.094422 -0.996944 -1.19386 -1.593571 \" transform=\"matrix(-0.7071,0.7071,0.7071,0.7071,96.96623,143.21318)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 42.518313 -120.612031 L 42.518313 -134.658906 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193906 1.595769 C -1.09625 0.998113 0.00140625 0.099675 0.298281 -0.0018875 C 0.00140625 -0.0995437 -1.09625 -0.997981 -1.193906 -1.595637 \" transform=\"matrix(0,1,1,0,119.3222,142.1275)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 70.865969 -119.502656 L 70.865969 -134.658906 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193906 1.592719 C -1.09625 0.995063 0.00140625 0.100531 0.298281 -0.00103125 C 0.00140625 -0.0986875 -1.09625 -0.997125 -1.193906 -1.594781 \" transform=\"matrix(0,1,1,0,147.669,142.1275)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 76.983156 -119.502656 L 93.221438 -135.744844 \" transform=\"matrix(1,0,0,-1,76.802,7.47)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.193009 1.594264 C -1.096368 0.9949 0.000111756 0.0971871 0.298406 -0.00226063 C 0.000101913 -0.101679 -1.093705 -0.996521 -1.195929 -1.595875 \" transform=\"matrix(0.70717,0.7071,0.7071,-0.70717,170.02495,143.21318)\"/>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-1\" x=\"63.726\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949171-0-2\" x=\"68.956386\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949171-0-3\" x=\"74.186772\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949171-0-4\" x=\"79.417158\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949171-0-5\" x=\"84.647544\" y=\"9.408\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-6\" x=\"60.013\" y=\"38.89\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-7\" x=\"60.013\" y=\"66.808\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-1-1\" x=\"31.513\" y=\"96.215\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-8\" x=\"3.321\" y=\"123.003\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-9\" x=\"31.667\" y=\"123.954\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-10\" x=\"60.013\" y=\"95.104\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-9\" x=\"60.013\" y=\"123.954\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-8\" x=\"88.36\" y=\"123.003\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-11\" x=\"88.36\" y=\"36.877\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-12\" x=\"88.36\" y=\"65.861\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-13\" x=\"88.36\" y=\"93.52\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-7\" x=\"116.706\" y=\"95.154\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-1-1\" x=\"116.552\" y=\"124.562\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-8\" x=\"88.36\" y=\"151.349\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-9\" x=\"116.706\" y=\"152.3\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-10\" x=\"145.053\" y=\"123.451\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-9\" x=\"145.053\" y=\"152.3\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949171-0-8\" x=\"173.399\" y=\"151.349\"/>\n",
"</g>\n",
"</g>\n",
"</svg>\n",
"\n"
],
"text/plain": [
"TikzPictures.TikzPicture(\"\\\\graph [layered layout, ] {\\n1/\\\"\\\\texttt{tuple}\\\",\\n2/\\\"\\\\texttt{f}\\\",\\n3/\\\"\\\\texttt{+}\\\",\\n4/\\\"\\\\textasciicircum\\\",\\n5/\\\"\\\\texttt{x}\\\",\\n6/\\\"\\\\texttt{2}\\\",\\n7/\\\"\\\\texttt{*}\\\",\\n8/\\\"\\\\texttt{2}\\\",\\n9/\\\"\\\\texttt{x}\\\",\\n10/\\\"\\\\texttt{g}\\\",\\n11/\\\"\\\\texttt{-}\\\",\\n12/\\\"\\\\texttt{y}\\\",\\n13/\\\"\\\\texttt{+}\\\",\\n14/\\\"\\\\textasciicircum\\\",\\n15/\\\"\\\\texttt{x}\\\",\\n16/\\\"\\\\texttt{2}\\\",\\n17/\\\"\\\\texttt{*}\\\",\\n18/\\\"\\\\texttt{2}\\\",\\n19/\\\"\\\\texttt{x}\\\",\\n;\\n1 -> 2;\\n1 -> 10;\\n2 -> 3;\\n3 -> 4;\\n3 -> 7;\\n4 -> 5;\\n4 -> 6;\\n7 -> 8;\\n7 -> 9;\\n10 -> 11;\\n11 -> 12;\\n11 -> 13;\\n13 -> 14;\\n13 -> 17;\\n14 -> 15;\\n14 -> 16;\\n17 -> 18;\\n17 -> 19;\\n};\\n\",\"\",\"\\\\usepackage{fontspec}\\n\\\\setmainfont{Latin Modern Math}\\n\\\\usetikzlibrary{graphs}\\n\\\\usetikzlibrary{graphdrawing}\\n\\n\\\\usegdlibrary{layered}\",true,true)"
]
},
"execution_count": 118,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"@tree (f(x^2 + 2x), g(y - (x^2 + 2x)))"
]
},
{
"cell_type": "code",
"execution_count": 119,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/svg+xml": [
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"62.159pt\" height=\"69.561pt\" viewBox=\"0 0 62.159 69.561\" version=\"1.1\">\n",
"<defs>\n",
"<g>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-0\">\n",
"<path style=\"stroke:none;\" d=\"\"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-1\">\n",
"<path style=\"stroke:none;\" d=\"M 5.140625 -0.296875 C 5.140625 -0.609375 4.9375 -0.609375 4.578125 -0.609375 L 4.578125 -3.015625 C 4.578125 -3.21875 4.578125 -4.359375 3.6875 -4.359375 C 3.390625 -4.359375 2.984375 -4.234375 2.703125 -3.84375 C 2.546875 -4.171875 2.265625 -4.359375 1.9375 -4.359375 C 1.625 -4.359375 1.328125 -4.21875 1.09375 -4 C 1.0625 -4.296875 0.875 -4.296875 0.6875 -4.296875 L 0.375 -4.296875 C 0.21875 -4.296875 -0.046875 -4.296875 -0.046875 -4 C -0.046875 -3.6875 0.171875 -3.6875 0.53125 -3.6875 L 0.53125 -0.609375 C 0.171875 -0.609375 -0.046875 -0.609375 -0.046875 -0.296875 C -0.046875 0 0.234375 0 0.375 0 L 1.25 0 C 1.390625 0 1.65625 0 1.65625 -0.296875 C 1.65625 -0.609375 1.453125 -0.609375 1.09375 -0.609375 L 1.09375 -2.390625 C 1.09375 -3.28125 1.5 -3.75 1.90625 -3.75 C 2.140625 -3.75 2.265625 -3.578125 2.265625 -2.9375 L 2.265625 -0.609375 C 2.078125 -0.609375 1.828125 -0.609375 1.828125 -0.296875 C 1.828125 0 2.109375 0 2.25 0 L 2.984375 0 C 3.140625 0 3.40625 0 3.40625 -0.296875 C 3.40625 -0.609375 3.1875 -0.609375 2.828125 -0.609375 L 2.828125 -2.390625 C 2.828125 -3.28125 3.234375 -3.75 3.65625 -3.75 C 3.875 -3.75 4.015625 -3.578125 4.015625 -2.9375 L 4.015625 -0.609375 C 3.828125 -0.609375 3.578125 -0.609375 3.578125 -0.296875 C 3.578125 0 3.84375 0 3.984375 0 L 4.734375 0 C 4.890625 0 5.140625 0 5.140625 -0.296875 Z M 5.140625 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-2\">\n",
"<path style=\"stroke:none;\" d=\"M 5.171875 -0.3125 C 5.171875 -0.609375 4.921875 -0.609375 4.78125 -0.609375 C 4.359375 -0.609375 4.25 -0.65625 4.171875 -0.6875 L 4.171875 -2.84375 C 4.171875 -3.546875 3.640625 -4.390625 2.203125 -4.390625 C 1.78125 -4.390625 0.75 -4.390625 0.75 -3.65625 C 0.75 -3.359375 0.96875 -3.203125 1.203125 -3.203125 C 1.359375 -3.203125 1.640625 -3.296875 1.640625 -3.65625 C 1.640625 -3.734375 1.65625 -3.75 1.859375 -3.765625 C 2 -3.78125 2.125 -3.78125 2.21875 -3.78125 C 2.96875 -3.78125 3.484375 -3.46875 3.484375 -2.765625 C 1.71875 -2.734375 0.5 -2.234375 0.5 -1.28125 C 0.5 -0.59375 1.125 0.0625 2.140625 0.0625 C 2.515625 0.0625 3.125 -0.015625 3.59375 -0.3125 C 3.8125 -0.015625 4.296875 0 4.671875 0 C 4.953125 0 5.171875 0 5.171875 -0.3125 Z M 3.484375 -1.328125 C 3.484375 -1.109375 3.484375 -0.890625 3.09375 -0.71875 C 2.734375 -0.546875 2.296875 -0.546875 2.21875 -0.546875 C 1.59375 -0.546875 1.1875 -0.890625 1.1875 -1.28125 C 1.1875 -1.765625 2.046875 -2.140625 3.484375 -2.171875 Z M 3.484375 -1.328125 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-3\">\n",
"<path style=\"stroke:none;\" d=\"M 4.640625 -1.09375 C 4.640625 -1.359375 4.359375 -1.359375 4.296875 -1.359375 C 4.140625 -1.359375 4.03125 -1.34375 3.96875 -1.140625 C 3.90625 -1.015625 3.71875 -0.546875 2.984375 -0.546875 C 2.140625 -0.546875 1.421875 -1.25 1.421875 -2.15625 C 1.421875 -2.625 1.6875 -3.78125 3.046875 -3.78125 C 3.25 -3.78125 3.640625 -3.78125 3.640625 -3.6875 C 3.65625 -3.34375 3.84375 -3.203125 4.078125 -3.203125 C 4.3125 -3.203125 4.53125 -3.375 4.53125 -3.65625 C 4.53125 -4.390625 3.484375 -4.390625 3.046875 -4.390625 C 1.328125 -4.390625 0.734375 -3.03125 0.734375 -2.15625 C 0.734375 -0.953125 1.671875 0.0625 2.921875 0.0625 C 4.3125 0.0625 4.640625 -0.921875 4.640625 -1.09375 Z M 4.640625 -1.09375 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-4\">\n",
"<path style=\"stroke:none;\" d=\"M 4.859375 -3.734375 C 4.859375 -3.9375 4.734375 -4.359375 3.90625 -4.359375 C 3.40625 -4.359375 2.765625 -4.171875 2.21875 -3.546875 L 2.21875 -3.890625 C 2.21875 -4.203125 2.15625 -4.296875 1.8125 -4.296875 L 0.71875 -4.296875 C 0.5625 -4.296875 0.3125 -4.296875 0.3125 -4 C 0.3125 -3.6875 0.5625 -3.6875 0.71875 -3.6875 L 1.53125 -3.6875 L 1.53125 -0.609375 L 0.71875 -0.609375 C 0.5625 -0.609375 0.3125 -0.609375 0.3125 -0.3125 C 0.3125 0 0.5625 0 0.71875 0 L 3.3125 0 C 3.46875 0 3.734375 0 3.734375 -0.296875 C 3.734375 -0.609375 3.46875 -0.609375 3.3125 -0.609375 L 2.21875 -0.609375 L 2.21875 -1.859375 C 2.21875 -2.796875 2.796875 -3.75 4 -3.75 C 4.015625 -3.515625 4.1875 -3.3125 4.4375 -3.3125 C 4.65625 -3.3125 4.859375 -3.46875 4.859375 -3.734375 Z M 4.859375 -3.734375 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-5\">\n",
"<path style=\"stroke:none;\" d=\"M 4.65625 -2.15625 C 4.65625 -3.40625 3.734375 -4.390625 2.609375 -4.390625 C 1.5 -4.390625 0.5625 -3.40625 0.5625 -2.15625 C 0.5625 -0.890625 1.515625 0.0625 2.609375 0.0625 C 3.703125 0.0625 4.65625 -0.890625 4.65625 -2.15625 Z M 3.96875 -2.21875 C 3.96875 -1.296875 3.34375 -0.546875 2.609375 -0.546875 C 1.875 -0.546875 1.25 -1.296875 1.25 -2.21875 C 1.25 -3.125 1.90625 -3.78125 2.609375 -3.78125 C 3.328125 -3.78125 3.96875 -3.125 3.96875 -2.21875 Z M 3.96875 -2.21875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-6\">\n",
"<path style=\"stroke:none;\" d=\"M 4.65625 -0.296875 C 4.65625 -0.609375 4.421875 -0.609375 4.25 -0.609375 L 2.953125 -0.609375 L 2.953125 -5.6875 C 2.953125 -5.984375 2.90625 -6.09375 2.5625 -6.09375 L 0.984375 -6.09375 C 0.828125 -6.09375 0.578125 -6.09375 0.578125 -5.78125 C 0.578125 -5.484375 0.84375 -5.484375 0.984375 -5.484375 L 2.265625 -5.484375 L 2.265625 -0.609375 L 0.984375 -0.609375 C 0.828125 -0.609375 0.578125 -0.609375 0.578125 -0.296875 C 0.578125 0 0.84375 0 0.984375 0 L 4.25 0 C 4.40625 0 4.65625 0 4.65625 -0.296875 Z M 4.65625 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-7\">\n",
"<path style=\"stroke:none;\" d=\"M 4.78125 -0.796875 C 4.78125 -1.078125 4.5 -1.078125 4.40625 -1.078125 C 4.234375 -1.078125 4.203125 -1.078125 4.109375 -0.984375 C 3.765625 -0.65625 3.375 -0.546875 3.046875 -0.546875 C 1.96875 -0.546875 1 -1.625 1 -3.046875 C 1 -4.53125 2 -5.546875 3.03125 -5.546875 C 3.3125 -5.546875 3.765625 -5.4375 3.984375 -4.828125 C 3.953125 -4.859375 3.671875 -5.03125 3.34375 -5.03125 C 2.546875 -5.03125 1.90625 -4.171875 1.90625 -3.046875 C 1.90625 -1.859375 2.609375 -1.0625 3.34375 -1.0625 C 3.828125 -1.0625 4.78125 -1.46875 4.78125 -3.203125 C 4.78125 -3.84375 4.78125 -6.15625 3.03125 -6.15625 C 1.671875 -6.15625 0.4375 -4.84375 0.4375 -3.046875 C 0.4375 -1.265625 1.65625 0.0625 3.046875 0.0625 C 3.953125 0.0625 4.78125 -0.515625 4.78125 -0.796875 Z M 4.234375 -3.046875 C 4.234375 -2.234375 3.78125 -1.671875 3.34375 -1.671875 C 2.875 -1.671875 2.46875 -2.265625 2.46875 -3.046875 C 2.46875 -3.875 2.921875 -4.421875 3.34375 -4.421875 C 3.78125 -4.421875 4.234375 -3.84375 4.234375 -3.046875 Z M 4.234375 -3.046875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-8\">\n",
"<path style=\"stroke:none;\" d=\"M 4.46875 -1.25 C 4.46875 -1.4375 4.46875 -1.640625 4.125 -1.640625 C 3.796875 -1.640625 3.78125 -1.4375 3.78125 -1.265625 C 3.78125 -0.640625 3.203125 -0.546875 2.984375 -0.546875 C 2.21875 -0.546875 2.21875 -1.0625 2.21875 -1.3125 L 2.21875 -3.6875 L 3.84375 -3.6875 C 4 -3.6875 4.25 -3.6875 4.25 -3.984375 C 4.25 -4.296875 4 -4.296875 3.84375 -4.296875 L 2.21875 -4.296875 L 2.21875 -5.109375 C 2.21875 -5.296875 2.21875 -5.515625 1.875 -5.515625 C 1.53125 -5.515625 1.53125 -5.3125 1.53125 -5.109375 L 1.53125 -4.296875 L 0.65625 -4.296875 C 0.5 -4.296875 0.25 -4.296875 0.25 -3.984375 C 0.25 -3.6875 0.5 -3.6875 0.640625 -3.6875 L 1.53125 -3.6875 L 1.53125 -1.25 C 1.53125 -0.296875 2.203125 0.0625 2.9375 0.0625 C 3.671875 0.0625 4.46875 -0.375 4.46875 -1.25 Z M 4.46875 -1.25 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-9\">\n",
"<path style=\"stroke:none;\" d=\"M 4.53125 -0.296875 C 4.53125 -0.609375 4.28125 -0.609375 4.125 -0.609375 L 3.078125 -0.609375 L 3.078125 -3.890625 C 3.078125 -4.203125 3.015625 -4.296875 2.6875 -4.296875 L 1.265625 -4.296875 C 1.109375 -4.296875 0.859375 -4.296875 0.859375 -4 C 0.859375 -3.6875 1.109375 -3.6875 1.265625 -3.6875 L 2.390625 -3.6875 L 2.390625 -0.609375 L 1.1875 -0.609375 C 1.03125 -0.609375 0.78125 -0.609375 0.78125 -0.296875 C 0.78125 0 1.03125 0 1.1875 0 L 4.125 0 C 4.28125 0 4.53125 0 4.53125 -0.296875 Z M 3.125 -5.53125 C 3.125 -5.8125 2.90625 -6.03125 2.625 -6.03125 C 2.34375 -6.03125 2.125 -5.8125 2.125 -5.53125 C 2.125 -5.25 2.34375 -5.03125 2.625 -5.03125 C 2.90625 -5.03125 3.125 -5.25 3.125 -5.53125 Z M 3.125 -5.53125 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-10\">\n",
"<path style=\"stroke:none;\" d=\"M 4.625 -1.09375 C 4.625 -1.359375 4.34375 -1.359375 4.28125 -1.359375 C 4.09375 -1.359375 4.015625 -1.328125 3.953125 -1.140625 C 3.734375 -0.640625 3.1875 -0.546875 2.90625 -0.546875 C 2.15625 -0.546875 1.421875 -1.046875 1.25 -1.90625 L 4.234375 -1.90625 C 4.4375 -1.90625 4.625 -1.90625 4.625 -2.265625 C 4.625 -3.40625 3.984375 -4.390625 2.6875 -4.390625 C 1.5 -4.390625 0.546875 -3.390625 0.546875 -2.15625 C 0.546875 -0.953125 1.5625 0.0625 2.84375 0.0625 C 4.15625 0.0625 4.625 -0.84375 4.625 -1.09375 Z M 3.921875 -2.5 L 1.265625 -2.5 C 1.40625 -3.234375 2 -3.78125 2.6875 -3.78125 C 3.203125 -3.78125 3.828125 -3.53125 3.921875 -2.5 Z M 3.921875 -2.5 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-11\">\n",
"<path style=\"stroke:none;\" d=\"M 4.578125 -1.25 C 4.578125 -2.28125 3.296875 -2.5 2.96875 -2.546875 L 2.296875 -2.65625 C 2 -2.703125 1.328125 -2.828125 1.328125 -3.203125 C 1.328125 -3.46875 1.640625 -3.78125 2.59375 -3.78125 C 3.421875 -3.78125 3.5625 -3.484375 3.59375 -3.21875 C 3.59375 -3.046875 3.625 -2.875 3.921875 -2.875 C 4.28125 -2.875 4.28125 -3.09375 4.28125 -3.296875 L 4.28125 -3.984375 C 4.28125 -4.140625 4.28125 -4.390625 3.984375 -4.390625 C 3.734375 -4.390625 3.703125 -4.25 3.671875 -4.171875 C 3.234375 -4.390625 2.796875 -4.390625 2.609375 -4.390625 C 0.953125 -4.390625 0.71875 -3.5625 0.71875 -3.203125 C 0.71875 -2.296875 1.765625 -2.125 2.6875 -1.984375 C 3.171875 -1.90625 3.96875 -1.78125 3.96875 -1.25 C 3.96875 -0.875 3.59375 -0.546875 2.6875 -0.546875 C 2.21875 -0.546875 1.671875 -0.65625 1.421875 -1.4375 C 1.359375 -1.609375 1.328125 -1.71875 1.0625 -1.71875 C 0.71875 -1.71875 0.71875 -1.515625 0.71875 -1.3125 L 0.71875 -0.34375 C 0.71875 -0.1875 0.71875 0.0625 1.015625 0.0625 C 1.109375 0.0625 1.265625 0.046875 1.390625 -0.3125 C 1.875 0.046875 2.40625 0.0625 2.6875 0.0625 C 4.25 0.0625 4.578125 -0.765625 4.578125 -1.25 Z M 4.578125 -1.25 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-12\">\n",
"<path style=\"stroke:none;\" d=\"M 5.109375 -0.296875 C 5.109375 -0.609375 4.859375 -0.609375 4.6875 -0.609375 L 4.25 -0.609375 L 4.25 -2.921875 C 4.25 -3.921875 3.75 -4.359375 2.953125 -4.359375 C 2.296875 -4.359375 1.84375 -4.015625 1.65625 -3.828125 C 1.65625 -4.140625 1.65625 -4.296875 1.25 -4.296875 L 0.53125 -4.296875 C 0.375 -4.296875 0.125 -4.296875 0.125 -3.984375 C 0.125 -3.6875 0.375 -3.6875 0.515625 -3.6875 L 0.96875 -3.6875 L 0.96875 -0.609375 L 0.53125 -0.609375 C 0.375 -0.609375 0.125 -0.609375 0.125 -0.296875 C 0.125 0 0.375 0 0.515625 0 L 2.109375 0 C 2.25 0 2.5 0 2.5 -0.296875 C 2.5 -0.609375 2.25 -0.609375 2.09375 -0.609375 L 1.65625 -0.609375 L 1.65625 -2.375 C 1.65625 -3.375 2.390625 -3.75 2.90625 -3.75 C 3.421875 -3.75 3.5625 -3.46875 3.5625 -2.875 L 3.5625 -0.609375 L 3.1875 -0.609375 C 3.015625 -0.609375 2.765625 -0.609375 2.765625 -0.296875 C 2.765625 0 3.046875 0 3.1875 0 L 4.703125 0 C 4.84375 0 5.109375 0 5.109375 -0.296875 Z M 5.109375 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-13\">\n",
"<path style=\"stroke:none;\" d=\"M 4.40625 -0.296875 C 4.40625 -0.609375 4.171875 -0.609375 4 -0.609375 L 3.09375 -0.609375 L 3.09375 -5.796875 C 3.09375 -5.953125 3.09375 -6.203125 2.796875 -6.203125 C 2.609375 -6.203125 2.546875 -6.078125 2.5 -5.96875 C 2.125 -5.109375 1.609375 -5 1.421875 -4.984375 C 1.25 -4.96875 1.046875 -4.953125 1.046875 -4.671875 C 1.046875 -4.421875 1.21875 -4.375 1.375 -4.375 C 1.5625 -4.375 1.96875 -4.4375 2.40625 -4.8125 L 2.40625 -0.609375 L 1.5 -0.609375 C 1.34375 -0.609375 1.109375 -0.609375 1.109375 -0.296875 C 1.109375 0 1.359375 0 1.5 0 L 4 0 C 4.15625 0 4.40625 0 4.40625 -0.296875 Z M 4.40625 -0.296875 \"/>\n",
"</symbol>\n",
"<symbol overflow=\"visible\" id=\"glyph-1479829359949172-0-14\">\n",
"<path style=\"stroke:none;\" d=\"M 4.71875 -3.046875 C 4.71875 -4.890625 3.703125 -6.203125 2.609375 -6.203125 C 1.5 -6.203125 0.5 -4.859375 0.5 -3.046875 C 0.5 -1.203125 1.515625 0.109375 2.609375 0.109375 C 3.734375 0.109375 4.71875 -1.21875 4.71875 -3.046875 Z M 4.03125 -3.15625 C 4.03125 -1.671875 3.390625 -0.5 2.609375 -0.5 C 1.828125 -0.5 1.1875 -1.671875 1.1875 -3.15625 C 1.1875 -4.609375 1.875 -5.59375 2.609375 -5.59375 C 3.34375 -5.59375 4.03125 -4.609375 4.03125 -3.15625 Z M 4.03125 -3.15625 \"/>\n",
"</symbol>\n",
"</g>\n",
"</defs>\n",
"<g id=\"surface1\">\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -4.023125 -6.594281 L -13.019219 -21.332562 \" transform=\"matrix(1,0,0,-1,33.695,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196025 1.59298 C -1.096426 0.994861 -0.000508881 0.0987392 0.299009 -0.00217887 C 0.000290379 -0.0975269 -1.094932 -0.994643 -1.194933 -1.595596 \" transform=\"matrix(-0.52095,0.8537,0.8537,0.52095,20.67716,27.72634)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 4.02375 -6.594281 L 13.055 -21.391156 \" transform=\"matrix(1,0,0,-1,33.695,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.196234 1.595649 C -1.09625 0.994703 0.000966692 0.100906 0.300977 0.000183649 C 0.00146182 -0.100725 -1.094461 -0.996805 -1.194074 -1.594912 \" transform=\"matrix(0.52098,0.8537,0.8537,-0.52098,46.74929,27.78612)\"/>\n",
"<path style=\"fill:none;stroke-width:0.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M 17.297187 -34.910687 L 17.297187 -49.563031 \" transform=\"matrix(1,0,0,-1,33.695,6.394)\"/>\n",
"<path style=\"fill:none;stroke-width:0.31879;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;\" d=\"M -1.194571 1.592617 C -1.096915 0.994961 0.00074125 0.10043 0.297616 -0.0011325 C 0.00074125 -0.0987888 -1.096915 -0.997226 -1.194571 -1.594883 \" transform=\"matrix(0,1,1,0,50.99332,55.95629)\"/>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949172-0-1\" x=\"10.158\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-2\" x=\"15.388386\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-3\" x=\"20.618772\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-4\" x=\"25.849158\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-5\" x=\"31.079544\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-3\" x=\"36.30993\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-2\" x=\"41.540316\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-6\" x=\"46.770702\" y=\"9.408\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-6\" x=\"52.001088\" y=\"9.408\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949172-0-7\" x=\"3.321\" y=\"37.784\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-8\" x=\"8.551386\" y=\"37.784\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-9\" x=\"13.781772\" y=\"37.784\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-1\" x=\"19.012158\" y=\"37.784\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-10\" x=\"24.242544\" y=\"37.784\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949172-0-11\" x=\"43.147\" y=\"37.725\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-9\" x=\"48.377386\" y=\"37.725\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-12\" x=\"53.607772\" y=\"37.725\"/>\n",
"</g>\n",
"<g style=\"fill:rgb(0%,0%,0%);fill-opacity:1;\">\n",
" <use xlink:href=\"#glyph-1479829359949172-0-13\" x=\"45.762\" y=\"66.131\"/>\n",
" <use xlink:href=\"#glyph-1479829359949172-0-14\" x=\"50.992386\" y=\"66.131\"/>\n",
"</g>\n",
"</g>\n",
"</svg>\n",
"\n"
],
"text/plain": [
"TikzPictures.TikzPicture(\"\\\\graph [layered layout, ] {\\n1/\\\"\\\\texttt{macrocall}\\\",\\n2/\\\"\\\\texttt{@time}\\\",\\n3/\\\"\\\\texttt{sin}\\\",\\n4/\\\"\\\\texttt{10}\\\",\\n;\\n1 -> 2;\\n1 -> 3;\\n3 -> 4;\\n};\\n\",\"\",\"\\\\usepackage{fontspec}\\n\\\\setmainfont{Latin Modern Math}\\n\\\\usetikzlibrary{graphs}\\n\\\\usetikzlibrary{graphdrawing}\\n\\n\\\\usegdlibrary{layered}\",true,true)"
]
},
"execution_count": 119,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"@tree @time sin(10)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Julia 0.5.0",
"language": "julia",
"name": "julia-0.5"
},
"language_info": {
"file_extension": ".jl",
"mimetype": "application/julia",
"name": "julia",
"version": "0.5.0"
},
"toc": {
"nav_menu": {
"height": "30px",
"width": "252px"
},
"navigate_menu": true,
"number_sections": true,
"sideBar": true,
"threshold": 4,
"toc_cell": false,
"toc_section_display": "block",
"toc_window_display": false
}
},
"nbformat": 4,
"nbformat_minor": 1
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment