diff options
| author | Cliff Click <cliffc@acm.org> | 2026-10-02 16:21:02 -0700 |
|---|---|---|
| committer | Cliff Click <cliffc@acm.org> | 2026-10-02 16:21:02 -0700 |
| commit | 41ae6269689e2b3cde9f7ac4227923d4085dceda (patch) | |
| tree | 400bf2e5d6ae05564cb04aaea3104c031f321f9e /chapter12/docs | |
| parent | b33647231e20e2dc155beb2c8fe721f952d67a54 (diff) | |
| download | Simple-41ae6269689e2b3cde9f7ac4227923d4085dceda.tar.gz Simple-41ae6269689e2b3cde9f7ac4227923d4085dceda.zip | |
More better layout ch10a,b,11
Diffstat (limited to 'chapter12/docs')
| -rw-r--r-- | chapter12/docs/lattice.gv | 25 | ||||
| -rw-r--r-- | chapter12/docs/lattice.svg | 322 |
2 files changed, 195 insertions, 152 deletions
diff --git a/chapter12/docs/lattice.gv b/chapter12/docs/lattice.gv index f3b5051c..e8631cd5 100644 --- a/chapter12/docs/lattice.gv +++ b/chapter12/docs/lattice.gv @@ -118,9 +118,28 @@ digraph Lattice { node [fillcolor="#ffc0cb"]; TUPLE_TOP [label="⊤:tuple"]; TUPLE_BOT [label="⊥:tuple"]; - TUPLE1 [label="(type)", shape=box]; - TUPLE2 [label="(type, type)", shape=box]; - TUPLEN [label="(type, …)", shape=box]; + // Each black element stands for a recursively nested type lattice. + TUPLE1 [shape=plain, label=< + <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" CELLPADDING="4"> + <TR><TD BGCOLOR="#ffc0cb">tuple</TD></TR> + <TR><TD BGCOLOR="black"><FONT COLOR="white">type</FONT></TD></TR> + </TABLE> + >]; + TUPLE2 [shape=plain, label=< + <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" CELLPADDING="4"> + <TR><TD BGCOLOR="#ffc0cb">tuple</TD></TR> + <TR><TD BGCOLOR="black"><FONT COLOR="white">type</FONT></TD></TR> + <TR><TD BGCOLOR="black"><FONT COLOR="white">type</FONT></TD></TR> + </TABLE> + >]; + TUPLEN [shape=plain, label=< + <TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0" CELLPADDING="4"> + <TR><TD BGCOLOR="#ffc0cb">tuple</TD></TR> + <TR><TD BGCOLOR="black"><FONT COLOR="white">type</FONT></TD></TR> + <TR><TD BGCOLOR="black"><FONT COLOR="white">…</FONT></TD></TR> + <TR><TD BGCOLOR="black"><FONT COLOR="white">type</FONT></TD></TR> + </TABLE> + >]; {rank=same; TUPLE1; TUPLE2; TUPLEN;} TUPLE1 -> TUPLE2 -> TUPLEN [style=invis]; TUPLE_TOP -> {TUPLE1 TUPLE2 TUPLEN}; diff --git a/chapter12/docs/lattice.svg b/chapter12/docs/lattice.svg index bc64abb6..41804d92 100644 --- a/chapter12/docs/lattice.svg +++ b/chapter12/docs/lattice.svg @@ -4,141 +4,141 @@ <!-- Generated by graphviz version 12.2.0 (20241103.1931) --> <!-- Title: Lattice Pages: 1 --> -<svg width="2357pt" height="533pt" - viewBox="0.00 0.00 2357.00 533.45" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> -<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 529.45)"> +<svg width="2261pt" height="603pt" + viewBox="0.00 0.00 2261.00 603.45" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 599.45)"> <title>Lattice</title> -<polygon fill="white" stroke="none" points="-4,4 -4,-529.45 2353,-529.45 2353,4 -4,4"/> +<polygon fill="white" stroke="none" points="-4,4 -4,-599.45 2257,-599.45 2257,4 -4,4"/> <g id="clust1" class="cluster"> <title>cluster_control</title> -<polygon fill="none" stroke="#cccccc" points="8,-85.99 8,-454.71 98,-454.71 98,-85.99 8,-85.99"/> -<text text-anchor="middle" x="53" y="-437.41" font-family="Arial" font-size="14.00">Control</text> +<polygon fill="none" stroke="#cccccc" points="8,-85.99 8,-524.71 98,-524.71 98,-85.99 8,-85.99"/> +<text text-anchor="middle" x="53" y="-507.41" font-family="Arial" font-size="14.00">Control</text> </g> <g id="clust2" class="cluster"> <title>cluster_integer</title> -<polygon fill="none" stroke="#cccccc" points="106,-85.99 106,-454.71 404,-454.71 404,-85.99 106,-85.99"/> -<text text-anchor="middle" x="255" y="-437.41" font-family="Arial" font-size="14.00">Integer</text> +<polygon fill="none" stroke="#cccccc" points="106,-85.99 106,-524.71 404,-524.71 404,-85.99 106,-85.99"/> +<text text-anchor="middle" x="255" y="-507.41" font-family="Arial" font-size="14.00">Integer</text> </g> <g id="clust6" class="cluster"> <title>cluster_float</title> -<polygon fill="none" stroke="#cccccc" points="412,-85.99 412,-454.71 942,-454.71 942,-85.99 412,-85.99"/> -<text text-anchor="middle" x="677" y="-437.41" font-family="Arial" font-size="14.00">Float</text> +<polygon fill="none" stroke="#cccccc" points="412,-85.99 412,-524.71 942,-524.71 942,-85.99 412,-85.99"/> +<text text-anchor="middle" x="677" y="-507.41" font-family="Arial" font-size="14.00">Float</text> </g> <g id="clust8" class="cluster"> <title>cluster_pointer</title> -<polygon fill="none" stroke="#cccccc" points="950,-75 950,-465.7 1431,-465.7 1431,-75 950,-75"/> -<text text-anchor="middle" x="1190.5" y="-448.4" font-family="Arial" font-size="14.00">Pointer = nullability × struct type</text> +<polygon fill="none" stroke="#cccccc" points="950,-75 950,-535.7 1431,-535.7 1431,-75 950,-75"/> +<text text-anchor="middle" x="1190.5" y="-518.4" font-family="Arial" font-size="14.00">Pointer = nullability × struct type</text> </g> <g id="clust15" class="cluster"> <title>cluster_struct</title> -<polygon fill="none" stroke="#cccccc" points="1439,-75 1439,-481.45 1767,-481.45 1767,-75 1439,-75"/> -<text text-anchor="middle" x="1603" y="-464.15" font-family="Arial" font-size="14.00">Struct</text> -<text text-anchor="middle" x="1603" y="-448.4" font-family="Arial" font-size="14.00">named collection of named scalar types</text> +<polygon fill="none" stroke="#cccccc" points="1439,-75 1439,-551.45 1767,-551.45 1767,-75 1439,-75"/> +<text text-anchor="middle" x="1603" y="-534.15" font-family="Arial" font-size="14.00">Struct</text> +<text text-anchor="middle" x="1603" y="-518.4" font-family="Arial" font-size="14.00">named collection of named scalar types</text> </g> <g id="clust19" class="cluster"> <title>cluster_memory</title> -<polygon fill="none" stroke="#cccccc" points="1775,-85.99 1775,-470.46 2057,-470.46 2057,-85.99 1775,-85.99"/> -<text text-anchor="middle" x="1916" y="-453.16" font-family="Arial" font-size="14.00">Memory</text> -<text text-anchor="middle" x="1916" y="-437.41" font-family="Arial" font-size="14.00">precise alias slices</text> +<polygon fill="none" stroke="#cccccc" points="1775,-85.99 1775,-540.46 2057,-540.46 2057,-85.99 1775,-85.99"/> +<text text-anchor="middle" x="1916" y="-523.16" font-family="Arial" font-size="14.00">Memory</text> +<text text-anchor="middle" x="1916" y="-507.41" font-family="Arial" font-size="14.00">precise alias slices</text> </g> <g id="clust23" class="cluster"> <title>cluster_tuple</title> -<polygon fill="none" stroke="#cccccc" points="2065,-85.99 2065,-470.46 2341,-470.46 2341,-85.99 2065,-85.99"/> -<text text-anchor="middle" x="2203" y="-453.16" font-family="Arial" font-size="14.00">Tuple</text> -<text text-anchor="middle" x="2203" y="-437.41" font-family="Arial" font-size="14.00">collection of types</text> +<polygon fill="none" stroke="#cccccc" points="2065,-85.99 2065,-540.46 2245,-540.46 2245,-85.99 2065,-85.99"/> +<text text-anchor="middle" x="2155" y="-523.16" font-family="Arial" font-size="14.00">Tuple</text> +<text text-anchor="middle" x="2155" y="-507.41" font-family="Arial" font-size="14.00">collection of types</text> </g> <!-- TOP --> <g id="node1" class="node"> <title>TOP</title> -<ellipse fill="black" stroke="black" cx="1171" cy="-507.45" rx="27" ry="18"/> -<text text-anchor="middle" x="1171" y="-503.35" font-family="DejaVu Sans" font-size="13.00" fill="white">⊤</text> +<ellipse fill="black" stroke="black" cx="1171" cy="-577.45" rx="27" ry="18"/> +<text text-anchor="middle" x="1171" y="-573.35" font-family="DejaVu Sans" font-size="13.00" fill="white">⊤</text> </g> <!-- XCTRL --> <g id="node3" class="node"> <title>XCTRL</title> -<ellipse fill="#ffff00" stroke="black" cx="53" cy="-404.96" rx="36.51" ry="18"/> -<text text-anchor="middle" x="53" y="-400.86" font-family="DejaVu Sans" font-size="13.00">⊤:ctrl</text> +<ellipse fill="#ffff00" stroke="black" cx="53" cy="-474.96" rx="36.51" ry="18"/> +<text text-anchor="middle" x="53" y="-470.86" font-family="DejaVu Sans" font-size="13.00">⊤:ctrl</text> </g> <!-- TOP->XCTRL --> <g id="edge68" class="edge"> <title>TOP->XCTRL</title> -<path fill="none" stroke="#555555" d="M1143.75,-506.53C981.55,-506.91 148.8,-507.58 102,-481.45 82.13,-470.35 69.01,-447.44 61.39,-429.76"/> -<polygon fill="#555555" stroke="#555555" points="63.42,-429.19 59.21,-424.43 59.54,-430.78 63.42,-429.19"/> +<path fill="none" stroke="#555555" d="M1143.75,-576.53C981.55,-576.91 148.8,-577.58 102,-551.45 82.13,-540.35 69.01,-517.44 61.39,-499.76"/> +<polygon fill="#555555" stroke="#555555" points="63.42,-499.19 59.21,-494.43 59.54,-500.78 63.42,-499.19"/> </g> <!-- INT_TOP --> <g id="node5" class="node"> <title>INT_TOP</title> -<ellipse fill="#add8e6" stroke="black" cx="353" cy="-404.96" rx="33.44" ry="18"/> -<text text-anchor="middle" x="353" y="-400.86" font-family="DejaVu Sans" font-size="13.00">⊤:int</text> +<ellipse fill="#add8e6" stroke="black" cx="353" cy="-474.96" rx="33.44" ry="18"/> +<text text-anchor="middle" x="353" y="-470.86" font-family="DejaVu Sans" font-size="13.00">⊤:int</text> </g> <!-- TOP->INT_TOP --> <g id="edge69" class="edge"> <title>TOP->INT_TOP</title> -<path fill="none" stroke="#555555" d="M1143.82,-506.22C1011.67,-505.05 441.13,-498.99 408,-481.45 387.13,-470.4 372.2,-447.48 363.21,-429.78"/> -<polygon fill="#555555" stroke="#555555" points="365.11,-428.89 360.61,-424.41 361.33,-430.72 365.11,-428.89"/> +<path fill="none" stroke="#555555" d="M1143.82,-576.22C1011.67,-575.05 441.13,-568.99 408,-551.45 387.13,-540.4 372.2,-517.48 363.21,-499.78"/> +<polygon fill="#555555" stroke="#555555" points="365.11,-498.89 360.61,-494.41 361.33,-500.72 365.11,-498.89"/> </g> <!-- FLT_TOP --> <g id="node10" class="node"> <title>FLT_TOP</title> -<ellipse fill="aqua" stroke="black" cx="755" cy="-404.96" rx="31.39" ry="18"/> -<text text-anchor="start" x="740" y="-401.86" font-family="DejaVu Sans" font-weight="bold" font-size="13.00">⊤</text> -<text text-anchor="start" x="752" y="-401.86" font-family="DejaVu Sans" font-size="13.00">:flt</text> +<ellipse fill="aqua" stroke="black" cx="755" cy="-474.96" rx="31.39" ry="18"/> +<text text-anchor="start" x="740" y="-471.86" font-family="DejaVu Sans" font-weight="bold" font-size="13.00">⊤</text> +<text text-anchor="start" x="752" y="-471.86" font-family="DejaVu Sans" font-size="13.00">:flt</text> </g> <!-- TOP->FLT_TOP --> <g id="edge70" class="edge"> <title>TOP->FLT_TOP</title> -<path fill="none" stroke="#555555" d="M1143.92,-505.75C1101.25,-504.14 1015.99,-498.84 946,-481.45 886.87,-466.76 821.59,-438.05 784.7,-420.58"/> -<polygon fill="#555555" stroke="#555555" points="785.84,-418.79 779.52,-418.1 784.03,-422.58 785.84,-418.79"/> +<path fill="none" stroke="#555555" d="M1143.92,-575.75C1101.25,-574.14 1015.99,-568.84 946,-551.45 886.87,-536.76 821.59,-508.05 784.7,-490.58"/> +<polygon fill="#555555" stroke="#555555" points="785.84,-488.79 779.52,-488.1 784.03,-492.58 785.84,-488.79"/> </g> <!-- PTR_TOP --> <g id="node15" class="node"> <title>PTR_TOP</title> -<ellipse fill="#008000" stroke="black" cx="1171" cy="-404.96" rx="61.7" ry="28.99"/> -<text text-anchor="middle" x="1171" y="-409.11" font-family="DejaVu Sans" font-size="13.00" fill="white">⊤:ptr</text> -<text text-anchor="middle" x="1171" y="-392.61" font-family="DejaVu Sans" font-size="13.00" fill="white">[*⊤:struct]</text> +<ellipse fill="#008000" stroke="black" cx="1171" cy="-474.96" rx="61.7" ry="28.99"/> +<text text-anchor="middle" x="1171" y="-479.11" font-family="DejaVu Sans" font-size="13.00" fill="white">⊤:ptr</text> +<text text-anchor="middle" x="1171" y="-462.61" font-family="DejaVu Sans" font-size="13.00" fill="white">[*⊤:struct]</text> </g> <!-- TOP->PTR_TOP --> <g id="edge71" class="edge"> <title>TOP->PTR_TOP</title> -<path fill="none" stroke="#555555" d="M1171,-489.4C1171,-476.29 1171,-457.72 1171,-441.43"/> -<polygon fill="#555555" stroke="#555555" points="1173.1,-441.64 1171,-435.64 1168.9,-441.64 1173.1,-441.64"/> +<path fill="none" stroke="#555555" d="M1171,-559.4C1171,-546.29 1171,-527.72 1171,-511.43"/> +<polygon fill="#555555" stroke="#555555" points="1173.1,-511.64 1171,-505.64 1168.9,-511.64 1173.1,-511.64"/> </g> <!-- STRUCT_TOP --> <g id="node25" class="node"> <title>STRUCT_TOP</title> -<ellipse fill="#90ee90" stroke="black" cx="1558" cy="-404.96" rx="64.35" ry="28.99"/> -<text text-anchor="middle" x="1558" y="-409.11" font-family="DejaVu Sans" font-size="13.00">⊤:struct</text> -<text text-anchor="middle" x="1558" y="-392.61" font-family="DejaVu Sans" font-size="13.00">[struct top]</text> +<ellipse fill="#90ee90" stroke="black" cx="1558" cy="-474.96" rx="64.35" ry="28.99"/> +<text text-anchor="middle" x="1558" y="-479.11" font-family="DejaVu Sans" font-size="13.00">⊤:struct</text> +<text text-anchor="middle" x="1558" y="-462.61" font-family="DejaVu Sans" font-size="13.00">[struct top]</text> </g> <!-- TOP->STRUCT_TOP --> <g id="edge72" class="edge"> <title>TOP->STRUCT_TOP</title> -<path fill="none" stroke="#555555" d="M1197.97,-505.44C1256.13,-503.02 1391.55,-495.96 1435,-481.45 1466.2,-471.03 1497.74,-451.44 1521.07,-434.83"/> -<polygon fill="#555555" stroke="#555555" points="1522.26,-436.56 1525.9,-431.35 1519.8,-433.16 1522.26,-436.56"/> +<path fill="none" stroke="#555555" d="M1197.97,-575.44C1256.13,-573.02 1391.55,-565.96 1435,-551.45 1466.2,-541.03 1497.74,-521.44 1521.07,-504.83"/> +<polygon fill="#555555" stroke="#555555" points="1522.26,-506.56 1525.9,-501.35 1519.8,-503.16 1522.26,-506.56"/> </g> <!-- MEM_TOP --> <g id="node31" class="node"> <title>MEM_TOP</title> -<ellipse fill="#00008b" stroke="black" cx="1881" cy="-404.96" rx="44.7" ry="18"/> -<text text-anchor="middle" x="1881" y="-400.86" font-family="DejaVu Sans" font-size="13.00" fill="white">⊤:mem</text> +<ellipse fill="#00008b" stroke="black" cx="1881" cy="-474.96" rx="44.7" ry="18"/> +<text text-anchor="middle" x="1881" y="-470.86" font-family="DejaVu Sans" font-size="13.00" fill="white">⊤:mem</text> </g> <!-- TOP->MEM_TOP --> <g id="edge73" class="edge"> <title>TOP->MEM_TOP</title> -<path fill="none" stroke="#555555" d="M1198.14,-506.2C1307.98,-505.07 1716.29,-499.67 1771,-481.45 1804.95,-470.14 1837.98,-444.99 1858.84,-426.82"/> -<polygon fill="#555555" stroke="#555555" points="1860.16,-428.46 1863.26,-422.9 1857.37,-425.31 1860.16,-428.46"/> +<path fill="none" stroke="#555555" d="M1198.14,-576.2C1307.98,-575.07 1716.29,-569.67 1771,-551.45 1804.95,-540.14 1837.98,-514.99 1858.84,-496.82"/> +<polygon fill="#555555" stroke="#555555" points="1860.16,-498.46 1863.26,-492.9 1857.37,-495.31 1860.16,-498.46"/> </g> <!-- TUPLE_TOP --> <g id="node36" class="node"> <title>TUPLE_TOP</title> -<ellipse fill="#ffc0cb" stroke="black" cx="2118" cy="-404.96" rx="44.7" ry="18"/> -<text text-anchor="middle" x="2118" y="-400.86" font-family="DejaVu Sans" font-size="13.00">⊤:tuple</text> +<ellipse fill="#ffc0cb" stroke="black" cx="2118" cy="-474.96" rx="44.7" ry="18"/> +<text text-anchor="middle" x="2118" y="-470.86" font-family="DejaVu Sans" font-size="13.00">⊤:tuple</text> </g> <!-- TOP->TUPLE_TOP --> <g id="edge74" class="edge"> <title>TOP->TUPLE_TOP</title> -<path fill="none" stroke="#555555" d="M1198.25,-506.35C1343.51,-505.71 2021.76,-501.68 2061,-481.45 2082.45,-470.39 2098.06,-447.15 2107.46,-429.36"/> -<polygon fill="#555555" stroke="#555555" points="2109.12,-430.74 2109.96,-424.43 2105.37,-428.84 2109.12,-430.74"/> +<path fill="none" stroke="#555555" d="M1198.25,-576.35C1343.51,-575.71 2021.76,-571.68 2061,-551.45 2082.45,-540.39 2098.06,-517.15 2107.46,-499.36"/> +<polygon fill="#555555" stroke="#555555" points="2109.12,-500.74 2109.96,-494.43 2105.37,-498.84 2109.12,-500.74"/> </g> <!-- BOT --> <g id="node2" class="node"> @@ -155,7 +155,7 @@ <!-- XCTRL->CTRL --> <g id="edge1" class="edge"> <title>XCTRL->CTRL</title> -<path fill="none" stroke="#555555" d="M53,-386.63C53,-337.1 53,-194.83 53,-137.43"/> +<path fill="none" stroke="#555555" d="M53,-456.55C53,-397.7 53,-206.04 53,-137.58"/> <polygon fill="#555555" stroke="#555555" points="55.1,-137.74 53,-131.74 50.9,-137.74 55.1,-137.74"/> </g> <!-- XCTRL->INT_TOP --> @@ -174,8 +174,8 @@ <!-- INT_TOP->INT_NEG --> <g id="edge4" class="edge"> <title>INT_TOP->INT_NEG</title> -<path fill="none" stroke="#555555" d="M337.94,-388.74C305.38,-355.83 228.33,-277.94 190.59,-239.8"/> -<polygon fill="#555555" stroke="#555555" points="192.09,-238.33 186.38,-235.54 189.11,-241.28 192.09,-238.33"/> +<path fill="none" stroke="#555555" d="M338.42,-458.38C324.81,-443.56 304.22,-420.4 288,-398.97 246.77,-344.48 204.12,-276.17 182.84,-241.1"/> +<polygon fill="#555555" stroke="#555555" points="184.8,-240.29 179.9,-236.24 181.21,-242.46 184.8,-240.29"/> </g> <!-- INT_ZERO --> <g id="node8" class="node"> @@ -186,8 +186,8 @@ <!-- INT_TOP->INT_ZERO --> <g id="edge5" class="edge"> <title>INT_TOP->INT_ZERO</title> -<path fill="none" stroke="#555555" d="M345.22,-387.12C329.8,-353.79 295.37,-279.32 277.78,-241.29"/> -<polygon fill="#555555" stroke="#555555" points="279.76,-240.57 275.34,-236.01 275.95,-242.34 279.76,-240.57"/> +<path fill="none" stroke="#555555" d="M347.22,-456.76C332.26,-412.21 292.18,-292.93 275,-241.79"/> +<polygon fill="#555555" stroke="#555555" points="277.02,-241.21 273.12,-236.19 273.04,-242.55 277.02,-241.21"/> </g> <!-- INT_POS --> <g id="node9" class="node"> @@ -198,8 +198,8 @@ <!-- INT_TOP->INT_POS --> <g id="edge6" class="edge"> <title>INT_TOP->INT_POS</title> -<path fill="none" stroke="#555555" d="M353,-386.46C353,-353.14 353,-280.53 353,-242.43"/> -<polygon fill="#555555" stroke="#555555" points="355.1,-242.8 353,-236.8 350.9,-242.8 355.1,-242.8"/> +<path fill="none" stroke="#555555" d="M353,-456.76C353,-412.51 353,-294.56 353,-242.85"/> +<polygon fill="#555555" stroke="#555555" points="355.1,-242.94 353,-236.94 350.9,-242.94 355.1,-242.94"/> </g> <!-- INT_TOP->FLT_TOP --> <!-- INT_BOT --> @@ -237,38 +237,38 @@ <!-- FLT_MINDOTS --> <g id="node12" class="node"> <title>FLT_MINDOTS</title> -<ellipse fill="aqua" stroke="black" cx="529" cy="-310.97" rx="109.19" ry="18"/> -<text text-anchor="middle" x="529" y="-306.87" font-family="DejaVu Sans" font-size="13.00">… negative constants</text> +<ellipse fill="aqua" stroke="black" cx="529" cy="-345.97" rx="109.19" ry="18"/> +<text text-anchor="middle" x="529" y="-341.87" font-family="DejaVu Sans" font-size="13.00">… negative constants</text> </g> <!-- FLT_TOP->FLT_MINDOTS --> <g id="edge10" class="edge"> <title>FLT_TOP->FLT_MINDOTS</title> -<path fill="none" stroke="#555555" d="M729.95,-393.76C692.71,-378.6 622.11,-349.86 575.3,-330.81"/> -<polygon fill="#555555" stroke="#555555" points="576.32,-328.96 569.97,-328.64 574.74,-332.85 576.32,-328.96"/> +<path fill="none" stroke="#555555" d="M733.33,-461.78C694.5,-439.96 612.69,-393.99 565.21,-367.31"/> +<polygon fill="#555555" stroke="#555555" points="566.33,-365.53 560.07,-364.42 564.27,-369.19 566.33,-365.53"/> </g> <!-- FLT_ZERO --> <g id="node13" class="node"> <title>FLT_ZERO</title> -<ellipse fill="aqua" stroke="black" cx="681" cy="-310.97" rx="27" ry="18"/> -<text text-anchor="middle" x="681" y="-306.87" font-family="DejaVu Sans" font-size="13.00">0.0</text> +<ellipse fill="aqua" stroke="black" cx="681" cy="-345.97" rx="27" ry="18"/> +<text text-anchor="middle" x="681" y="-341.87" font-family="DejaVu Sans" font-size="13.00">0.0</text> </g> <!-- FLT_TOP->FLT_ZERO --> <g id="edge11" class="edge"> <title>FLT_TOP->FLT_ZERO</title> -<path fill="none" stroke="#555555" d="M742.45,-388.35C730.15,-373.06 711.32,-349.66 697.75,-332.79"/> -<polygon fill="#555555" stroke="#555555" points="699.71,-331.88 694.32,-328.52 696.44,-334.51 699.71,-331.88"/> +<path fill="none" stroke="#555555" d="M745.33,-457.35C732.24,-434.89 708.83,-394.73 694.16,-369.54"/> +<polygon fill="#555555" stroke="#555555" points="696.04,-368.6 691.2,-364.48 692.41,-370.72 696.04,-368.6"/> </g> <!-- FLT_MAXDOTS --> <g id="node14" class="node"> <title>FLT_MAXDOTS</title> -<ellipse fill="aqua" stroke="black" cx="829" cy="-310.97" rx="105.09" ry="18"/> -<text text-anchor="middle" x="829" y="-306.87" font-family="DejaVu Sans" font-size="13.00">positive constants …</text> +<ellipse fill="aqua" stroke="black" cx="829" cy="-345.97" rx="105.09" ry="18"/> +<text text-anchor="middle" x="829" y="-341.87" font-family="DejaVu Sans" font-size="13.00">positive constants …</text> </g> <!-- FLT_TOP->FLT_MAXDOTS --> <g id="edge12" class="edge"> <title>FLT_TOP->FLT_MAXDOTS</title> -<path fill="none" stroke="#555555" d="M767.55,-388.35C779.41,-373.61 797.32,-351.34 810.76,-334.64"/> -<polygon fill="#555555" stroke="#555555" points="812.05,-336.39 814.18,-330.39 808.78,-333.75 812.05,-336.39"/> +<path fill="none" stroke="#555555" d="M764.67,-457.35C777.62,-435.14 800.65,-395.61 815.36,-370.38"/> +<polygon fill="#555555" stroke="#555555" points="817.12,-371.53 818.33,-365.28 813.49,-369.41 817.12,-371.53"/> </g> <!-- FLT_TOP->PTR_TOP --> <!-- FLT_BOT --> @@ -287,70 +287,70 @@ <!-- FLT_MINDOTS->FLT_BOT --> <g id="edge13" class="edge"> <title>FLT_MINDOTS->FLT_BOT</title> -<path fill="none" stroke="#555555" d="M545.44,-292.83C580.25,-256.55 661.25,-172.14 698.55,-133.26"/> -<polygon fill="#555555" stroke="#555555" points="699.62,-135.18 702.26,-129.4 696.59,-132.27 699.62,-135.18"/> +<path fill="none" stroke="#555555" d="M542.9,-327.91C576.67,-286.45 663.03,-180.46 700.37,-134.63"/> +<polygon fill="#555555" stroke="#555555" points="701.97,-135.99 704.13,-130.01 698.72,-133.34 701.97,-135.99"/> </g> <!-- FLT_MINDOTS->FLT_ZERO --> <!-- FLT_ZERO->FLT_BOT --> <g id="edge14" class="edge"> <title>FLT_ZERO->FLT_BOT</title> -<path fill="none" stroke="#555555" d="M684.22,-292.83C690.79,-257.83 705.78,-178.04 713.39,-137.55"/> -<polygon fill="#555555" stroke="#555555" points="715.44,-138 714.48,-131.72 711.31,-137.22 715.44,-138"/> +<path fill="none" stroke="#555555" d="M683.72,-327.91C690.19,-287.37 706.5,-185.12 714.05,-137.77"/> +<polygon fill="#555555" stroke="#555555" points="716.12,-138.14 714.99,-131.88 711.97,-137.48 716.12,-138.14"/> </g> <!-- FLT_ZERO->FLT_MAXDOTS --> <!-- FLT_MAXDOTS->FLT_BOT --> <g id="edge15" class="edge"> <title>FLT_MAXDOTS->FLT_BOT</title> -<path fill="none" stroke="#555555" d="M819.34,-292.83C799.4,-257.44 753.64,-176.23 731.07,-136.19"/> -<polygon fill="#555555" stroke="#555555" points="732.92,-135.18 728.14,-130.99 729.26,-137.25 732.92,-135.18"/> +<path fill="none" stroke="#555555" d="M820.66,-327.53C800.95,-286.34 751.49,-182.98 729.2,-136.4"/> +<polygon fill="#555555" stroke="#555555" points="731.13,-135.56 726.64,-131.05 727.34,-137.37 731.13,-135.56"/> </g> <!-- PTR_NULL --> <g id="node17" class="node"> <title>PTR_NULL</title> -<ellipse fill="#008000" stroke="black" cx="1297" cy="-310.97" rx="27.3" ry="18"/> -<text text-anchor="middle" x="1297" y="-306.87" font-family="DejaVu Sans" font-size="13.00" fill="white">null</text> +<ellipse fill="#008000" stroke="black" cx="1297" cy="-345.97" rx="27.3" ry="18"/> +<text text-anchor="middle" x="1297" y="-341.87" font-family="DejaVu Sans" font-size="13.00" fill="white">null</text> </g> <!-- PTR_TOP->PTR_NULL --> <g id="edge24" class="edge"> <title>PTR_TOP->PTR_NULL</title> -<path fill="none" stroke="#555555" d="M1203.78,-380.03C1225.49,-364.18 1253.48,-343.74 1273.1,-329.42"/> -<polygon fill="#555555" stroke="#555555" points="1274.33,-331.12 1277.93,-325.88 1271.85,-327.73 1274.33,-331.12"/> +<path fill="none" stroke="#555555" d="M1204.16,-450.36C1222.35,-436.53 1244.66,-418.07 1262,-398.97 1270.08,-390.06 1277.71,-379.16 1283.77,-369.64"/> +<polygon fill="#555555" stroke="#555555" points="1285.52,-370.8 1286.9,-364.59 1281.95,-368.58 1285.52,-370.8"/> </g> <!-- PTR_PERSON --> <g id="node19" class="node"> <title>PTR_PERSON</title> -<ellipse fill="#008000" stroke="black" cx="1040" cy="-310.97" rx="45.72" ry="18"/> -<text text-anchor="middle" x="1040" y="-306.87" font-family="DejaVu Sans" font-size="13.00" fill="white">*Person</text> +<ellipse fill="#008000" stroke="black" cx="1040" cy="-345.97" rx="45.72" ry="18"/> +<text text-anchor="middle" x="1040" y="-341.87" font-family="DejaVu Sans" font-size="13.00" fill="white">*Person</text> </g> <!-- PTR_TOP->PTR_PERSON --> <g id="edge25" class="edge"> <title>PTR_TOP->PTR_PERSON</title> -<path fill="none" stroke="#555555" d="M1137.26,-380.27C1115.69,-365.12 1088.05,-345.71 1067.76,-331.46"/> -<polygon fill="#555555" stroke="#555555" points="1069.06,-329.81 1062.95,-328.08 1066.65,-333.25 1069.06,-329.81"/> +<path fill="none" stroke="#555555" d="M1144.81,-448.56C1120.47,-424.98 1084.66,-390.26 1061.83,-368.13"/> +<polygon fill="#555555" stroke="#555555" points="1063.46,-366.79 1057.69,-364.12 1060.54,-369.8 1063.46,-366.79"/> </g> <!-- PTR_S1 --> <g id="node20" class="node"> <title>PTR_S1</title> -<ellipse fill="#008000" stroke="black" cx="1129" cy="-310.97" rx="27" ry="18"/> -<text text-anchor="middle" x="1129" y="-306.87" font-family="DejaVu Sans" font-size="13.00" fill="white">*s1</text> +<ellipse fill="#008000" stroke="black" cx="1129" cy="-345.97" rx="27" ry="18"/> +<text text-anchor="middle" x="1129" y="-341.87" font-family="DejaVu Sans" font-size="13.00" fill="white">*s1</text> </g> <!-- PTR_TOP->PTR_S1 --> <g id="edge26" class="edge"> <title>PTR_TOP->PTR_S1</title> -<path fill="none" stroke="#555555" d="M1158.4,-376.36C1152.4,-363.23 1145.32,-347.71 1139.6,-335.19"/> -<polygon fill="#555555" stroke="#555555" points="1141.62,-334.55 1137.22,-329.96 1137.8,-336.29 1141.62,-334.55"/> +<path fill="none" stroke="#555555" d="M1161.78,-446.09C1154.35,-423.62 1144.01,-392.36 1136.94,-370.98"/> +<polygon fill="#555555" stroke="#555555" points="1138.94,-370.34 1135.06,-365.3 1134.96,-371.66 1138.94,-370.34"/> </g> <!-- PTR_MORE --> <g id="node21" class="node"> <title>PTR_MORE</title> -<ellipse fill="#008000" stroke="black" cx="1213" cy="-310.97" rx="40.6" ry="18"/> -<text text-anchor="middle" x="1213" y="-306.87" font-family="DejaVu Sans" font-size="13.00" fill="white">*s2, …</text> +<ellipse fill="#008000" stroke="black" cx="1213" cy="-345.97" rx="40.6" ry="18"/> +<text text-anchor="middle" x="1213" y="-341.87" font-family="DejaVu Sans" font-size="13.00" fill="white">*s2, …</text> </g> <!-- PTR_TOP->PTR_MORE --> <g id="edge27" class="edge"> <title>PTR_TOP->PTR_MORE</title> -<path fill="none" stroke="#555555" d="M1183.6,-376.36C1189.55,-363.32 1196.59,-347.92 1202.28,-335.45"/> -<polygon fill="#555555" stroke="#555555" points="1204.08,-336.56 1204.66,-330.23 1200.26,-334.82 1204.08,-336.56"/> +<path fill="none" stroke="#555555" d="M1180.22,-446.09C1187.6,-423.75 1197.87,-392.72 1204.93,-371.36"/> +<polygon fill="#555555" stroke="#555555" points="1206.92,-372.03 1206.81,-365.67 1202.94,-370.71 1206.92,-372.03"/> </g> <!-- PTR_TOP->STRUCT_TOP --> <!-- PTR_BOT --> @@ -375,8 +375,8 @@ <!-- PTR_NULL->PTR_PERSON_NIL --> <g id="edge34" class="edge"> <title>PTR_NULL->PTR_PERSON_NIL</title> -<path fill="none" stroke="#555555" d="M1281.06,-296.39C1263.26,-281.22 1234.22,-256.49 1213.51,-238.85"/> -<polygon fill="#555555" stroke="#555555" points="1214.99,-237.36 1209.06,-235.06 1212.27,-240.55 1214.99,-237.36"/> +<path fill="none" stroke="#555555" d="M1287.29,-328.97C1280.63,-318.41 1271.33,-304.45 1262,-292.97 1246.39,-273.75 1226.71,-253.74 1211.73,-239.23"/> +<polygon fill="#555555" stroke="#555555" points="1213.3,-237.84 1207.52,-235.19 1210.39,-240.87 1213.3,-237.84"/> </g> <!-- PTR_S1_NIL --> <g id="node23" class="node"> @@ -387,8 +387,8 @@ <!-- PTR_NULL->PTR_S1_NIL --> <g id="edge35" class="edge"> <title>PTR_NULL->PTR_S1_NIL</title> -<path fill="none" stroke="#555555" d="M1294.93,-292.66C1293.24,-278.53 1290.83,-258.38 1288.94,-242.57"/> -<polygon fill="#555555" stroke="#555555" points="1291.04,-242.41 1288.24,-236.7 1286.87,-242.91 1291.04,-242.41"/> +<path fill="none" stroke="#555555" d="M1295.49,-327.57C1293.58,-305.54 1290.28,-267.42 1288.12,-242.45"/> +<polygon fill="#555555" stroke="#555555" points="1290.23,-242.46 1287.62,-236.66 1286.04,-242.82 1290.23,-242.46"/> </g> <!-- PTR_MORE_NIL --> <g id="node24" class="node"> @@ -399,8 +399,8 @@ <!-- PTR_NULL->PTR_MORE_NIL --> <g id="edge36" class="edge"> <title>PTR_NULL->PTR_MORE_NIL</title> -<path fill="none" stroke="#555555" d="M1310.38,-294.78C1323.54,-279.83 1343.77,-256.85 1358.68,-239.92"/> -<polygon fill="#555555" stroke="#555555" points="1360.12,-241.46 1362.51,-235.57 1356.97,-238.68 1360.12,-241.46"/> +<path fill="none" stroke="#555555" d="M1307.26,-328.88C1321.47,-306.61 1347.21,-266.25 1363.41,-240.85"/> +<polygon fill="#555555" stroke="#555555" points="1365.04,-242.2 1366.5,-236.01 1361.5,-239.94 1365.04,-242.2"/> </g> <!-- PTR_ANY --> <g id="node18" class="node"> @@ -419,41 +419,41 @@ <!-- PTR_PERSON->PTR_ANY --> <g id="edge28" class="edge"> <title>PTR_PERSON->PTR_ANY</title> -<path fill="none" stroke="#555555" d="M1040,-292.66C1040,-281.68 1040,-267.07 1040,-253.69"/> -<polygon fill="#555555" stroke="#555555" points="1042.1,-253.92 1040,-247.92 1037.9,-253.92 1042.1,-253.92"/> +<path fill="none" stroke="#555555" d="M1040,-327.57C1040,-308.61 1040,-277.75 1040,-253.6"/> +<polygon fill="#555555" stroke="#555555" points="1042.1,-253.86 1040,-247.86 1037.9,-253.86 1042.1,-253.86"/> </g> <!-- PTR_PERSON->PTR_S1 --> <!-- PTR_PERSON->PTR_PERSON_NIL --> <g id="edge31" class="edge"> <title>PTR_PERSON->PTR_PERSON_NIL</title> -<path fill="none" stroke="#555555" d="M1063.94,-295.19C1089.64,-279.32 1130.53,-254.07 1158.51,-236.8"/> -<polygon fill="#555555" stroke="#555555" points="1159.33,-238.76 1163.34,-233.82 1157.13,-235.18 1159.33,-238.76"/> +<path fill="none" stroke="#555555" d="M1055.68,-329.07C1066.26,-318.55 1080.66,-304.6 1094,-292.97 1116.38,-273.44 1143.02,-252.61 1162.38,-237.87"/> +<polygon fill="#555555" stroke="#555555" points="1163.43,-239.71 1166.94,-234.41 1160.89,-236.36 1163.43,-239.71"/> </g> <!-- PTR_S1->PTR_ANY --> <g id="edge29" class="edge"> <title>PTR_S1->PTR_ANY</title> -<path fill="none" stroke="#555555" d="M1114.7,-295.19C1102.96,-283.05 1085.9,-265.42 1071.05,-250.07"/> -<polygon fill="#555555" stroke="#555555" points="1072.84,-248.9 1067.16,-246.05 1069.83,-251.82 1072.84,-248.9"/> +<path fill="none" stroke="#555555" d="M1118.41,-328.95C1111.53,-318.62 1102.33,-304.93 1094,-292.97 1084.38,-279.15 1073.57,-264.06 1064.17,-251.06"/> +<polygon fill="#555555" stroke="#555555" points="1066.07,-250.1 1060.85,-246.48 1062.67,-252.57 1066.07,-250.1"/> </g> <!-- PTR_S1->PTR_MORE --> <!-- PTR_S1->PTR_S1_NIL --> <g id="edge32" class="edge"> <title>PTR_S1->PTR_S1_NIL</title> -<path fill="none" stroke="#555555" d="M1150.34,-299.41C1174.33,-287.32 1214.22,-266.51 1247,-245.97 1251.87,-242.92 1256.94,-239.48 1261.75,-236.09"/> -<polygon fill="#555555" stroke="#555555" points="1262.79,-237.93 1266.45,-232.73 1260.35,-234.51 1262.79,-237.93"/> +<path fill="none" stroke="#555555" d="M1137.43,-328.51C1143.67,-317.48 1152.98,-303.17 1164,-292.97 1195.11,-264.17 1211.28,-268.8 1247,-245.97 1251.84,-242.87 1256.9,-239.42 1261.71,-236.02"/> +<polygon fill="#555555" stroke="#555555" points="1262.75,-237.85 1266.4,-232.65 1260.3,-234.44 1262.75,-237.85"/> </g> <!-- PTR_MORE->PTR_NULL --> <!-- PTR_MORE->PTR_ANY --> <g id="edge30" class="edge"> <title>PTR_MORE->PTR_ANY</title> -<path fill="none" stroke="#555555" d="M1187.84,-296.59C1162.54,-283.13 1122.81,-262.01 1090.91,-245.04"/> -<polygon fill="#555555" stroke="#555555" points="1092.26,-243.38 1085.97,-242.42 1090.28,-247.09 1092.26,-243.38"/> +<path fill="none" stroke="#555555" d="M1199.85,-328.86C1190.51,-317.99 1177.32,-303.72 1164,-292.97 1141.82,-275.05 1114.97,-258.29 1091.94,-245.19"/> +<polygon fill="#555555" stroke="#555555" points="1093.13,-243.45 1086.87,-242.33 1091.07,-247.11 1093.13,-243.45"/> </g> <!-- PTR_MORE->PTR_MORE_NIL --> <g id="edge33" class="edge"> <title>PTR_MORE->PTR_MORE_NIL</title> -<path fill="none" stroke="#555555" d="M1237.7,-296.19C1266.57,-280.1 1314.43,-253.42 1346.09,-235.77"/> -<polygon fill="#555555" stroke="#555555" points="1347.05,-237.64 1351.26,-232.88 1345,-233.97 1347.05,-237.64"/> +<path fill="none" stroke="#555555" d="M1226.25,-328.99C1235.64,-318.18 1248.85,-303.92 1262,-292.97 1288.56,-270.85 1321.98,-249.86 1346.12,-235.75"/> +<polygon fill="#555555" stroke="#555555" points="1346.91,-237.72 1351.04,-232.89 1344.8,-234.09 1346.91,-237.72"/> </g> <!-- PTR_PERSON_NIL->PTR_BOT --> <g id="edge38" class="edge"> @@ -485,8 +485,8 @@ <!-- STRUCT_TOP->STRUCT_PERSON --> <g id="edge44" class="edge"> <title>STRUCT_TOP->STRUCT_PERSON</title> -<path fill="none" stroke="#555555" d="M1546.47,-376.11C1531.72,-340.49 1506.36,-279.23 1491.91,-244.33"/> -<polygon fill="#555555" stroke="#555555" points="1493.99,-243.86 1489.75,-239.12 1490.11,-245.47 1493.99,-243.86"/> +<path fill="none" stroke="#555555" d="M1549.61,-446.07C1534.71,-396.53 1503.8,-293.77 1489.1,-244.91"/> +<polygon fill="#555555" stroke="#555555" points="1491.15,-244.41 1487.41,-239.27 1487.12,-245.62 1491.15,-244.41"/> </g> <!-- STRUCT_S1 --> <g id="node28" class="node"> @@ -498,8 +498,8 @@ <!-- STRUCT_TOP->STRUCT_S1 --> <g id="edge45" class="edge"> <title>STRUCT_TOP->STRUCT_S1</title> -<path fill="none" stroke="#555555" d="M1558,-375.71C1558,-340.38 1558,-280.29 1558,-245.36"/> -<polygon fill="#555555" stroke="#555555" points="1560.1,-245.4 1558,-239.4 1555.9,-245.4 1560.1,-245.4"/> +<path fill="none" stroke="#555555" d="M1558,-445.58C1558,-395.91 1558,-293.85 1558,-245.08"/> +<polygon fill="#555555" stroke="#555555" points="1560.1,-245.25 1558,-239.25 1555.9,-245.25 1560.1,-245.25"/> </g> <!-- STRUCT_S2 --> <g id="node29" class="node"> @@ -511,8 +511,8 @@ <!-- STRUCT_TOP->STRUCT_S2 --> <g id="edge46" class="edge"> <title>STRUCT_TOP->STRUCT_S2</title> -<path fill="none" stroke="#555555" d="M1571.02,-376.11C1587.69,-340.49 1616.35,-279.23 1632.67,-244.33"/> -<polygon fill="#555555" stroke="#555555" points="1634.48,-245.42 1635.12,-239.09 1630.68,-243.64 1634.48,-245.42"/> +<path fill="none" stroke="#555555" d="M1567.48,-446.07C1584.32,-396.53 1619.24,-293.77 1635.85,-244.91"/> +<polygon fill="#555555" stroke="#555555" points="1637.82,-245.61 1637.77,-239.26 1633.85,-244.26 1637.82,-245.61"/> </g> <!-- STRUCT_MORE --> <g id="node30" class="node"> @@ -523,8 +523,8 @@ <!-- STRUCT_TOP->STRUCT_MORE --> <g id="edge47" class="edge"> <title>STRUCT_TOP->STRUCT_MORE</title> -<path fill="none" stroke="#555555" d="M1582.56,-377.7C1616.8,-341.11 1678.29,-275.38 1710.69,-240.75"/> -<polygon fill="#555555" stroke="#555555" points="1712.04,-242.39 1714.6,-236.57 1708.97,-239.52 1712.04,-242.39"/> +<path fill="none" stroke="#555555" d="M1576.29,-447.05C1610.53,-396.68 1683.74,-288.97 1716.08,-241.39"/> +<polygon fill="#555555" stroke="#555555" points="1717.7,-242.75 1719.33,-236.61 1714.22,-240.39 1717.7,-242.75"/> </g> <!-- STRUCT_TOP->MEM_TOP --> <!-- STRUCT_BOT --> @@ -576,8 +576,8 @@ <!-- MEM_TOP->MEM_ALIAS2 --> <g id="edge54" class="edge"> <title>MEM_TOP->MEM_ALIAS2</title> -<path fill="none" stroke="#555555" d="M1876.11,-386.79C1866.64,-353.58 1845.8,-280.42 1834.92,-242.24"/> -<polygon fill="#555555" stroke="#555555" points="1836.96,-241.75 1833.29,-236.55 1832.92,-242.9 1836.96,-241.75"/> +<path fill="none" stroke="#555555" d="M1877.44,-456.76C1868.24,-412.32 1843.64,-293.5 1833.01,-242.16"/> +<polygon fill="#555555" stroke="#555555" points="1835.12,-242.02 1831.85,-236.57 1831.01,-242.88 1835.12,-242.02"/> </g> <!-- MEM_ALIAS3 --> <g id="node34" class="node"> @@ -588,8 +588,8 @@ <!-- MEM_TOP->MEM_ALIAS3 --> <g id="edge55" class="edge"> <title>MEM_TOP->MEM_ALIAS3</title> -<path fill="none" stroke="#555555" d="M1885.89,-386.79C1895.36,-353.58 1916.2,-280.42 1927.08,-242.24"/> -<polygon fill="#555555" stroke="#555555" points="1929.08,-242.9 1928.71,-236.55 1925.04,-241.75 1929.08,-242.9"/> +<path fill="none" stroke="#555555" d="M1884.56,-456.76C1893.76,-412.32 1918.36,-293.5 1928.99,-242.16"/> +<polygon fill="#555555" stroke="#555555" points="1930.99,-242.88 1930.15,-236.57 1926.88,-242.02 1930.99,-242.88"/> </g> <!-- MEM_MORE --> <g id="node35" class="node"> @@ -600,8 +600,8 @@ <!-- MEM_TOP->MEM_MORE --> <g id="edge56" class="edge"> <title>MEM_TOP->MEM_MORE</title> -<path fill="none" stroke="#555555" d="M1893.51,-387.45C1919.1,-353.7 1977.4,-276.8 2005.82,-239.32"/> -<polygon fill="#555555" stroke="#555555" points="2007.25,-240.91 2009.2,-234.86 2003.9,-238.37 2007.25,-240.91"/> +<path fill="none" stroke="#555555" d="M1890.25,-457.16C1914.82,-412.56 1981.72,-291.1 2009.57,-240.54"/> +<polygon fill="#555555" stroke="#555555" points="2011.29,-241.76 2012.35,-235.49 2007.62,-239.74 2011.29,-241.76"/> </g> <!-- MEM_TOP->TUPLE_TOP --> <!-- MEM_BOT --> @@ -639,70 +639,94 @@ <!-- TUPLE1 --> <g id="node38" class="node"> <title>TUPLE1</title> -<polygon fill="#ffc0cb" stroke="black" points="2128.88,-328.97 2073.12,-328.97 2073.12,-292.97 2128.88,-292.97 2128.88,-328.97"/> -<text text-anchor="middle" x="2101" y="-306.87" font-family="DejaVu Sans" font-size="13.00">(type)</text> +<polygon fill="#ffc0cb" stroke="none" points="2116.88,-372.47 2073.12,-372.47 2073.12,-319.47 2116.88,-319.47 2116.88,-372.47"/> +<polygon fill="#ffc0cb" stroke="none" points="2073.12,-345.97 2073.12,-372.47 2116.88,-372.47 2116.88,-345.97 2073.12,-345.97"/> +<polygon fill="none" stroke="black" points="2073.12,-345.97 2073.12,-372.47 2116.88,-372.47 2116.88,-345.97 2073.12,-345.97"/> +<text text-anchor="start" x="2078.12" y="-355.12" font-family="DejaVu Sans" font-size="13.00">tuple</text> +<polygon fill="black" stroke="none" points="2073.12,-319.47 2073.12,-345.97 2116.88,-345.97 2116.88,-319.47 2073.12,-319.47"/> +<polygon fill="none" stroke="black" points="2073.12,-319.47 2073.12,-345.97 2116.88,-345.97 2116.88,-319.47 2073.12,-319.47"/> +<text text-anchor="start" x="2080.38" y="-328.62" font-family="DejaVu Sans" font-size="13.00" fill="white">type</text> </g> <!-- TUPLE_TOP->TUPLE1 --> <g id="edge62" class="edge"> <title>TUPLE_TOP->TUPLE1</title> -<path fill="none" stroke="#555555" d="M2114.8,-386.65C2112.19,-372.52 2108.47,-352.37 2105.54,-336.56"/> -<polygon fill="#555555" stroke="#555555" points="2107.61,-336.2 2104.46,-330.68 2103.48,-336.96 2107.61,-336.2"/> +<path fill="none" stroke="#555555" d="M2114.85,-456.57C2111.26,-436.74 2105.31,-403.91 2100.86,-379.34"/> +<polygon fill="#555555" stroke="#555555" points="2102.94,-379.03 2099.81,-373.5 2098.81,-379.77 2102.94,-379.03"/> </g> <!-- TUPLE2 --> <g id="node39" class="node"> <title>TUPLE2</title> -<polygon fill="#ffc0cb" stroke="black" points="2239,-328.97 2145,-328.97 2145,-292.97 2239,-292.97 2239,-328.97"/> -<text text-anchor="middle" x="2192" y="-306.87" font-family="DejaVu Sans" font-size="13.00">(type, type)</text> +<polygon fill="#ffc0cb" stroke="none" points="2176.88,-385.72 2133.12,-385.72 2133.12,-306.22 2176.88,-306.22 2176.88,-385.72"/> +<polygon fill="#ffc0cb" stroke="none" points="2133.12,-359.22 2133.12,-385.72 2176.88,-385.72 2176.88,-359.22 2133.12,-359.22"/> +<polygon fill="none" stroke="black" points="2133.12,-359.22 2133.12,-385.72 2176.88,-385.72 2176.88,-359.22 2133.12,-359.22"/> +<text text-anchor="start" x="2138.12" y="-368.37" font-family="DejaVu Sans" font-size="13.00">tuple</text> +<polygon fill="black" stroke="none" points="2133.12,-332.72 2133.12,-359.22 2176.88,-359.22 2176.88,-332.72 2133.12,-332.72"/> +<polygon fill="none" stroke="black" points="2133.12,-332.72 2133.12,-359.22 2176.88,-359.22 2176.88,-332.72 2133.12,-332.72"/> +<text text-anchor="start" x="2140.38" y="-341.87" font-family="DejaVu Sans" font-size="13.00" fill="white">type</text> +<polygon fill="black" stroke="none" points="2133.12,-306.22 2133.12,-332.72 2176.88,-332.72 2176.88,-306.22 2133.12,-306.22"/> +<polygon fill="none" stroke="black" points="2133.12,-306.22 2133.12,-332.72 2176.88,-332.72 2176.88,-306.22 2133.12,-306.22"/> +<text text-anchor="start" x="2140.38" y="-315.37" font-family="DejaVu Sans" font-size="13.00" fill="white">type</text> </g> <!-- TUPLE_TOP->TUPLE2 --> <g id="edge63" class="edge"> <title>TUPLE_TOP->TUPLE2</title> -<path fill="none" stroke="#555555" d="M2131.23,-387.51C2143,-372.87 2160.35,-351.31 2173.5,-334.97"/> -<polygon fill="#555555" stroke="#555555" points="2175.06,-336.38 2177.18,-330.39 2171.79,-333.74 2175.06,-336.38"/> +<path fill="none" stroke="#555555" d="M2122.99,-456.83C2127.76,-440.46 2135.17,-415.04 2141.65,-392.78"/> +<polygon fill="#555555" stroke="#555555" points="2143.64,-393.48 2143.3,-387.13 2139.6,-392.3 2143.64,-393.48"/> </g> <!-- TUPLEN --> <g id="node40" class="node"> <title>TUPLEN</title> -<polygon fill="#ffc0cb" stroke="black" points="2332.75,-328.97 2255.25,-328.97 2255.25,-292.97 2332.75,-292.97 2332.75,-328.97"/> -<text text-anchor="middle" x="2294" y="-306.87" font-family="DejaVu Sans" font-size="13.00">(type, …)</text> +<polygon fill="#ffc0cb" stroke="none" points="2236.88,-398.97 2193.12,-398.97 2193.12,-292.97 2236.88,-292.97 2236.88,-398.97"/> +<polygon fill="#ffc0cb" stroke="none" points="2193.12,-372.47 2193.12,-398.97 2236.88,-398.97 2236.88,-372.47 2193.12,-372.47"/> +<polygon fill="none" stroke="black" points="2193.12,-372.47 2193.12,-398.97 2236.88,-398.97 2236.88,-372.47 2193.12,-372.47"/> +<text text-anchor="start" x="2198.12" y="-381.62" font-family="DejaVu Sans" font-size="13.00">tuple</text> +<polygon fill="black" stroke="none" points="2193.12,-345.97 2193.12,-372.47 2236.88,-372.47 2236.88,-345.97 2193.12,-345.97"/> +<polygon fill="none" stroke="black" points="2193.12,-345.97 2193.12,-372.47 2236.88,-372.47 2236.88,-345.97 2193.12,-345.97"/> +<text text-anchor="start" x="2200.38" y="-355.12" font-family="DejaVu Sans" font-size="13.00" fill="white">type</text> +<polygon fill="black" stroke="none" points="2193.12,-319.47 2193.12,-345.97 2236.88,-345.97 2236.88,-319.47 2193.12,-319.47"/> +<polygon fill="none" stroke="black" points="2193.12,-319.47 2193.12,-345.97 2236.88,-345.97 2236.88,-319.47 2193.12,-319.47"/> +<text text-anchor="start" x="2208.62" y="-328.62" font-family="DejaVu Sans" font-size="13.00" fill="white">…</text> +<polygon fill="black" stroke="none" points="2193.12,-292.97 2193.12,-319.47 2236.88,-319.47 2236.88,-292.97 2193.12,-292.97"/> +<polygon fill="none" stroke="black" points="2193.12,-292.97 2193.12,-319.47 2236.88,-319.47 2236.88,-292.97 2193.12,-292.97"/> +<text text-anchor="start" x="2200.38" y="-302.12" font-family="DejaVu Sans" font-size="13.00" fill="white">type</text> </g> <!-- TUPLE_TOP->TUPLEN --> <g id="edge64" class="edge"> <title>TUPLE_TOP->TUPLEN</title> -<path fill="none" stroke="#555555" d="M2144.35,-390.18C2173.39,-375.01 2220.42,-350.42 2254.01,-332.87"/> -<polygon fill="#555555" stroke="#555555" points="2254.85,-334.8 2259.2,-330.16 2252.91,-331.07 2254.85,-334.8"/> +<path fill="none" stroke="#555555" d="M2134.21,-457.82C2148.47,-443.17 2169.34,-420.61 2185,-398.97 2186.4,-397.02 2187.8,-395.01 2189.17,-392.95"/> +<polygon fill="#555555" stroke="#555555" points="2190.91,-394.14 2192.41,-387.96 2187.38,-391.86 2190.91,-394.14"/> </g> <!-- TUPLE_BOT --> <g id="node37" class="node"> <title>TUPLE_BOT</title> -<ellipse fill="#ffc0cb" stroke="black" cx="2155" cy="-111.99" rx="44.7" ry="18"/> -<text text-anchor="middle" x="2155" y="-107.89" font-family="DejaVu Sans" font-size="13.00">⊥:tuple</text> +<ellipse fill="#ffc0cb" stroke="black" cx="2136" cy="-111.99" rx="44.7" ry="18"/> +<text text-anchor="middle" x="2136" y="-107.89" font-family="DejaVu Sans" font-size="13.00">⊥:tuple</text> </g> <!-- TUPLE_BOT->BOT --> <g id="edge81" class="edge"> <title>TUPLE_BOT->BOT</title> -<path fill="none" stroke="#555555" d="M2126.88,-97.69C2108.55,-89.66 2083.87,-80.04 2061,-75 1906.73,-41.03 1407.62,-24.05 1271.54,-19.98"/> -<polygon fill="#555555" stroke="#555555" points="1271.79,-17.89 1265.73,-19.81 1271.67,-22.08 1271.79,-17.89"/> +<path fill="none" stroke="#555555" d="M2111.91,-96.53C2097.63,-88.71 2078.88,-79.71 2061,-75 1908.25,-34.75 1408.04,-22.3 1271.63,-19.61"/> +<polygon fill="#555555" stroke="#555555" points="1271.84,-17.52 1265.8,-19.5 1271.76,-21.72 1271.84,-17.52"/> </g> <!-- TUPLE1->TUPLE_BOT --> <g id="edge65" class="edge"> <title>TUPLE1->TUPLE_BOT</title> -<path fill="none" stroke="#555555" d="M2105.79,-292.49C2115.46,-257.21 2137.33,-177.44 2148.37,-137.19"/> -<polygon fill="#555555" stroke="#555555" points="2150.33,-137.95 2149.9,-131.61 2146.28,-136.84 2150.33,-137.95"/> +<path fill="none" stroke="#555555" d="M2099.47,-319.7C2107.39,-274.85 2123.82,-181.9 2131.66,-137.56"/> +<polygon fill="#555555" stroke="#555555" points="2133.69,-138.14 2132.66,-131.86 2129.55,-137.4 2133.69,-138.14"/> </g> <!-- TUPLE1->TUPLE2 --> <!-- TUPLE2->TUPLE_BOT --> <g id="edge66" class="edge"> <title>TUPLE2->TUPLE_BOT</title> -<path fill="none" stroke="#555555" d="M2188.72,-292.49C2182.12,-257.37 2167.24,-178.17 2159.65,-137.74"/> -<polygon fill="#555555" stroke="#555555" points="2161.73,-137.43 2158.56,-131.92 2157.6,-138.2 2161.73,-137.43"/> +<path fill="none" stroke="#555555" d="M2151.84,-306.4C2147.91,-258.37 2141.3,-177.75 2138,-137.46"/> +<polygon fill="#555555" stroke="#555555" points="2140.13,-137.74 2137.55,-131.93 2135.95,-138.08 2140.13,-137.74"/> </g> <!-- TUPLE2->TUPLEN --> <!-- TUPLEN->TUPLE_BOT --> <g id="edge67" class="edge"> <title>TUPLEN->TUPLE_BOT</title> -<path fill="none" stroke="#555555" d="M2281.66,-292.49C2256.44,-256.74 2198.97,-175.3 2170.95,-135.59"/> -<polygon fill="#555555" stroke="#555555" points="2172.76,-134.52 2167.59,-130.83 2169.33,-136.94 2172.76,-134.52"/> +<path fill="none" stroke="#555555" d="M2197.37,-293.19C2180.79,-244.5 2156.69,-173.75 2144.2,-137.07"/> +<polygon fill="#555555" stroke="#555555" points="2146.27,-136.64 2142.35,-131.63 2142.3,-137.99 2146.27,-136.64"/> </g> </g> </svg> |
