Files
lambda-sub/graphs/dependency.svg
T

1522 lines
80 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.42.4 (0)
-->
<!-- Title: theorem_deps Pages: 1 -->
<svg width="1294pt" height="2612pt"
viewBox="0.00 0.00 1293.96 2612.00" 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 2608)">
<title>theorem_deps</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-2608 1289.96,-2608 1289.96,4 -4,4"/>
<text text-anchor="start" x="406.48" y="-2591.4" font-family="Inter" font-weight="bold" font-size="12.00">Milner&#39;s Lambda&#45;Calculus with Partial Substitutions &#45; theorem dependency (M4)</text>
<text text-anchor="start" x="569.98" y="-2581.8" font-family="Inter" font-size="9.00" fill="#38761d">proved</text>
<text text-anchor="start" x="599.98" y="-2581.8" font-family="Inter" font-size="9.00"> &#160;&#160;</text>
<text text-anchor="start" x="606.98" y="-2581.8" font-family="Inter" font-size="9.00" fill="#b45f06">stated</text>
<text text-anchor="start" x="633.98" y="-2581.8" font-family="Inter" font-size="9.00"> &#160;&#160;</text>
<text text-anchor="start" x="640.98" y="-2581.8" font-family="Inter" font-size="9.00" fill="#777777">planned</text>
<text text-anchor="start" x="674.98" y="-2581.8" font-family="Inter" font-size="9.00"> &#160;&#160;</text>
<text text-anchor="start" x="681.98" y="-2581.8" font-family="Inter" font-size="9.00" fill="#cc0000">blocked</text>
<!-- fvs_lift -->
<g id="node1" class="node">
<title>fvs_lift</title>
<g id="a_node1"><a xlink:title="fvs_lift theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-893" rx="27" ry="18"/>
<text text-anchor="middle" x="65.24" y="-890.8" font-family="Inter" font-size="9.00" fill="#222222">fvs_lift</text>
</a>
</g>
</g>
<!-- open_rec_fvs -->
<g id="node10" class="node">
<title>open_rec_fvs</title>
<g id="a_node10"><a xlink:title="open_rec_fvs theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-945" rx="41.64" ry="18"/>
<text text-anchor="middle" x="239.88" y="-942.8" font-family="Inter" font-size="9.00" fill="#222222">open_rec_fvs</text>
</a>
</g>
</g>
<!-- fvs_lift&#45;&gt;open_rec_fvs -->
<g id="edge2" class="edge">
<title>fvs_lift&#45;&gt;open_rec_fvs</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M90.24,-900.23C118.42,-908.72 165.55,-922.91 199.19,-933.04"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="198.95,-935.17 205.3,-934.89 200.16,-931.15 198.95,-935.17"/>
</g>
<!-- fvs_zplug_lift -->
<g id="node36" class="node">
<title>fvs_zplug_lift</title>
<g id="a_node36"><a xlink:title="fvs_zplug_lift theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-893" rx="40.98" ry="18"/>
<text text-anchor="middle" x="239.88" y="-890.8" font-family="Inter" font-size="9.00" fill="#222222">fvs_zplug_lift</text>
</a>
</g>
</g>
<!-- fvs_lift&#45;&gt;fvs_zplug_lift -->
<g id="edge26" class="edge">
<title>fvs_lift&#45;&gt;fvs_zplug_lift</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M92.46,-893C118.9,-893 160.28,-893 192.31,-893"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="192.58,-895.1 198.58,-893 192.58,-890.9 192.58,-895.1"/>
</g>
<!-- lift_lc -->
<g id="node2" class="node">
<title>lift_lc</title>
<g id="a_node2"><a xlink:title="lift_lc theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1049" rx="27" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1046.8" font-family="Inter" font-size="9.00" fill="#222222">lift_lc</text>
</a>
</g>
</g>
<!-- lift_0_lc -->
<g id="node3" class="node">
<title>lift_0_lc</title>
<g id="a_node3"><a xlink:title="lift_0_lc theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-1049" rx="27.93" ry="18"/>
<text text-anchor="middle" x="239.88" y="-1046.8" font-family="Inter" font-size="9.00" fill="#222222">lift_0_lc</text>
</a>
</g>
</g>
<!-- lift_lc&#45;&gt;lift_0_lc -->
<g id="edge1" class="edge">
<title>lift_lc&#45;&gt;lift_0_lc</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M92.46,-1049C122.79,-1049 172.78,-1049 205.77,-1049"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="206.13,-1051.1 212.13,-1049 206.13,-1046.9 206.13,-1051.1"/>
</g>
<!-- subst_fvar_self -->
<g id="node12" class="node">
<title>subst_fvar_self</title>
<g id="a_node12"><a xlink:title="subst_fvar_self theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-1049" rx="45.72" ry="18"/>
<text text-anchor="middle" x="408.74" y="-1046.8" font-family="Inter" font-size="9.00" fill="#222222">subst_fvar_self</text>
</a>
</g>
</g>
<!-- lift_0_lc&#45;&gt;subst_fvar_self -->
<g id="edge6" class="edge">
<title>lift_0_lc&#45;&gt;subst_fvar_self</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M267.69,-1049C291.68,-1049 327.51,-1049 356.92,-1049"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="357.09,-1051.1 363.09,-1049 357.09,-1046.9 357.09,-1051.1"/>
</g>
<!-- open_rec_bvar -->
<g id="node4" class="node">
<title>open_rec_bvar</title>
<g id="a_node4"><a xlink:title="open_rec_bvar theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-841" rx="46.38" ry="18"/>
<text text-anchor="middle" x="65.24" y="-838.8" font-family="Inter" font-size="9.00" fill="#222222">open_rec_bvar</text>
</a>
</g>
</g>
<!-- open_rec_bvar&#45;&gt;open_rec_fvs -->
<g id="edge3" class="edge">
<title>open_rec_bvar&#45;&gt;open_rec_fvs</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M102.23,-851.95C111.91,-855.83 122.04,-860.81 130.48,-867 154.67,-884.72 149.23,-901.35 173.48,-919 181.18,-924.6 190.25,-929.2 199.15,-932.89"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="198.6,-934.94 204.95,-935.19 200.14,-931.03 198.6,-934.94"/>
</g>
<!-- open_close -->
<g id="node11" class="node">
<title>open_close</title>
<g id="a_node11"><a xlink:title="open_close theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-841" rx="36.9" ry="18"/>
<text text-anchor="middle" x="239.88" y="-838.8" font-family="Inter" font-size="9.00" fill="#222222">open_close</text>
</a>
</g>
</g>
<!-- open_rec_bvar&#45;&gt;open_close -->
<g id="edge5" class="edge">
<title>open_rec_bvar&#45;&gt;open_close</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M111.6,-841C137.96,-841 170.95,-841 196.74,-841"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="196.79,-843.1 202.79,-841 196.79,-838.9 196.79,-843.1"/>
</g>
<!-- close_rec_fvar -->
<g id="node5" class="node">
<title>close_rec_fvar</title>
<g id="a_node5"><a xlink:title="close_rec_fvar theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1101" rx="45.07" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1098.8" font-family="Inter" font-size="9.00" fill="#222222">close_rec_fvar</text>
</a>
</g>
</g>
<!-- open_rec_occurs_false -->
<g id="node6" class="node">
<title>open_rec_occurs_false</title>
<g id="a_node6"><a xlink:title="open_rec_occurs_false theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-187" rx="65.48" ry="18"/>
<text text-anchor="middle" x="65.24" y="-184.8" font-family="Inter" font-size="9.00" fill="#222222">open_rec_occurs_false</text>
</a>
</g>
</g>
<!-- open_rec_zplug_lift -->
<g id="node33" class="node">
<title>open_rec_zplug_lift</title>
<g id="a_node33"><a xlink:title="open_rec_zplug_lift theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-260" rx="56.66" ry="18"/>
<text text-anchor="middle" x="239.88" y="-257.8" font-family="Inter" font-size="9.00" fill="#222222">open_rec_zplug_lift</text>
</a>
</g>
</g>
<!-- open_rec_occurs_false&#45;&gt;open_rec_zplug_lift -->
<g id="edge18" class="edge">
<title>open_rec_occurs_false&#45;&gt;open_rec_zplug_lift</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M100.4,-202.33C121.4,-211.67 148.91,-223.73 173.48,-234 181.21,-237.23 189.48,-240.59 197.46,-243.78"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="197.14,-245.92 203.49,-246.19 198.69,-242.02 197.14,-245.92"/>
</g>
<!-- full_comp_aux -->
<g id="node34" class="node">
<title>full_comp_aux</title>
<g id="a_node34"><a xlink:title="full_comp_aux theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-355" rx="44.41" ry="18"/>
<text text-anchor="middle" x="408.74" y="-352.8" font-family="Inter" font-size="9.00" fill="#222222">full_comp_aux</text>
</a>
</g>
</g>
<!-- open_rec_occurs_false&#45;&gt;full_comp_aux -->
<g id="edge21" class="edge">
<title>open_rec_occurs_false&#45;&gt;full_comp_aux</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M79.07,-204.91C92.06,-223.05 112.71,-251.95 130.48,-277 149.67,-304.05 144.61,-321.67 173.48,-338 231.69,-370.91 311.45,-368.63 361.26,-362.75"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="361.79,-364.8 367.49,-361.97 361.27,-360.63 361.79,-364.8"/>
</g>
<!-- subst_notin -->
<g id="node84" class="node">
<title>subst_notin</title>
<g id="a_node84"><a xlink:title="subst_notin theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-18" rx="37.56" ry="18"/>
<text text-anchor="middle" x="239.88" y="-15.8" font-family="Inter" font-size="9.00" fill="#222222">subst_notin</text>
</a>
</g>
</g>
<!-- open_rec_occurs_false&#45;&gt;subst_notin -->
<g id="edge62" class="edge">
<title>open_rec_occurs_false&#45;&gt;subst_notin</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M75.37,-169.12C91.41,-139.31 127.39,-79.25 173.48,-44 181.6,-37.79 191.39,-32.87 200.9,-29.05"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="201.91,-30.91 206.77,-26.81 200.41,-26.98 201.91,-30.91"/>
</g>
<!-- full_comp_aux_sub -->
<g id="node98" class="node">
<title>full_comp_aux_sub</title>
<g id="a_node98"><a xlink:title="full_comp_aux_sub theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-257" rx="54.7" ry="18"/>
<text text-anchor="middle" x="408.74" y="-254.8" font-family="Inter" font-size="9.00" fill="#222222">full_comp_aux_sub</text>
</a>
</g>
</g>
<!-- open_rec_occurs_false&#45;&gt;full_comp_aux_sub -->
<g id="edge72" class="edge">
<title>open_rec_occurs_false&#45;&gt;full_comp_aux_sub</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M89.81,-170.29C135.38,-140.25 237.14,-84.29 306.27,-130 346.97,-156.91 315.05,-196.23 349.27,-231 353.28,-235.07 358.03,-238.55 363.07,-241.52"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="362.36,-243.53 368.63,-244.55 364.37,-239.84 362.36,-243.53"/>
</g>
<!-- close_rec_notin -->
<g id="node7" class="node">
<title>close_rec_notin</title>
<g id="a_node7"><a xlink:title="close_rec_notin theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-18" rx="47.84" ry="18"/>
<text text-anchor="middle" x="65.24" y="-15.8" font-family="Inter" font-size="9.00" fill="#222222">close_rec_notin</text>
</a>
</g>
</g>
<!-- close_rec_notin&#45;&gt;subst_notin -->
<g id="edge61" class="edge">
<title>close_rec_notin&#45;&gt;subst_notin</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M113.41,-18C139.18,-18 170.86,-18 195.93,-18"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="196.16,-20.1 202.16,-18 196.16,-15.9 196.16,-20.1"/>
</g>
<!-- close_rec_fvs -->
<g id="node8" class="node">
<title>close_rec_fvs</title>
<g id="a_node8"><a xlink:title="close_rec_fvs theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-997" rx="42.95" ry="18"/>
<text text-anchor="middle" x="239.88" y="-994.8" font-family="Inter" font-size="9.00" fill="#222222">close_rec_fvs</text>
</a>
</g>
</g>
<!-- subst_fvs -->
<g id="node14" class="node">
<title>subst_fvs</title>
<g id="a_node14"><a xlink:title="subst_fvs theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-997" rx="32.16" ry="18"/>
<text text-anchor="middle" x="408.74" y="-994.8" font-family="Inter" font-size="9.00" fill="#222222">subst_fvs</text>
</a>
</g>
</g>
<!-- close_rec_fvs&#45;&gt;subst_fvs -->
<g id="edge7" class="edge">
<title>close_rec_fvs&#45;&gt;subst_fvs</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M282.98,-997C309.8,-997 344.23,-997 370.13,-997"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="370.18,-999.1 376.18,-997 370.18,-994.9 370.18,-999.1"/>
</g>
<!-- open_rec_bvar_neq -->
<g id="node9" class="node">
<title>open_rec_bvar_neq</title>
<g id="a_node9"><a xlink:title="open_rec_bvar_neq theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-945" rx="57.97" ry="18"/>
<text text-anchor="middle" x="65.24" y="-942.8" font-family="Inter" font-size="9.00" fill="#222222">open_rec_bvar_neq</text>
</a>
</g>
</g>
<!-- open_rec_bvar_neq&#45;&gt;open_rec_fvs -->
<g id="edge4" class="edge">
<title>open_rec_bvar_neq&#45;&gt;open_rec_fvs</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M123.25,-945C145.5,-945 170.71,-945 191.9,-945"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="192.05,-947.1 198.05,-945 192.05,-942.9 192.05,-947.1"/>
</g>
<!-- open_rec_fvs&#45;&gt;subst_fvs -->
<g id="edge8" class="edge">
<title>open_rec_fvs&#45;&gt;subst_fvs</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M274.24,-955.4C303.28,-964.45 345.15,-977.49 374.23,-986.56"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="373.87,-988.65 380.23,-988.43 375.12,-984.64 373.87,-988.65"/>
</g>
<!-- subst_lc_self -->
<g id="node85" class="node">
<title>subst_lc_self</title>
<g id="a_node85"><a xlink:title="subst_lc_self theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="577.6" cy="-1049" rx="40.33" ry="18"/>
<text text-anchor="middle" x="577.6" y="-1046.8" font-family="Inter" font-size="9.00" fill="#222222">subst_lc_self</text>
</a>
</g>
</g>
<!-- subst_fvar_self&#45;&gt;subst_lc_self -->
<g id="edge63" class="edge">
<title>subst_fvar_self&#45;&gt;subst_lc_self</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M454.45,-1049C478.12,-1049 507.11,-1049 530.92,-1049"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="531.17,-1051.1 537.17,-1049 531.17,-1046.9 531.17,-1051.1"/>
</g>
<!-- subst_fvar_other -->
<g id="node13" class="node">
<title>subst_fvar_other</title>
<g id="a_node13"><a xlink:title="subst_fvar_other theory/Binding.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1153" rx="49.8" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1150.8" font-family="Inter" font-size="9.00" fill="#222222">subst_fvar_other</text>
</a>
</g>
</g>
<!-- subst_other -->
<g id="node86" class="node">
<title>subst_other</title>
<g id="a_node86"><a xlink:title="subst_other theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-1153" rx="37.56" ry="18"/>
<text text-anchor="middle" x="239.88" y="-1150.8" font-family="Inter" font-size="9.00" fill="#222222">subst_other</text>
</a>
</g>
</g>
<!-- subst_fvar_other&#45;&gt;subst_other -->
<g id="edge64" class="edge">
<title>subst_fvar_other&#45;&gt;subst_other</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M115.25,-1153C140.7,-1153 171.52,-1153 196.02,-1153"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="196.1,-1155.1 202.1,-1153 196.1,-1150.9 196.1,-1155.1"/>
</g>
<!-- Star_trans -->
<g id="node15" class="node">
<title>Star_trans</title>
<g id="a_node15"><a xlink:title="Star_trans theory/Closure.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1205" rx="34.78" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1202.8" font-family="Inter" font-size="9.00" fill="#222222">Star_trans</text>
</a>
</g>
</g>
<!-- red1_star -->
<g id="node16" class="node">
<title>red1_star</title>
<g id="a_node16"><a xlink:title="red1_star theory/Closure.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1257" rx="31.35" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1254.8" font-family="Inter" font-size="9.00" fill="#222222">red1_star</text>
</a>
</g>
</g>
<!-- Plus_to_Star -->
<g id="node17" class="node">
<title>Plus_to_Star</title>
<g id="a_node17"><a xlink:title="Plus_to_Star theory/Closure.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="577.6" cy="-307" rx="39.02" ry="18"/>
<text text-anchor="middle" x="577.6" y="-304.8" font-family="Inter" font-size="9.00" fill="#222222">Plus_to_Star</text>
</a>
</g>
</g>
<!-- star_red_sub_full_comp -->
<g id="node100" class="node">
<title>star_red_sub_full_comp</title>
<g id="a_node100"><a xlink:title="star_red_sub_full_comp theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="752.81" cy="-281" rx="65.64" ry="18"/>
<text text-anchor="middle" x="752.81" y="-278.8" font-family="Inter" font-size="9.00" fill="#222222">star_red_sub_full_comp</text>
</a>
</g>
</g>
<!-- Plus_to_Star&#45;&gt;star_red_sub_full_comp -->
<g id="edge79" class="edge">
<title>Plus_to_Star&#45;&gt;star_red_sub_full_comp</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M615.34,-301.49C636.57,-298.3 663.88,-294.2 688.49,-290.51"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="689.06,-292.54 694.68,-289.58 688.43,-288.39 689.06,-292.54"/>
</g>
<!-- Star_red1_context -->
<g id="node18" class="node">
<title>Star_red1_context</title>
<g id="a_node18"><a xlink:title="Star_red1_context theory/Closure.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1309" rx="53.23" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1306.8" font-family="Inter" font-size="9.00" fill="#222222">Star_red1_context</text>
</a>
</g>
</g>
<!-- star_one_trans -->
<g id="node19" class="node">
<title>star_one_trans</title>
<g id="a_node19"><a xlink:title="star_one_trans theory/Closure.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1361" rx="45.07" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1358.8" font-family="Inter" font-size="9.00" fill="#222222">star_one_trans</text>
</a>
</g>
</g>
<!-- in_comb -->
<g id="node20" class="node">
<title>in_comb</title>
<g id="a_node20"><a xlink:title="in_comb theory/Enumerate.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1465" rx="30.04" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1462.8" font-family="Inter" font-size="9.00" fill="#222222">in_comb</text>
</a>
</g>
</g>
<!-- size_all_terms -->
<g id="node22" class="node">
<title>size_all_terms</title>
<g id="a_node22"><a xlink:title="size_all_terms theory/Enumerate.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-1439" rx="43.1" ry="18"/>
<text text-anchor="middle" x="239.88" y="-1436.8" font-family="Inter" font-size="9.00" fill="#222222">size_all_terms</text>
</a>
</g>
</g>
<!-- in_comb&#45;&gt;size_all_terms -->
<g id="edge9" class="edge">
<title>in_comb&#45;&gt;size_all_terms</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M94.75,-1460.71C121.41,-1456.69 161.7,-1450.62 192.91,-1445.92"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="193.4,-1447.97 199.02,-1445 192.78,-1443.82 193.4,-1447.97"/>
</g>
<!-- pow2_pos -->
<g id="node21" class="node">
<title>pow2_pos</title>
<g id="a_node21"><a xlink:title="pow2_pos theory/Enumerate.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1413" rx="34.13" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1410.8" font-family="Inter" font-size="9.00" fill="#222222">pow2_pos</text>
</a>
</g>
</g>
<!-- pow2_pos&#45;&gt;size_all_terms -->
<g id="edge10" class="edge">
<title>pow2_pos&#45;&gt;size_all_terms</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M98.31,-1417.83C124.8,-1421.82 162.75,-1427.54 192.55,-1432.02"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="192.53,-1434.14 198.78,-1432.96 193.16,-1429.99 192.53,-1434.14"/>
</g>
<!-- enumerate_check -->
<g id="node23" class="node">
<title>enumerate_check</title>
<g id="a_node23"><a xlink:title="enumerate_check theory/Enumerate.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="1232.27" cy="-741" rx="53.89" ry="18"/>
<text text-anchor="middle" x="1232.27" y="-738.8" font-family="Inter" font-size="9.00" fill="#222222">enumerate_check</text>
</a>
</g>
</g>
<!-- enumerate_sound -->
<g id="node24" class="node">
<title>enumerate_sound</title>
<g id="a_node24"><a xlink:title="enumerate_sound theory/Enumerate.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="752.81" cy="-711" rx="53.23" ry="18"/>
<text text-anchor="middle" x="752.81" y="-708.8" font-family="Inter" font-size="9.00" fill="#222222">enumerate_sound</text>
</a>
</g>
</g>
<!-- enumerate_complete -->
<g id="node25" class="node">
<title>enumerate_complete</title>
<g id="a_node25"><a xlink:title="enumerate_complete theory/Enumerate.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="752.81" cy="-521" rx="61.55" ry="18"/>
<text text-anchor="middle" x="752.81" y="-518.8" font-family="Inter" font-size="9.00" fill="#222222">enumerate_complete</text>
</a>
</g>
</g>
<!-- Plus_red1_context -->
<g id="node26" class="node">
<title>Plus_red1_context</title>
<g id="a_node26"><a xlink:title="Plus_red1_context theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="577.6" cy="-411" rx="53.23" ry="18"/>
<text text-anchor="middle" x="577.6" y="-408.8" font-family="Inter" font-size="9.00" fill="#222222">Plus_red1_context</text>
</a>
</g>
</g>
<!-- lemma_2_3_beta_sim -->
<g id="node41" class="node">
<title>lemma_2_3_beta_sim</title>
<g id="a_node41"><a xlink:title="lemma_2_3_beta_sim (section 2.3) theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<path fill="#d9ead3" stroke="#38761d" d="M793.81,-403C793.81,-403 711.81,-403 711.81,-403 705.81,-403 699.81,-397 699.81,-391 699.81,-391 699.81,-379 699.81,-379 699.81,-373 705.81,-367 711.81,-367 711.81,-367 793.81,-367 793.81,-367 799.81,-367 805.81,-373 805.81,-379 805.81,-379 805.81,-391 805.81,-391 805.81,-397 799.81,-403 793.81,-403"/>
<text text-anchor="middle" x="752.81" y="-382.8" font-family="Inter" font-size="9.00" fill="#222222">lemma_2_3_beta_sim</text>
</a>
</g>
</g>
<!-- Plus_red1_context&#45;&gt;lemma_2_3_beta_sim -->
<g id="edge31" class="edge">
<title>Plus_red1_context&#45;&gt;lemma_2_3_beta_sim</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M626.39,-403.83C647.17,-400.71 671.7,-397.02 693.54,-393.75"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="694,-395.8 699.62,-392.83 693.38,-391.65 694,-395.8"/>
</g>
<!-- occurs_count_zero -->
<g id="node27" class="node">
<title>occurs_count_zero</title>
<g id="a_node27"><a xlink:title="occurs_count_zero theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-208" rx="54.7" ry="18"/>
<text text-anchor="middle" x="239.88" y="-205.8" font-family="Inter" font-size="9.00" fill="#222222">occurs_count_zero</text>
</a>
</g>
</g>
<!-- occurs_count_pos -->
<g id="node29" class="node">
<title>occurs_count_pos</title>
<g id="a_node29"><a xlink:title="occurs_count_pos theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-205" rx="53.89" ry="18"/>
<text text-anchor="middle" x="408.74" y="-202.8" font-family="Inter" font-size="9.00" fill="#222222">occurs_count_pos</text>
</a>
</g>
</g>
<!-- occurs_count_zero&#45;&gt;occurs_count_pos -->
<g id="edge14" class="edge">
<title>occurs_count_zero&#45;&gt;occurs_count_pos</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M295.05,-207.03C312.17,-206.72 331.17,-206.38 348.62,-206.06"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="349.01,-208.16 354.97,-205.95 348.94,-203.96 349.01,-208.16"/>
</g>
<!-- occurs_count_zero&#45;&gt;full_comp_aux -->
<g id="edge19" class="edge">
<title>occurs_count_zero&#45;&gt;full_comp_aux</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M280.55,-220.13C289.46,-223.82 298.55,-228.42 306.27,-234 311.41,-237.71 362.06,-299.19 389.8,-333.05"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="388.29,-334.52 393.72,-337.83 391.54,-331.86 388.29,-334.52"/>
</g>
<!-- occurs_count_zero&#45;&gt;full_comp_aux_sub -->
<g id="edge70" class="edge">
<title>occurs_count_zero&#45;&gt;full_comp_aux_sub</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M281.27,-219.86C305.38,-226.94 336.09,-235.96 361.21,-243.34"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="360.79,-245.4 367.14,-245.08 361.97,-241.37 360.79,-245.4"/>
</g>
<!-- occurs_count_false -->
<g id="node28" class="node">
<title>occurs_count_false</title>
<g id="a_node28"><a xlink:title="occurs_count_false theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-398" rx="56.66" ry="18"/>
<text text-anchor="middle" x="65.24" y="-395.8" font-family="Inter" font-size="9.00" fill="#222222">occurs_count_false</text>
</a>
</g>
</g>
<!-- occurs_count_zfill_plug -->
<g id="node32" class="node">
<title>occurs_count_zfill_plug</title>
<g id="a_node32"><a xlink:title="occurs_count_zfill_plug theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-398" rx="66.29" ry="18"/>
<text text-anchor="middle" x="239.88" y="-395.8" font-family="Inter" font-size="9.00" fill="#222222">occurs_count_zfill_plug</text>
</a>
</g>
</g>
<!-- occurs_count_false&#45;&gt;occurs_count_zfill_plug -->
<g id="edge15" class="edge">
<title>occurs_count_false&#45;&gt;occurs_count_zfill_plug</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M122.29,-398C136.5,-398 151.97,-398 166.86,-398"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="167.2,-400.1 173.2,-398 167.2,-395.9 167.2,-400.1"/>
</g>
<!-- occurs_lift_self -->
<g id="node30" class="node">
<title>occurs_lift_self</title>
<g id="a_node30"><a xlink:title="occurs_lift_self theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-303" rx="46.38" ry="18"/>
<text text-anchor="middle" x="65.24" y="-300.8" font-family="Inter" font-size="9.00" fill="#222222">occurs_lift_self</text>
</a>
</g>
</g>
<!-- occurs_lift_self&#45;&gt;occurs_count_zfill_plug -->
<g id="edge16" class="edge">
<title>occurs_lift_self&#45;&gt;occurs_count_zfill_plug</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M90.06,-318.52C111.49,-332.23 144.05,-352.4 173.48,-368 181.37,-372.18 189.96,-376.37 198.23,-380.23"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="197.57,-382.24 203.9,-382.85 199.33,-378.43 197.57,-382.24"/>
</g>
<!-- occurs_lift_self&#45;&gt;open_rec_zplug_lift -->
<g id="edge17" class="edge">
<title>occurs_lift_self&#45;&gt;open_rec_zplug_lift</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M104.55,-293.46C129.4,-287.27 162.02,-279.14 188.89,-272.45"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="189.57,-274.45 194.88,-270.96 188.55,-270.37 189.57,-274.45"/>
</g>
<!-- zdecs_nonempty -->
<g id="node31" class="node">
<title>zdecs_nonempty</title>
<g id="a_node31"><a xlink:title="zdecs_nonempty theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-312" rx="51.27" ry="18"/>
<text text-anchor="middle" x="239.88" y="-309.8" font-family="Inter" font-size="9.00" fill="#222222">zdecs_nonempty</text>
</a>
</g>
</g>
<!-- zdecs_nonempty&#45;&gt;full_comp_aux -->
<g id="edge23" class="edge">
<title>zdecs_nonempty&#45;&gt;full_comp_aux</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M281.7,-322.52C306.88,-329.01 339.16,-337.33 364.74,-343.92"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="364.42,-346.01 370.76,-345.47 365.47,-341.94 364.42,-346.01"/>
</g>
<!-- zdecs_nonempty&#45;&gt;full_comp_aux_sub -->
<g id="edge76" class="edge">
<title>zdecs_nonempty&#45;&gt;full_comp_aux_sub</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M277.91,-299.79C303.17,-291.47 336.75,-280.4 363.43,-271.6"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="364.32,-273.52 369.36,-269.65 363.01,-269.53 364.32,-273.52"/>
</g>
<!-- occurs_count_zfill_plug&#45;&gt;full_comp_aux -->
<g id="edge20" class="edge">
<title>occurs_count_zfill_plug&#45;&gt;full_comp_aux</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M288.69,-385.68C312.65,-379.5 341.43,-372.09 364.69,-366.09"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="365.5,-368.05 370.79,-364.52 364.45,-363.99 365.5,-368.05"/>
</g>
<!-- occurs_count_zfill_plug&#45;&gt;full_comp_aux_sub -->
<g id="edge71" class="edge">
<title>occurs_count_zfill_plug&#45;&gt;full_comp_aux_sub</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M261.34,-380.71C292.11,-354.71 350.21,-305.61 383.21,-277.73"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="384.66,-279.25 387.89,-273.77 381.95,-276.04 384.66,-279.25"/>
</g>
<!-- open_rec_zplug_lift&#45;&gt;full_comp_aux -->
<g id="edge22" class="edge">
<title>open_rec_zplug_lift&#45;&gt;full_comp_aux</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M278.52,-273.34C287.77,-277.06 297.53,-281.36 306.27,-286 333.51,-300.45 362.38,-320.62 382.33,-335.42"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="381.14,-337.15 387.21,-339.06 383.66,-333.78 381.14,-337.15"/>
</g>
<!-- open_rec_zplug_lift&#45;&gt;full_comp_aux_sub -->
<g id="edge73" class="edge">
<title>open_rec_zplug_lift&#45;&gt;full_comp_aux_sub</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M296.44,-259C312.9,-258.71 331.01,-258.38 347.74,-258.08"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="347.87,-260.18 353.84,-257.97 347.8,-255.98 347.87,-260.18"/>
</g>
<!-- lemma_2_2_full_comp -->
<g id="node35" class="node">
<title>lemma_2_2_full_comp</title>
<g id="a_node35"><a xlink:title="lemma_2_2_full_comp (section 2.2) theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<path fill="#d9ead3" stroke="#38761d" d="M619.6,-377C619.6,-377 535.6,-377 535.6,-377 529.6,-377 523.6,-371 523.6,-365 523.6,-365 523.6,-353 523.6,-353 523.6,-347 529.6,-341 535.6,-341 535.6,-341 619.6,-341 619.6,-341 625.6,-341 631.6,-347 631.6,-353 631.6,-353 631.6,-365 631.6,-365 631.6,-371 625.6,-377 619.6,-377"/>
<text text-anchor="middle" x="577.6" y="-356.8" font-family="Inter" font-size="9.00" fill="#222222">lemma_2_2_full_comp</text>
</a>
</g>
</g>
<!-- full_comp_aux&#45;&gt;lemma_2_2_full_comp -->
<g id="edge25" class="edge">
<title>full_comp_aux&#45;&gt;lemma_2_2_full_comp</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M453.14,-356.04C472.74,-356.51 496.2,-357.07 517.39,-357.58"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="517.54,-359.68 523.59,-357.73 517.64,-355.49 517.54,-359.68"/>
</g>
<!-- lemma_2_2_full_comp&#45;&gt;lemma_2_3_beta_sim -->
<g id="edge32" class="edge">
<title>lemma_2_2_full_comp&#45;&gt;lemma_2_3_beta_sim</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M631.98,-367.01C651.53,-369.95 673.74,-373.28 693.69,-376.27"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="693.55,-378.38 699.8,-377.19 694.17,-374.22 693.55,-378.38"/>
</g>
<!-- red1_root_fv -->
<g id="node38" class="node">
<title>red1_root_fv</title>
<g id="a_node38"><a xlink:title="red1_root_fv theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-893" rx="38.87" ry="18"/>
<text text-anchor="middle" x="408.74" y="-890.8" font-family="Inter" font-size="9.00" fill="#222222">red1_root_fv</text>
</a>
</g>
</g>
<!-- fvs_zplug_lift&#45;&gt;red1_root_fv -->
<g id="edge27" class="edge">
<title>fvs_zplug_lift&#45;&gt;red1_root_fv</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M281.27,-893C306.27,-893 338.37,-893 363.98,-893"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="364.01,-895.1 370.01,-893 364.01,-890.9 364.01,-895.1"/>
</g>
<!-- plug_fv_mono -->
<g id="node37" class="node">
<title>plug_fv_mono</title>
<g id="a_node37"><a xlink:title="plug_fv_mono theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-945" rx="42.95" ry="18"/>
<text text-anchor="middle" x="408.74" y="-942.8" font-family="Inter" font-size="9.00" fill="#222222">plug_fv_mono</text>
</a>
</g>
</g>
<!-- red1r_fv -->
<g id="node39" class="node">
<title>red1r_fv</title>
<g id="a_node39"><a xlink:title="red1r_fv theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="577.6" cy="-919" rx="28.74" ry="18"/>
<text text-anchor="middle" x="577.6" y="-916.8" font-family="Inter" font-size="9.00" fill="#222222">red1r_fv</text>
</a>
</g>
</g>
<!-- plug_fv_mono&#45;&gt;red1r_fv -->
<g id="edge28" class="edge">
<title>plug_fv_mono&#45;&gt;red1r_fv</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M449.28,-938.84C477.95,-934.37 516.29,-928.4 543.38,-924.18"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="543.72,-926.25 549.33,-923.25 543.08,-922.1 543.72,-926.25"/>
</g>
<!-- red1_root_fv&#45;&gt;red1r_fv -->
<g id="edge29" class="edge">
<title>red1_root_fv&#45;&gt;red1r_fv</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M445.53,-898.58C474.47,-903.09 514.9,-909.39 543.18,-913.79"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="543.12,-915.91 549.38,-914.76 543.77,-911.76 543.12,-915.91"/>
</g>
<!-- lemma_2_1_fv_preserved -->
<g id="node40" class="node">
<title>lemma_2_1_fv_preserved</title>
<g id="a_node40"><a xlink:title="lemma_2_1_fv_preserved (section 2.1) theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<path fill="#d9ead3" stroke="#38761d" d="M800.81,-937C800.81,-937 704.81,-937 704.81,-937 698.81,-937 692.81,-931 692.81,-925 692.81,-925 692.81,-913 692.81,-913 692.81,-907 698.81,-901 704.81,-901 704.81,-901 800.81,-901 800.81,-901 806.81,-901 812.81,-907 812.81,-913 812.81,-913 812.81,-925 812.81,-925 812.81,-931 806.81,-937 800.81,-937"/>
<text text-anchor="middle" x="752.81" y="-916.8" font-family="Inter" font-size="9.00" fill="#222222">lemma_2_1_fv_preserved</text>
</a>
</g>
</g>
<!-- red1r_fv&#45;&gt;lemma_2_1_fv_preserved -->
<g id="edge30" class="edge">
<title>red1r_fv&#45;&gt;lemma_2_1_fv_preserved</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M606.82,-919C628.38,-919 659,-919 686.54,-919"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="686.73,-921.1 692.73,-919 686.73,-916.9 686.73,-921.1"/>
</g>
<!-- gen_fv_preserved -->
<g id="node55" class="node">
<title>gen_fv_preserved</title>
<g id="a_node55"><a xlink:title="gen_fv_preserved theory/Random.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="921.68" cy="-830" rx="52.58" ry="18"/>
<text text-anchor="middle" x="921.68" y="-827.8" font-family="Inter" font-size="9.00" fill="#222222">gen_fv_preserved</text>
</a>
</g>
</g>
<!-- lemma_2_1_fv_preserved&#45;&gt;gen_fv_preserved -->
<g id="edge40" class="edge">
<title>lemma_2_1_fv_preserved&#45;&gt;gen_fv_preserved</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M801.67,-900.89C807.45,-898.39 813.22,-895.73 818.63,-893 844.23,-880.09 871.81,-862.84 891.84,-849.65"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="893.18,-851.29 897.02,-846.22 890.86,-847.78 893.18,-851.29"/>
</g>
<!-- corpus_fv_preserved -->
<g id="node108" class="node">
<title>corpus_fv_preserved</title>
<g id="a_node108"><a xlink:title="corpus_fv_preserved theory/Tests.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="921.68" cy="-900" rx="60.09" ry="18"/>
<text text-anchor="middle" x="921.68" y="-897.8" font-family="Inter" font-size="9.00" fill="#222222">corpus_fv_preserved</text>
</a>
</g>
</g>
<!-- lemma_2_1_fv_preserved&#45;&gt;corpus_fv_preserved -->
<g id="edge87" class="edge">
<title>lemma_2_1_fv_preserved&#45;&gt;corpus_fv_preserved</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M813.11,-912.25C827.95,-910.56 843.9,-908.74 858.85,-907.04"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="859.47,-909.08 865.2,-906.32 859,-904.91 859.47,-909.08"/>
</g>
<!-- Plus_trans -->
<g id="node42" class="node">
<title>Plus_trans</title>
<g id="a_node42"><a xlink:title="Plus_trans theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1517" rx="34.78" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1514.8" font-family="Inter" font-size="9.00" fill="#222222">Plus_trans</text>
</a>
</g>
</g>
<!-- Plus_step_trans -->
<g id="node43" class="node">
<title>Plus_step_trans</title>
<g id="a_node43"><a xlink:title="Plus_step_trans theory/Metatheory.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1569" rx="47.19" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1566.8" font-family="Inter" font-size="9.00" fill="#222222">Plus_step_trans</text>
</a>
</g>
</g>
<!-- par_red1_iff -->
<g id="node44" class="node">
<title>par_red1_iff</title>
<g id="a_node44"><a xlink:title="par_red1_iff theory/Parallel.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1621" rx="37.56" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1618.8" font-family="Inter" font-size="9.00" fill="#222222">par_red1_iff</text>
</a>
</g>
</g>
<!-- par_to_red1_or_eq -->
<g id="node47" class="node">
<title>par_to_red1_or_eq</title>
<g id="a_node47"><a xlink:title="par_to_red1_or_eq theory/Parallel.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-1647" rx="53.23" ry="18"/>
<text text-anchor="middle" x="239.88" y="-1644.8" font-family="Inter" font-size="9.00" fill="#222222">par_to_red1_or_eq</text>
</a>
</g>
</g>
<!-- par_red1_iff&#45;&gt;par_to_red1_or_eq -->
<g id="edge33" class="edge">
<title>par_red1_iff&#45;&gt;par_to_red1_or_eq</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M101.18,-1626.26C125.17,-1629.88 157.5,-1634.74 184.81,-1638.86"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="184.66,-1640.96 190.91,-1639.78 185.29,-1636.81 184.66,-1640.96"/>
</g>
<!-- red1_or_eq_to_par -->
<g id="node48" class="node">
<title>red1_or_eq_to_par</title>
<g id="a_node48"><a xlink:title="red1_or_eq_to_par theory/Parallel.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-1595" rx="53.23" ry="18"/>
<text text-anchor="middle" x="239.88" y="-1592.8" font-family="Inter" font-size="9.00" fill="#222222">red1_or_eq_to_par</text>
</a>
</g>
</g>
<!-- par_red1_iff&#45;&gt;red1_or_eq_to_par -->
<g id="edge34" class="edge">
<title>par_red1_iff&#45;&gt;red1_or_eq_to_par</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M101.18,-1615.74C125.17,-1612.12 157.5,-1607.26 184.81,-1603.14"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="185.29,-1605.19 190.91,-1602.22 184.66,-1601.04 185.29,-1605.19"/>
</g>
<!-- red1_in_par -->
<g id="node45" class="node">
<title>red1_in_par</title>
<g id="a_node45"><a xlink:title="red1_in_par theory/Parallel.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1673" rx="37.56" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1670.8" font-family="Inter" font-size="9.00" fill="#222222">red1_in_par</text>
</a>
</g>
</g>
<!-- par_context -->
<g id="node46" class="node">
<title>par_context</title>
<g id="a_node46"><a xlink:title="par_context theory/Parallel.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1725" rx="38.87" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1722.8" font-family="Inter" font-size="9.00" fill="#222222">par_context</text>
</a>
</g>
</g>
<!-- par_reflexive -->
<g id="node49" class="node">
<title>par_reflexive</title>
<g id="a_node49"><a xlink:title="par_reflexive theory/Parallel.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1777" rx="41.64" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1774.8" font-family="Inter" font-size="9.00" fill="#222222">par_reflexive</text>
</a>
</g>
</g>
<!-- gen_list_length -->
<g id="node50" class="node">
<title>gen_list_length</title>
<g id="a_node50"><a xlink:title="gen_list_length theory/Random.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1829" rx="46.38" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1826.8" font-family="Inter" font-size="9.00" fill="#222222">gen_list_length</text>
</a>
</g>
</g>
<!-- check_term_true -->
<g id="node51" class="node">
<title>check_term_true</title>
<g id="a_node51"><a xlink:title="check_term_true theory/Random.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="921.68" cy="-741" rx="50.61" ry="18"/>
<text text-anchor="middle" x="921.68" y="-738.8" font-family="Inter" font-size="9.00" fill="#222222">check_term_true</text>
</a>
</g>
</g>
<!-- check_all_true -->
<g id="node52" class="node">
<title>check_all_true</title>
<g id="a_node52"><a xlink:title="check_all_true theory/Random.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="1080.15" cy="-741" rx="44.41" ry="18"/>
<text text-anchor="middle" x="1080.15" y="-738.8" font-family="Inter" font-size="9.00" fill="#222222">check_all_true</text>
</a>
</g>
</g>
<!-- check_term_true&#45;&gt;check_all_true -->
<g id="edge37" class="edge">
<title>check_term_true&#45;&gt;check_all_true</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M972.62,-741C990.78,-741 1011.29,-741 1029.43,-741"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="1029.48,-743.1 1035.48,-741 1029.48,-738.9 1029.48,-743.1"/>
</g>
<!-- check_all_true&#45;&gt;enumerate_check -->
<g id="edge11" class="edge">
<title>check_all_true&#45;&gt;enumerate_check</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M1124.97,-741C1139.72,-741 1156.42,-741 1172.14,-741"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="1172.35,-743.1 1178.35,-741 1172.35,-738.9 1172.35,-743.1"/>
</g>
<!-- gen_sound -->
<g id="node53" class="node">
<title>gen_sound</title>
<g id="a_node53"><a xlink:title="gen_sound theory/Random.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="752.81" cy="-867" rx="35.59" ry="18"/>
<text text-anchor="middle" x="752.81" y="-864.8" font-family="Inter" font-size="9.00" fill="#222222">gen_sound</text>
</a>
</g>
</g>
<!-- gen_complete -->
<g id="node54" class="node">
<title>gen_complete</title>
<g id="a_node54"><a xlink:title="gen_complete theory/Random.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="752.81" cy="-469" rx="43.76" ry="18"/>
<text text-anchor="middle" x="752.81" y="-466.8" font-family="Inter" font-size="9.00" fill="#222222">gen_complete</text>
</a>
</g>
</g>
<!-- zdecs_sound -->
<g id="node56" class="node">
<title>zdecs_sound</title>
<g id="a_node56"><a xlink:title="zdecs_sound theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-450" rx="40.98" ry="18"/>
<text text-anchor="middle" x="239.88" y="-447.8" font-family="Inter" font-size="9.00" fill="#222222">zdecs_sound</text>
</a>
</g>
</g>
<!-- zdecs_sound&#45;&gt;full_comp_aux -->
<g id="edge24" class="edge">
<title>zdecs_sound&#45;&gt;full_comp_aux</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M272.44,-439.05C283.39,-434.84 295.59,-429.67 306.27,-424 333.51,-409.55 362.38,-389.38 382.33,-374.58"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="383.66,-376.22 387.21,-370.94 381.14,-372.85 383.66,-376.22"/>
</g>
<!-- root_steps_sound -->
<g id="node59" class="node">
<title>root_steps_sound</title>
<g id="a_node59"><a xlink:title="root_steps_sound theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-729" rx="51.27" ry="18"/>
<text text-anchor="middle" x="408.74" y="-726.8" font-family="Inter" font-size="9.00" fill="#222222">root_steps_sound</text>
</a>
</g>
</g>
<!-- zdecs_sound&#45;&gt;root_steps_sound -->
<g id="edge42" class="edge">
<title>zdecs_sound&#45;&gt;root_steps_sound</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M277.52,-457.42C288.2,-461.28 298.96,-467.14 306.27,-476 371.62,-555.21 285.52,-622.5 349.27,-703 353,-707.7 357.75,-711.58 362.93,-714.77"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="361.98,-716.64 368.24,-717.73 364.03,-712.97 361.98,-716.64"/>
</g>
<!-- zdecs_sound&#45;&gt;full_comp_aux_sub -->
<g id="edge77" class="edge">
<title>zdecs_sound&#45;&gt;full_comp_aux_sub</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M276.31,-441.47C286.94,-437.54 297.96,-431.93 306.27,-424 339.8,-392 324.91,-368.43 349.27,-329 360.28,-311.19 375.19,-292.9 387.2,-279.21"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="389.07,-280.26 391.48,-274.38 385.92,-277.47 389.07,-280.26"/>
</g>
<!-- zdecs_complete -->
<g id="node57" class="node">
<title>zdecs_complete</title>
<g id="a_node57"><a xlink:title="zdecs_complete theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-677" rx="49.15" ry="18"/>
<text text-anchor="middle" x="239.88" y="-674.8" font-family="Inter" font-size="9.00" fill="#222222">zdecs_complete</text>
</a>
</g>
</g>
<!-- root_steps_complete -->
<g id="node60" class="node">
<title>root_steps_complete</title>
<g id="a_node60"><a xlink:title="root_steps_complete theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-677" rx="59.43" ry="18"/>
<text text-anchor="middle" x="408.74" y="-674.8" font-family="Inter" font-size="9.00" fill="#222222">root_steps_complete</text>
</a>
</g>
</g>
<!-- zdecs_complete&#45;&gt;root_steps_complete -->
<g id="edge43" class="edge">
<title>zdecs_complete&#45;&gt;root_steps_complete</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M289.14,-677C306,-677 325.21,-677 343.19,-677"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="343.23,-679.1 349.23,-677 343.23,-674.9 343.23,-679.1"/>
</g>
<!-- positions_at -->
<g id="node58" class="node">
<title>positions_at</title>
<g id="a_node58"><a xlink:title="positions_at theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-781" rx="38.21" ry="18"/>
<text text-anchor="middle" x="408.74" y="-778.8" font-family="Inter" font-size="9.00" fill="#222222">positions_at</text>
</a>
</g>
</g>
<!-- steps_sound -->
<g id="node61" class="node">
<title>steps_sound</title>
<g id="a_node61"><a xlink:title="steps_sound theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="577.6" cy="-763" rx="39.02" ry="18"/>
<text text-anchor="middle" x="577.6" y="-760.8" font-family="Inter" font-size="9.00" fill="#222222">steps_sound</text>
</a>
</g>
</g>
<!-- positions_at&#45;&gt;steps_sound -->
<g id="edge44" class="edge">
<title>positions_at&#45;&gt;steps_sound</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M445.95,-777.09C471.61,-774.33 506.16,-770.6 533.29,-767.67"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="533.57,-769.75 539.31,-767.02 533.12,-765.58 533.57,-769.75"/>
</g>
<!-- root_steps_sound&#45;&gt;steps_sound -->
<g id="edge45" class="edge">
<title>root_steps_sound&#45;&gt;steps_sound</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M453.58,-737.93C478.86,-743.08 510.45,-749.52 535.29,-754.58"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="535.16,-756.7 541.46,-755.84 536,-752.58 535.16,-756.7"/>
</g>
<!-- steps_complete -->
<g id="node68" class="node">
<title>steps_complete</title>
<g id="a_node68"><a xlink:title="steps_complete theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="577.6" cy="-573" rx="47.84" ry="18"/>
<text text-anchor="middle" x="577.6" y="-570.8" font-family="Inter" font-size="9.00" fill="#222222">steps_complete</text>
</a>
</g>
</g>
<!-- root_steps_complete&#45;&gt;steps_complete -->
<g id="edge51" class="edge">
<title>root_steps_complete&#45;&gt;steps_complete</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M445.25,-662.61C452.97,-659.1 460.98,-655.15 468.21,-651 498.36,-633.69 530.39,-609.89 551.74,-593.15"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="553.26,-594.63 556.67,-589.26 550.65,-591.33 553.26,-594.63"/>
</g>
<!-- steps_sound&#45;&gt;enumerate_sound -->
<g id="edge12" class="edge">
<title>steps_sound&#45;&gt;enumerate_sound</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M610.78,-753.34C637.74,-745.25 676.55,-733.6 706.63,-724.56"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="707.38,-726.53 712.52,-722.8 706.17,-722.51 707.38,-726.53"/>
</g>
<!-- steps_sound&#45;&gt;gen_sound -->
<g id="edge38" class="edge">
<title>steps_sound&#45;&gt;gen_sound</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M597.63,-778.88C618.56,-795.82 653.68,-822.68 687,-841 696.41,-846.18 707.07,-850.88 716.99,-854.83"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="716.38,-856.84 722.73,-857.06 717.9,-852.93 716.38,-856.84"/>
</g>
<!-- steps_sound_red1 -->
<g id="node62" class="node">
<title>steps_sound_red1</title>
<g id="a_node62"><a xlink:title="steps_sound_red1 theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="752.81" cy="-763" rx="51.92" ry="18"/>
<text text-anchor="middle" x="752.81" y="-760.8" font-family="Inter" font-size="9.00" fill="#222222">steps_sound_red1</text>
</a>
</g>
</g>
<!-- steps_sound&#45;&gt;steps_sound_red1 -->
<g id="edge46" class="edge">
<title>steps_sound&#45;&gt;steps_sound_red1</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M617.04,-763C639.83,-763 669.15,-763 694.62,-763"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="694.66,-765.1 700.66,-763 694.66,-760.9 694.66,-765.1"/>
</g>
<!-- has_red_spec -->
<g id="node70" class="node">
<title>has_red_spec</title>
<g id="a_node70"><a xlink:title="has_red_spec theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="752.81" cy="-659" rx="42.95" ry="18"/>
<text text-anchor="middle" x="752.81" y="-656.8" font-family="Inter" font-size="9.00" fill="#222222">has_red_spec</text>
</a>
</g>
</g>
<!-- steps_sound&#45;&gt;has_red_spec -->
<g id="edge55" class="edge">
<title>steps_sound&#45;&gt;has_red_spec</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M597.63,-747.12C618.56,-730.18 653.68,-703.32 687,-685 695.28,-680.45 704.52,-676.26 713.38,-672.63"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="714.34,-674.51 719.13,-670.33 712.78,-670.61 714.34,-674.51"/>
</g>
<!-- corpus_sound -->
<g id="node105" class="node">
<title>corpus_sound</title>
<g id="a_node105"><a xlink:title="corpus_sound theory/Tests.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="752.81" cy="-815" rx="43.1" ry="18"/>
<text text-anchor="middle" x="752.81" y="-812.8" font-family="Inter" font-size="9.00" fill="#222222">corpus_sound</text>
</a>
</g>
</g>
<!-- steps_sound&#45;&gt;corpus_sound -->
<g id="edge84" class="edge">
<title>steps_sound&#45;&gt;corpus_sound</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M610.78,-772.66C639.12,-781.17 680.54,-793.6 711.16,-802.8"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="710.79,-804.88 717.14,-804.59 712,-800.85 710.79,-804.88"/>
</g>
<!-- steps_sound_red1&#45;&gt;check_term_true -->
<g id="edge36" class="edge">
<title>steps_sound_red1&#45;&gt;check_term_true</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M801.63,-756.7C822.23,-753.98 846.39,-750.79 867.55,-748"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="868.04,-750.06 873.72,-747.19 867.5,-745.89 868.04,-750.06"/>
</g>
<!-- steps_sound_red1&#45;&gt;gen_fv_preserved -->
<g id="edge41" class="edge">
<title>steps_sound_red1&#45;&gt;gen_fv_preserved</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M787.46,-776.49C797.49,-780.51 808.51,-784.93 818.63,-789 839.19,-797.25 862.06,-806.44 880.94,-814.03"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="880.31,-816.04 886.66,-816.33 881.88,-812.14 880.31,-816.04"/>
</g>
<!-- nf_iff_steps_nil -->
<g id="node72" class="node">
<title>nf_iff_steps_nil</title>
<g id="a_node72"><a xlink:title="nf_iff_steps_nil theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="921.68" cy="-637" rx="45.07" ry="18"/>
<text text-anchor="middle" x="921.68" y="-634.8" font-family="Inter" font-size="9.00" fill="#222222">nf_iff_steps_nil</text>
</a>
</g>
</g>
<!-- steps_sound_red1&#45;&gt;nf_iff_steps_nil -->
<g id="edge58" class="edge">
<title>steps_sound_red1&#45;&gt;nf_iff_steps_nil</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M793.87,-751.74C802.67,-748.02 811.48,-743.19 818.63,-737 847.41,-712.12 833.28,-688.36 861.63,-663 867.05,-658.16 873.51,-654.1 880.13,-650.74"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="881.21,-652.56 885.72,-648.08 879.4,-648.77 881.21,-652.56"/>
</g>
<!-- steps_sound_red1&#45;&gt;corpus_fv_preserved -->
<g id="edge88" class="edge">
<title>steps_sound_red1&#45;&gt;corpus_fv_preserved</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M793.34,-774.35C802.25,-778.08 811.25,-782.9 818.63,-789 845.9,-811.55 837.5,-830.12 861.63,-856 869.95,-864.92 880.26,-873.3 889.93,-880.3"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="888.81,-882.08 894.92,-883.84 891.24,-878.65 888.81,-882.08"/>
</g>
<!-- positions_hole -->
<g id="node63" class="node">
<title>positions_hole</title>
<g id="a_node63"><a xlink:title="positions_hole theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-502" rx="44.41" ry="18"/>
<text text-anchor="middle" x="239.88" y="-499.8" font-family="Inter" font-size="9.00" fill="#222222">positions_hole</text>
</a>
</g>
</g>
<!-- root_steps_in_steps -->
<g id="node64" class="node">
<title>root_steps_in_steps</title>
<g id="a_node64"><a xlink:title="root_steps_in_steps theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-469" rx="56.66" ry="18"/>
<text text-anchor="middle" x="408.74" y="-466.8" font-family="Inter" font-size="9.00" fill="#222222">root_steps_in_steps</text>
</a>
</g>
</g>
<!-- positions_hole&#45;&gt;root_steps_in_steps -->
<g id="edge47" class="edge">
<title>positions_hole&#45;&gt;root_steps_in_steps</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M280.42,-494.18C302.45,-489.82 330.2,-484.34 354.16,-479.6"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="354.68,-481.63 360.16,-478.41 353.87,-477.51 354.68,-481.63"/>
</g>
<!-- root_steps_in_steps&#45;&gt;steps_complete -->
<g id="edge52" class="edge">
<title>root_steps_in_steps&#45;&gt;steps_complete</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M444.64,-483.11C452.54,-486.69 460.79,-490.74 468.21,-495 498.36,-512.31 530.39,-536.11 551.74,-552.85"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="550.65,-554.67 556.67,-556.74 553.26,-551.37 550.65,-554.67"/>
</g>
<!-- plug_comp -->
<g id="node65" class="node">
<title>plug_comp</title>
<g id="a_node65"><a xlink:title="plug_comp theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-625" rx="35.59" ry="18"/>
<text text-anchor="middle" x="408.74" y="-622.8" font-family="Inter" font-size="9.00" fill="#222222">plug_comp</text>
</a>
</g>
</g>
<!-- plug_comp&#45;&gt;steps_complete -->
<g id="edge49" class="edge">
<title>plug_comp&#45;&gt;steps_complete</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M439.57,-615.7C465.94,-607.49 504.68,-595.41 534.25,-586.2"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="534.94,-588.18 540.04,-584.39 533.69,-584.17 534.94,-588.18"/>
</g>
<!-- positions_comp -->
<g id="node66" class="node">
<title>positions_comp</title>
<g id="a_node66"><a xlink:title="positions_comp theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-573" rx="47.19" ry="18"/>
<text text-anchor="middle" x="408.74" y="-570.8" font-family="Inter" font-size="9.00" fill="#222222">positions_comp</text>
</a>
</g>
</g>
<!-- positions_comp&#45;&gt;steps_complete -->
<g id="edge50" class="edge">
<title>positions_comp&#45;&gt;steps_complete</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M456.22,-573C477.11,-573 501.87,-573 523.49,-573"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="523.5,-575.1 529.5,-573 523.5,-570.9 523.5,-575.1"/>
</g>
<!-- at_ctx_comp -->
<g id="node67" class="node">
<title>at_ctx_comp</title>
<g id="a_node67"><a xlink:title="at_ctx_comp theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-521" rx="40.33" ry="18"/>
<text text-anchor="middle" x="408.74" y="-518.8" font-family="Inter" font-size="9.00" fill="#222222">at_ctx_comp</text>
</a>
</g>
</g>
<!-- at_ctx_comp&#45;&gt;steps_complete -->
<g id="edge48" class="edge">
<title>at_ctx_comp&#45;&gt;steps_complete</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M442.31,-531.15C468.52,-539.32 505.56,-550.86 534.1,-559.75"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="533.7,-561.83 540.05,-561.61 534.95,-557.82 533.7,-561.83"/>
</g>
<!-- steps_complete&#45;&gt;enumerate_complete -->
<g id="edge13" class="edge">
<title>steps_complete&#45;&gt;enumerate_complete</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M615.76,-561.84C641.37,-554.16 675.67,-543.86 703.41,-535.53"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="704.09,-537.52 709.23,-533.78 702.88,-533.5 704.09,-537.52"/>
</g>
<!-- steps_complete&#45;&gt;gen_complete -->
<g id="edge39" class="edge">
<title>steps_complete&#45;&gt;gen_complete</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M598.4,-556.49C619.42,-539.52 654.08,-513.09 687,-495 695.19,-490.5 704.33,-486.35 713.1,-482.75"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="714.01,-484.64 718.79,-480.46 712.44,-480.75 714.01,-484.64"/>
</g>
<!-- steps_complete&#45;&gt;has_red_spec -->
<g id="edge54" class="edge">
<title>steps_complete&#45;&gt;has_red_spec</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M606.06,-587.6C627.87,-599.1 659.22,-615.4 687,-629 696.77,-633.78 707.46,-638.82 717.29,-643.36"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="716.64,-645.37 722.97,-645.97 718.4,-641.56 716.64,-645.37"/>
</g>
<!-- steps_complete&#45;&gt;nf_iff_steps_nil -->
<g id="edge57" class="edge">
<title>steps_complete&#45;&gt;nf_iff_steps_nil</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M617.58,-583.09C638.15,-588.23 663.85,-594.35 687,-599 750.82,-611.83 825.12,-623.33 872.5,-630.23"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="872.48,-632.35 878.72,-631.14 873.08,-628.2 872.48,-632.35"/>
</g>
<!-- corpus_complete -->
<g id="node106" class="node">
<title>corpus_complete</title>
<g id="a_node106"><a xlink:title="corpus_complete theory/Tests.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="752.81" cy="-573" rx="51.27" ry="18"/>
<text text-anchor="middle" x="752.81" y="-570.8" font-family="Inter" font-size="9.00" fill="#222222">corpus_complete</text>
</a>
</g>
</g>
<!-- steps_complete&#45;&gt;corpus_complete -->
<g id="edge85" class="edge">
<title>steps_complete&#45;&gt;corpus_complete</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M625.93,-573C647.27,-573 672.63,-573 694.99,-573"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="695.2,-575.1 701.2,-573 695.2,-570.9 695.2,-575.1"/>
</g>
<!-- has_red_f -->
<g id="node69" class="node">
<title>has_red_f</title>
<g id="a_node69"><a xlink:title="has_red_f theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="577.6" cy="-659" rx="32.16" ry="18"/>
<text text-anchor="middle" x="577.6" y="-656.8" font-family="Inter" font-size="9.00" fill="#222222">has_red_f</text>
</a>
</g>
</g>
<!-- has_red_f&#45;&gt;has_red_spec -->
<g id="edge53" class="edge">
<title>has_red_f&#45;&gt;has_red_spec</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M609.97,-659C636.09,-659 673.72,-659 703.66,-659"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="703.92,-661.1 709.92,-659 703.92,-656.9 703.92,-661.1"/>
</g>
<!-- has_red_spec&#45;&gt;check_term_true -->
<g id="edge35" class="edge">
<title>has_red_spec&#45;&gt;check_term_true</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M786.12,-670.29C796.72,-674.43 808.39,-679.47 818.63,-685 839.13,-696.08 841.32,-703.58 861.63,-715 867.96,-718.56 874.88,-721.98 881.67,-725.11"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="881,-727.11 887.33,-727.67 882.73,-723.28 881,-727.11"/>
</g>
<!-- red1_dec -->
<g id="node71" class="node">
<title>red1_dec</title>
<g id="a_node71"><a xlink:title="red1_dec theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="921.68" cy="-689" rx="30.7" ry="18"/>
<text text-anchor="middle" x="921.68" y="-686.8" font-family="Inter" font-size="9.00" fill="#222222">red1_dec</text>
</a>
</g>
</g>
<!-- has_red_spec&#45;&gt;red1_dec -->
<g id="edge56" class="edge">
<title>has_red_spec&#45;&gt;red1_dec</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M792.52,-665.96C820.8,-671.04 858.82,-677.88 886.09,-682.78"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="885.81,-684.86 892.09,-683.86 886.55,-680.73 885.81,-684.86"/>
</g>
<!-- corpus_decides -->
<g id="node107" class="node">
<title>corpus_decides</title>
<g id="a_node107"><a xlink:title="corpus_decides theory/Tests.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="921.68" cy="-585" rx="47.84" ry="18"/>
<text text-anchor="middle" x="921.68" y="-582.8" font-family="Inter" font-size="9.00" fill="#222222">corpus_decides</text>
</a>
</g>
</g>
<!-- has_red_spec&#45;&gt;corpus_decides -->
<g id="edge86" class="edge">
<title>has_red_spec&#45;&gt;corpus_decides</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M783.09,-645.93C804.76,-636.26 835.03,-622.78 861.63,-611 868.9,-607.78 876.67,-604.35 884.11,-601.08"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="885.07,-602.95 889.72,-598.61 883.38,-599.1 885.07,-602.95"/>
</g>
<!-- normal_form_iff_nf -->
<g id="node73" class="node">
<title>normal_form_iff_nf</title>
<g id="a_node73"><a xlink:title="normal_form_iff_nf theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="1080.15" cy="-611" rx="55.35" ry="18"/>
<text text-anchor="middle" x="1080.15" y="-608.8" font-family="Inter" font-size="9.00" fill="#222222">normal_form_iff_nf</text>
</a>
</g>
</g>
<!-- nf_iff_steps_nil&#45;&gt;normal_form_iff_nf -->
<g id="edge59" class="edge">
<title>nf_iff_steps_nil&#45;&gt;normal_form_iff_nf</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M963.79,-630.17C982.33,-627.09 1004.5,-623.4 1024.42,-620.09"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="1024.96,-622.13 1030.53,-619.08 1024.27,-617.99 1024.96,-622.13"/>
</g>
<!-- nf_dec -->
<g id="node74" class="node">
<title>nf_dec</title>
<g id="a_node74"><a xlink:title="nf_dec theory/Reduction.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="1080.15" cy="-663" rx="27" ry="18"/>
<text text-anchor="middle" x="1080.15" y="-660.8" font-family="Inter" font-size="9.00" fill="#222222">nf_dec</text>
</a>
</g>
</g>
<!-- nf_iff_steps_nil&#45;&gt;nf_dec -->
<g id="edge60" class="edge">
<title>nf_iff_steps_nil&#45;&gt;nf_dec</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M963.79,-643.83C990,-648.19 1023.44,-653.74 1047.57,-657.75"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="1047.23,-659.82 1053.49,-658.74 1047.92,-655.68 1047.23,-659.82"/>
</g>
<!-- open_rec_app -->
<g id="node75" class="node">
<title>open_rec_app</title>
<g id="a_node75"><a xlink:title="open_rec_app theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1881" rx="43.1" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1878.8" font-family="Inter" font-size="9.00" fill="#222222">open_rec_app</text>
</a>
</g>
</g>
<!-- open_rec_lam -->
<g id="node76" class="node">
<title>open_rec_lam</title>
<g id="a_node76"><a xlink:title="open_rec_lam theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1933" rx="43.76" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1930.8" font-family="Inter" font-size="9.00" fill="#222222">open_rec_lam</text>
</a>
</g>
</g>
<!-- open_rec_esub -->
<g id="node77" class="node">
<title>open_rec_esub</title>
<g id="a_node77"><a xlink:title="open_rec_esub theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-1985" rx="46.38" ry="18"/>
<text text-anchor="middle" x="65.24" y="-1982.8" font-family="Inter" font-size="9.00" fill="#222222">open_rec_esub</text>
</a>
</g>
</g>
<!-- close_rec_app -->
<g id="node78" class="node">
<title>close_rec_app</title>
<g id="a_node78"><a xlink:title="close_rec_app theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2037" rx="44.41" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2034.8" font-family="Inter" font-size="9.00" fill="#222222">close_rec_app</text>
</a>
</g>
</g>
<!-- close_rec_lam -->
<g id="node79" class="node">
<title>close_rec_lam</title>
<g id="a_node79"><a xlink:title="close_rec_lam theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2089" rx="44.41" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2086.8" font-family="Inter" font-size="9.00" fill="#222222">close_rec_lam</text>
</a>
</g>
</g>
<!-- close_rec_esub -->
<g id="node80" class="node">
<title>close_rec_esub</title>
<g id="a_node80"><a xlink:title="close_rec_esub theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2141" rx="46.53" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2138.8" font-family="Inter" font-size="9.00" fill="#222222">close_rec_esub</text>
</a>
</g>
</g>
<!-- subst_app -->
<g id="node81" class="node">
<title>subst_app</title>
<g id="a_node81"><a xlink:title="subst_app theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2193" rx="34.13" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2190.8" font-family="Inter" font-size="9.00" fill="#222222">subst_app</text>
</a>
</g>
</g>
<!-- subst_lam -->
<g id="node82" class="node">
<title>subst_lam</title>
<g id="a_node82"><a xlink:title="subst_lam theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2245" rx="34.13" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2242.8" font-family="Inter" font-size="9.00" fill="#222222">subst_lam</text>
</a>
</g>
</g>
<!-- subst_esub -->
<g id="node83" class="node">
<title>subst_esub</title>
<g id="a_node83"><a xlink:title="subst_esub theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2297" rx="36.25" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2294.8" font-family="Inter" font-size="9.00" fill="#222222">subst_esub</text>
</a>
</g>
</g>
<!-- open_rec_lc_atom -->
<g id="node87" class="node">
<title>open_rec_lc_atom</title>
<g id="a_node87"><a xlink:title="open_rec_lc_atom theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2349" rx="53.89" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2346.8" font-family="Inter" font-size="9.00" fill="#222222">open_rec_lc_atom</text>
</a>
</g>
</g>
<!-- open_rec_lc -->
<g id="node88" class="node">
<title>open_rec_lc</title>
<g id="a_node88"><a xlink:title="open_rec_lc theory/Substitution.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-2349" rx="39.02" ry="18"/>
<text text-anchor="middle" x="239.88" y="-2346.8" font-family="Inter" font-size="9.00" fill="#222222">open_rec_lc</text>
</a>
</g>
</g>
<!-- open_rec_lc_atom&#45;&gt;open_rec_lc -->
<g id="edge65" class="edge">
<title>open_rec_lc_atom&#45;&gt;open_rec_lc</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M118.98,-2349C143.1,-2349 171.36,-2349 194.39,-2349"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="194.43,-2351.1 200.43,-2349 194.43,-2346.9 194.43,-2351.1"/>
</g>
<!-- red_sub_root_to_red1 -->
<g id="node89" class="node">
<title>red_sub_root_to_red1</title>
<g id="a_node89"><a xlink:title="red_sub_root_to_red1 theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2401" rx="60.09" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2398.8" font-family="Inter" font-size="9.00" fill="#222222">red_sub_root_to_red1</text>
</a>
</g>
</g>
<!-- red_sub_to_red1 -->
<g id="node90" class="node">
<title>red_sub_to_red1</title>
<g id="a_node90"><a xlink:title="red_sub_to_red1 theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-2401" rx="47.84" ry="18"/>
<text text-anchor="middle" x="239.88" y="-2398.8" font-family="Inter" font-size="9.00" fill="#222222">red_sub_to_red1</text>
</a>
</g>
</g>
<!-- red_sub_root_to_red1&#45;&gt;red_sub_to_red1 -->
<g id="edge66" class="edge">
<title>red_sub_root_to_red1&#45;&gt;red_sub_to_red1</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M125.65,-2401C145.11,-2401 166.58,-2401 185.56,-2401"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="185.89,-2403.1 191.89,-2401 185.89,-2398.9 185.89,-2403.1"/>
</g>
<!-- red_sub_context -->
<g id="node91" class="node">
<title>red_sub_context</title>
<g id="a_node91"><a xlink:title="red_sub_context theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2453" rx="49.15" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2450.8" font-family="Inter" font-size="9.00" fill="#222222">red_sub_context</text>
</a>
</g>
</g>
<!-- Star_red_sub_context -->
<g id="node97" class="node">
<title>Star_red_sub_context</title>
<g id="a_node97"><a xlink:title="Star_red_sub_context theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-2453" rx="61.55" ry="18"/>
<text text-anchor="middle" x="239.88" y="-2450.8" font-family="Inter" font-size="9.00" fill="#222222">Star_red_sub_context</text>
</a>
</g>
</g>
<!-- red_sub_context&#45;&gt;Star_red_sub_context -->
<g id="edge69" class="edge">
<title>red_sub_context&#45;&gt;Star_red_sub_context</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M114.33,-2453C132.08,-2453 152.53,-2453 171.66,-2453"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="172.09,-2455.1 178.09,-2453 172.09,-2450.9 172.09,-2455.1"/>
</g>
<!-- red_sub_gc -->
<g id="node92" class="node">
<title>red_sub_gc</title>
<g id="a_node92"><a xlink:title="red_sub_gc theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-70" rx="36.25" ry="18"/>
<text text-anchor="middle" x="239.88" y="-67.8" font-family="Inter" font-size="9.00" fill="#222222">red_sub_gc</text>
</a>
</g>
</g>
<!-- red_sub_gc&#45;&gt;full_comp_aux_sub -->
<g id="edge74" class="edge">
<title>red_sub_gc&#45;&gt;full_comp_aux_sub</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M272.17,-78.4C284.24,-83.03 297.29,-89.94 306.27,-100 347.09,-145.71 308.19,-185.53 349.27,-231 353.05,-235.18 357.62,-238.72 362.52,-241.71"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="361.69,-243.65 367.95,-244.75 363.74,-239.99 361.69,-243.65"/>
</g>
<!-- red_gc_to_red_sub -->
<g id="node104" class="node">
<title>red_gc_to_red_sub</title>
<g id="a_node104"><a xlink:title="red_gc_to_red_sub theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-70" rx="53.89" ry="18"/>
<text text-anchor="middle" x="408.74" y="-67.8" font-family="Inter" font-size="9.00" fill="#222222">red_gc_to_red_sub</text>
</a>
</g>
</g>
<!-- red_sub_gc&#45;&gt;red_gc_to_red_sub -->
<g id="edge83" class="edge">
<title>red_sub_gc&#45;&gt;red_gc_to_red_sub</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M276.26,-70C297.34,-70 324.63,-70 348.87,-70"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="348.96,-72.1 354.96,-70 348.96,-67.9 348.96,-72.1"/>
</g>
<!-- red_sub_r -->
<g id="node93" class="node">
<title>red_sub_r</title>
<g id="a_node93"><a xlink:title="red_sub_r theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-156" rx="32.82" ry="18"/>
<text text-anchor="middle" x="239.88" y="-153.8" font-family="Inter" font-size="9.00" fill="#222222">red_sub_r</text>
</a>
</g>
</g>
<!-- red_sub_r&#45;&gt;full_comp_aux_sub -->
<g id="edge75" class="edge">
<title>red_sub_r&#45;&gt;full_comp_aux_sub</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M269.38,-164.05C281.42,-168.25 295.19,-174.18 306.27,-182 329.95,-198.7 325.94,-213.83 349.27,-231 354.41,-234.78 360.18,-238.17 366.05,-241.16"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="365.14,-243.05 371.45,-243.79 366.98,-239.28 365.14,-243.05"/>
</g>
<!-- occurs_zfill -->
<g id="node94" class="node">
<title>occurs_zfill</title>
<g id="a_node94"><a xlink:title="occurs_zfill theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2505" rx="37.56" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2502.8" font-family="Inter" font-size="9.00" fill="#222222">occurs_zfill</text>
</a>
</g>
</g>
<!-- zfill_occurs0 -->
<g id="node95" class="node">
<title>zfill_occurs0</title>
<g id="a_node95"><a xlink:title="zfill_occurs0 theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-2505" rx="40.98" ry="18"/>
<text text-anchor="middle" x="239.88" y="-2502.8" font-family="Inter" font-size="9.00" fill="#222222">zfill_occurs0</text>
</a>
</g>
</g>
<!-- occurs_zfill&#45;&gt;zfill_occurs0 -->
<g id="edge67" class="edge">
<title>occurs_zfill&#45;&gt;zfill_occurs0</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M102.85,-2505C128.98,-2505 164.34,-2505 192.45,-2505"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="192.7,-2507.1 198.7,-2505 192.7,-2502.9 192.7,-2507.1"/>
</g>
<!-- R_Gc_disjoint -->
<g id="node96" class="node">
<title>R_Gc_disjoint</title>
<g id="a_node96"><a xlink:title="R_Gc_disjoint theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-2505" rx="41.64" ry="18"/>
<text text-anchor="middle" x="408.74" y="-2502.8" font-family="Inter" font-size="9.00" fill="#222222">R_Gc_disjoint</text>
</a>
</g>
</g>
<!-- zfill_occurs0&#45;&gt;R_Gc_disjoint -->
<g id="edge68" class="edge">
<title>zfill_occurs0&#45;&gt;R_Gc_disjoint</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M281.27,-2505C305.28,-2505 335.83,-2505 360.89,-2505"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="361.14,-2507.1 367.14,-2505 361.14,-2502.9 361.14,-2507.1"/>
</g>
<!-- plus_red_sub_full_comp -->
<g id="node99" class="node">
<title>plus_red_sub_full_comp</title>
<g id="a_node99"><a xlink:title="plus_red_sub_full_comp theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="577.6" cy="-255" rx="66.29" ry="18"/>
<text text-anchor="middle" x="577.6" y="-252.8" font-family="Inter" font-size="9.00" fill="#222222">plus_red_sub_full_comp</text>
</a>
</g>
</g>
<!-- full_comp_aux_sub&#45;&gt;plus_red_sub_full_comp -->
<g id="edge78" class="edge">
<title>full_comp_aux_sub&#45;&gt;plus_red_sub_full_comp</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M463.91,-256.35C476.95,-256.19 491.08,-256.03 504.79,-255.86"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="505.07,-257.96 511.05,-255.79 505.02,-253.76 505.07,-257.96"/>
</g>
<!-- plus_red_sub_full_comp&#45;&gt;star_red_sub_full_comp -->
<g id="edge80" class="edge">
<title>plus_red_sub_full_comp&#45;&gt;star_red_sub_full_comp</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M636.28,-263.66C653.02,-266.17 671.39,-268.93 688.46,-271.49"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="688.44,-273.61 694.68,-272.42 689.06,-269.46 688.44,-273.61"/>
</g>
<!-- es_count_plug_mono -->
<g id="node101" class="node">
<title>es_count_plug_mono</title>
<g id="a_node101"><a xlink:title="es_count_plug_mono theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="65.24" cy="-2557" rx="60.74" ry="18"/>
<text text-anchor="middle" x="65.24" y="-2554.8" font-family="Inter" font-size="9.00" fill="#222222">es_count_plug_mono</text>
</a>
</g>
</g>
<!-- red_gc_measure -->
<g id="node102" class="node">
<title>red_gc_measure</title>
<g id="a_node102"><a xlink:title="red_gc_measure theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="239.88" cy="-2557" rx="49.8" ry="18"/>
<text text-anchor="middle" x="239.88" y="-2554.8" font-family="Inter" font-size="9.00" fill="#222222">red_gc_measure</text>
</a>
</g>
</g>
<!-- es_count_plug_mono&#45;&gt;red_gc_measure -->
<g id="edge81" class="edge">
<title>es_count_plug_mono&#45;&gt;red_gc_measure</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M126.14,-2557C144.95,-2557 165.61,-2557 184.05,-2557"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="184.22,-2559.1 190.22,-2557 184.22,-2554.9 184.22,-2559.1"/>
</g>
<!-- red_gc_terminates -->
<g id="node103" class="node">
<title>red_gc_terminates</title>
<g id="a_node103"><a xlink:title="red_gc_terminates theory/Subsystem.v https://arxiv.org/html/2312.13270v1">
<ellipse fill="#d9ead3" stroke="#38761d" cx="408.74" cy="-2557" rx="54.04" ry="18"/>
<text text-anchor="middle" x="408.74" y="-2554.8" font-family="Inter" font-size="9.00" fill="#222222">red_gc_terminates</text>
</a>
</g>
</g>
<!-- red_gc_measure&#45;&gt;red_gc_terminates -->
<g id="edge82" class="edge">
<title>red_gc_measure&#45;&gt;red_gc_terminates</title>
<path fill="none" stroke="#9a9a9a" stroke-width="0.8" d="M289.59,-2557C307.82,-2557 328.75,-2557 347.88,-2557"/>
<polygon fill="#9a9a9a" stroke="#9a9a9a" stroke-width="0.8" points="348.29,-2559.1 354.29,-2557 348.29,-2554.9 348.29,-2559.1"/>
</g>
</g>
</svg>