This commit is contained in:
milner committed 2026-09-18 16:27:30 +00:00
commit c1403764d9
96 files changed
+39927

No files matched your search

@@ -0,0 +1,278 @@
<?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 16.0.0 (0)
-->
<!-- Title: grammar Pages: 1 -->
<svg width="516pt" height="542pt"
viewBox="0.00 0.00 516.00 542.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 537.51)">
<title>grammar</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-537.51 511.5,-537.51 511.5,4 -4,4"/>
<text xml:space="preserve" text-anchor="middle" x="253.75" y="-516.21" font-family="Times,serif" font-size="14.00">nested_anbn step 1 before: merge S,T_c</text>
<!-- nt_S -->
<g id="node1" class="node">
<title>nt_S</title>
<ellipse fill="none" stroke="red" stroke-width="2.5" cx="22" cy="-325.01" rx="18" ry="18"/>
<ellipse fill="none" stroke="red" stroke-width="2.5" cx="22" cy="-325.01" rx="22" ry="22"/>
<text xml:space="preserve" text-anchor="middle" x="22" y="-321.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">S</text>
</g>
<!-- pr_3 -->
<g id="node11" class="node">
<title>pr_3</title>
<polygon fill="none" stroke="red" stroke-width="2.5" points="207.25,-414.01 99.75,-414.01 99.75,-378.01 207.25,-378.01 207.25,-414.01"/>
<text xml:space="preserve" text-anchor="middle" x="153.5" y="-398.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">T_a T_a T_c T_b T_b</text>
<text xml:space="preserve" text-anchor="middle" x="153.5" y="-386.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">p=0.120</text>
</g>
<!-- nt_S&#45;&gt;pr_3 -->
<g id="edge7" class="edge">
<title>nt_S&#45;&gt;pr_3</title>
<path fill="none" stroke="black" d="M42.39,-335.64C59.58,-345.07 85.35,-359.2 107.64,-371.42"/>
<polygon fill="black" stroke="black" points="105.81,-374.41 116.26,-376.15 109.18,-368.27 105.81,-374.41"/>
</g>
<!-- pr_4 -->
<g id="node12" class="node">
<title>pr_4</title>
<polygon fill="none" stroke="red" stroke-width="2.5" points="180.5,-509.01 126.5,-509.01 126.5,-473.01 180.5,-473.01 180.5,-509.01"/>
<text xml:space="preserve" text-anchor="middle" x="153.5" y="-493.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">T_c</text>
<text xml:space="preserve" text-anchor="middle" x="153.5" y="-481.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">p=0.540</text>
</g>
<!-- nt_S&#45;&gt;pr_4 -->
<g id="edge13" class="edge">
<title>nt_S&#45;&gt;pr_4</title>
<path fill="none" stroke="black" d="M32.84,-345.2C43.34,-365.77 61.17,-398.11 81,-423.01 92.82,-437.85 107.79,-452.58 120.98,-464.51"/>
<polygon fill="black" stroke="black" points="118.4,-466.9 128.2,-470.92 123.04,-461.67 118.4,-466.9"/>
</g>
<!-- pr_5 -->
<g id="node13" class="node">
<title>pr_5</title>
<polygon fill="none" stroke="red" stroke-width="2.5" points="188.5,-312.01 118.5,-312.01 118.5,-276.01 188.5,-276.01 188.5,-312.01"/>
<text xml:space="preserve" text-anchor="middle" x="153.5" y="-296.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">T_a T_c T_b</text>
<text xml:space="preserve" text-anchor="middle" x="153.5" y="-284.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">p=0.320</text>
</g>
<!-- nt_S&#45;&gt;pr_5 -->
<g id="edge15" class="edge">
<title>nt_S&#45;&gt;pr_5</title>
<path fill="none" stroke="black" d="M44.38,-319.89C61.19,-315.87 85.21,-310.12 106.35,-305.06"/>
<polygon fill="black" stroke="black" points="107.02,-308.5 115.93,-302.77 105.39,-301.69 107.02,-308.5"/>
</g>
<!-- pr_6 -->
<g id="node14" class="node">
<title>pr_6</title>
<polygon fill="none" stroke="red" stroke-width="2.5" points="226,-142.01 81,-142.01 81,-106.01 226,-106.01 226,-142.01"/>
<text xml:space="preserve" text-anchor="middle" x="153.5" y="-126.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">T_a T_a T_a T_c T_b T_b T_b</text>
<text xml:space="preserve" text-anchor="middle" x="153.5" y="-114.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">p=0.020</text>
</g>
<!-- nt_S&#45;&gt;pr_6 -->
<g id="edge19" class="edge">
<title>nt_S&#45;&gt;pr_6</title>
<path fill="none" stroke="black" d="M35.18,-306.1C57.98,-270.71 107.22,-194.29 134.09,-152.58"/>
<polygon fill="black" stroke="black" points="136.96,-154.59 139.44,-144.29 131.08,-150.8 136.96,-154.59"/>
</g>
<!-- nt_T_a -->
<g id="node2" class="node">
<title>nt_T_a</title>
<ellipse fill="none" stroke="black" cx="294.25" cy="-251.01" rx="27" ry="18"/>
<text xml:space="preserve" text-anchor="middle" x="294.25" y="-247.51" font-family="Helvetica,sans-Serif" font-size="10.00">T_a</text>
</g>
<!-- pr_0 -->
<g id="node8" class="node">
<title>pr_0</title>
<polygon fill="none" stroke="black" points="412.25,-269.01 358.25,-269.01 358.25,-233.01 412.25,-233.01 412.25,-269.01"/>
<text xml:space="preserve" text-anchor="middle" x="385.25" y="-253.51" font-family="Helvetica,sans-Serif" font-size="10.00">a</text>
<text xml:space="preserve" text-anchor="middle" x="385.25" y="-241.51" font-family="Helvetica,sans-Serif" font-size="10.00">p=1.000</text>
</g>
<!-- nt_T_a&#45;&gt;pr_0 -->
<g id="edge1" class="edge">
<title>nt_T_a&#45;&gt;pr_0</title>
<path fill="none" stroke="black" d="M321.47,-251.01C329.37,-251.01 338.19,-251.01 346.68,-251.01"/>
<polygon fill="black" stroke="black" points="346.39,-254.51 356.39,-251.01 346.39,-247.51 346.39,-254.51"/>
</g>
<!-- nt_T_b -->
<g id="node3" class="node">
<title>nt_T_b</title>
<ellipse fill="none" stroke="black" cx="294.25" cy="-132.01" rx="27" ry="18"/>
<text xml:space="preserve" text-anchor="middle" x="294.25" y="-128.51" font-family="Helvetica,sans-Serif" font-size="10.00">T_b</text>
</g>
<!-- pr_2 -->
<g id="node10" class="node">
<title>pr_2</title>
<polygon fill="none" stroke="black" points="412.25,-150.01 358.25,-150.01 358.25,-114.01 412.25,-114.01 412.25,-150.01"/>
<text xml:space="preserve" text-anchor="middle" x="385.25" y="-134.51" font-family="Helvetica,sans-Serif" font-size="10.00">b</text>
<text xml:space="preserve" text-anchor="middle" x="385.25" y="-122.51" font-family="Helvetica,sans-Serif" font-size="10.00">p=1.000</text>
</g>
<!-- nt_T_b&#45;&gt;pr_2 -->
<g id="edge5" class="edge">
<title>nt_T_b&#45;&gt;pr_2</title>
<path fill="none" stroke="black" d="M321.47,-132.01C329.37,-132.01 338.19,-132.01 346.68,-132.01"/>
<polygon fill="black" stroke="black" points="346.39,-135.51 356.39,-132.01 346.39,-128.51 346.39,-135.51"/>
</g>
<!-- nt_T_c -->
<g id="node4" class="node">
<title>nt_T_c</title>
<ellipse fill="none" stroke="red" stroke-width="2.5" cx="294.25" cy="-337.01" rx="27" ry="18"/>
<text xml:space="preserve" text-anchor="middle" x="294.25" y="-333.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">T_c</text>
</g>
<!-- pr_1 -->
<g id="node9" class="node">
<title>pr_1</title>
<polygon fill="none" stroke="red" stroke-width="2.5" points="412.25,-355.01 358.25,-355.01 358.25,-319.01 412.25,-319.01 412.25,-355.01"/>
<text xml:space="preserve" text-anchor="middle" x="385.25" y="-339.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">c</text>
<text xml:space="preserve" text-anchor="middle" x="385.25" y="-327.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="red">p=1.000</text>
</g>
<!-- nt_T_c&#45;&gt;pr_1 -->
<g id="edge3" class="edge">
<title>nt_T_c&#45;&gt;pr_1</title>
<path fill="none" stroke="black" d="M322.44,-337.01C329.86,-337.01 338.03,-337.01 345.95,-337.01"/>
<polygon fill="black" stroke="black" points="345.72,-340.51 355.72,-337.01 345.72,-333.51 345.72,-340.51"/>
</g>
<!-- tm_a -->
<g id="node5" class="node">
<title>tm_a</title>
<text xml:space="preserve" text-anchor="middle" x="480.5" y="-247.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#666666">a</text>
</g>
<!-- tm_b -->
<g id="node6" class="node">
<title>tm_b</title>
<text xml:space="preserve" text-anchor="middle" x="480.5" y="-128.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#666666">b</text>
</g>
<!-- tm_c -->
<g id="node7" class="node">
<title>tm_c</title>
<text xml:space="preserve" text-anchor="middle" x="480.5" y="-333.51" font-family="Helvetica,sans-Serif" font-size="10.00" fill="#666666">c</text>
</g>
<!-- pr_0&#45;&gt;tm_a -->
<g id="edge2" class="edge">
<title>pr_0&#45;&gt;tm_a</title>
<path fill="none" stroke="black" d="M412.72,-251.01C421.93,-251.01 432.44,-251.01 442.36,-251.01"/>
<polygon fill="black" stroke="black" points="442.09,-254.51 452.09,-251.01 442.09,-247.51 442.09,-254.51"/>
<text xml:space="preserve" text-anchor="middle" x="432.88" y="-252.96" font-family="Helvetica,sans-Serif" font-size="9.00">1</text>
</g>
<!-- pr_1&#45;&gt;tm_c -->
<g id="edge4" class="edge">
<title>pr_1&#45;&gt;tm_c</title>
<path fill="none" stroke="black" d="M413.22,-337.01C422.25,-337.01 432.47,-337.01 442.15,-337.01"/>
<polygon fill="black" stroke="black" points="442.04,-340.51 452.04,-337.01 442.04,-333.51 442.04,-340.51"/>
<text xml:space="preserve" text-anchor="middle" x="432.88" y="-338.96" font-family="Helvetica,sans-Serif" font-size="9.00">1</text>
</g>
<!-- pr_2&#45;&gt;tm_b -->
<g id="edge6" class="edge">
<title>pr_2&#45;&gt;tm_b</title>
<path fill="none" stroke="black" d="M412.72,-132.01C421.93,-132.01 432.44,-132.01 442.36,-132.01"/>
<polygon fill="black" stroke="black" points="442.09,-135.51 452.09,-132.01 442.09,-128.51 442.09,-135.51"/>
<text xml:space="preserve" text-anchor="middle" x="432.88" y="-133.96" font-family="Helvetica,sans-Serif" font-size="9.00">1</text>
</g>
<!-- pr_3&#45;&gt;nt_T_a -->
<g id="edge8" class="edge">
<title>pr_3&#45;&gt;nt_T_a</title>
<path fill="none" stroke="black" d="M208.08,-404.51C222.86,-404.05 237.93,-400.59 249.25,-391.01 277.4,-367.19 255.76,-345.05 267.25,-310.01 270.7,-299.5 275.36,-288.32 279.78,-278.54"/>
<polygon fill="black" stroke="black" points="282.9,-280.13 283.95,-269.59 276.56,-277.17 282.9,-280.13"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-396" font-family="Helvetica,sans-Serif" font-size="9.00">1</text>
</g>
<!-- pr_3&#45;&gt;nt_T_a -->
<g id="edge9" class="edge">
<title>pr_3&#45;&gt;nt_T_a</title>
<path fill="none" stroke="black" d="M197.64,-415.17C215.41,-419.95 235.1,-420.82 249.25,-409.01 283.58,-380.36 254.14,-352.77 267.25,-310.01 270.49,-299.44 275.1,-288.24 279.55,-278.47"/>
<polygon fill="black" stroke="black" points="282.66,-280.06 283.76,-269.53 276.33,-277.08 282.66,-280.06"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-413.91" font-family="Helvetica,sans-Serif" font-size="9.00">2</text>
</g>
<!-- pr_3&#45;&gt;nt_T_b -->
<g id="edge11" class="edge">
<title>pr_3&#45;&gt;nt_T_b</title>
<path fill="none" stroke="black" d="M208.03,-384.83C223.54,-379.02 239.03,-370.25 249.25,-357.01 267.48,-333.4 261.18,-253.21 267.25,-224.01 271.71,-202.55 278.49,-178.75 284.01,-160.73"/>
<polygon fill="black" stroke="black" points="287.33,-161.84 286.96,-151.25 280.64,-159.76 287.33,-161.84"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-363.13" font-family="Helvetica,sans-Serif" font-size="9.00">4</text>
</g>
<!-- pr_3&#45;&gt;nt_T_b -->
<g id="edge12" class="edge">
<title>pr_3&#45;&gt;nt_T_b</title>
<path fill="none" stroke="black" d="M191.03,-376.83C211.36,-364.25 235.31,-345.89 249.25,-323.01 272.51,-284.82 257.16,-267.58 267.25,-224.01 272.2,-202.66 278.96,-178.85 284.35,-160.81"/>
<polygon fill="black" stroke="black" points="287.67,-161.9 287.22,-151.31 280.97,-159.87 287.67,-161.9"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-330.32" font-family="Helvetica,sans-Serif" font-size="9.00">5</text>
</g>
<!-- pr_3&#45;&gt;nt_T_c -->
<g id="edge10" class="edge">
<title>pr_3&#45;&gt;nt_T_c</title>
<path fill="none" stroke="black" d="M173.92,-415.06C197.36,-436.98 235.35,-468.78 249.25,-459.01 278.72,-438.31 288.54,-395.85 291.76,-366.9"/>
<polygon fill="black" stroke="black" points="295.22,-367.58 292.62,-357.3 288.24,-366.95 295.22,-367.58"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-462.62" font-family="Helvetica,sans-Serif" font-size="9.00">3</text>
</g>
<!-- pr_4&#45;&gt;nt_T_c -->
<g id="edge14" class="edge">
<title>pr_4&#45;&gt;nt_T_c</title>
<path fill="none" stroke="black" d="M181.33,-493.52C202.24,-493.98 230.73,-491.09 249.25,-475.01 280.41,-447.98 289.7,-398.92 292.36,-367.17"/>
<polygon fill="black" stroke="black" points="295.83,-367.65 292.98,-357.44 288.85,-367.2 295.83,-367.65"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-480.13" font-family="Helvetica,sans-Serif" font-size="9.00">1</text>
</g>
<!-- pr_5&#45;&gt;nt_T_a -->
<g id="edge16" class="edge">
<title>pr_5&#45;&gt;nt_T_a</title>
<path fill="none" stroke="black" d="M189.51,-283.16C210.61,-276.62 237.37,-268.33 258.43,-261.8"/>
<polygon fill="black" stroke="black" points="259.21,-265.23 267.73,-258.92 257.14,-258.54 259.21,-265.23"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-268.1" font-family="Helvetica,sans-Serif" font-size="9.00">1</text>
</g>
<!-- pr_5&#45;&gt;nt_T_b -->
<g id="edge18" class="edge">
<title>pr_5&#45;&gt;nt_T_b</title>
<path fill="none" stroke="black" d="M186.08,-275.03C206.1,-261.81 231.48,-242.69 249.25,-221.01 264.09,-202.91 275.57,-178.97 283.08,-160.47"/>
<polygon fill="black" stroke="black" points="286.33,-161.76 286.68,-151.18 279.8,-159.23 286.33,-161.76"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-227.85" font-family="Helvetica,sans-Serif" font-size="9.00">3</text>
</g>
<!-- pr_5&#45;&gt;nt_T_c -->
<g id="edge17" class="edge">
<title>pr_5&#45;&gt;nt_T_c</title>
<path fill="none" stroke="black" d="M189.42,-298.14C207.63,-300.96 230.05,-305.49 249.25,-312.51 254,-314.25 258.84,-316.45 263.5,-318.82"/>
<polygon fill="black" stroke="black" points="261.51,-321.72 271.97,-323.43 264.86,-315.57 261.51,-321.72"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-314.46" font-family="Helvetica,sans-Serif" font-size="9.00">2</text>
</g>
<!-- pr_6&#45;&gt;nt_T_a -->
<g id="edge20" class="edge">
<title>pr_6&#45;&gt;nt_T_a</title>
<path fill="none" stroke="black" d="M194.56,-104.88C212.78,-99.14 233.69,-97.03 249.25,-108.51 253.95,-111.98 273.92,-181.48 285.27,-222.11"/>
<polygon fill="black" stroke="black" points="281.83,-222.81 287.89,-231.51 288.58,-220.94 281.83,-222.81"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-110.46" font-family="Helvetica,sans-Serif" font-size="9.00">1</text>
</g>
<!-- pr_6&#45;&gt;nt_T_a -->
<g id="edge21" class="edge">
<title>pr_6&#45;&gt;nt_T_a</title>
<path fill="none" stroke="black" d="M200.22,-143.13C216.97,-151.65 235.23,-162.87 249.25,-176.51 262.85,-189.75 273.74,-208.06 281.29,-223.22"/>
<polygon fill="black" stroke="black" points="278.1,-224.67 285.54,-232.21 284.43,-221.68 278.1,-224.67"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-178.46" font-family="Helvetica,sans-Serif" font-size="9.00">2</text>
</g>
<!-- pr_6&#45;&gt;nt_T_a -->
<g id="edge22" class="edge">
<title>pr_6&#45;&gt;nt_T_a</title>
<path fill="none" stroke="black" d="M226.28,-143.15C234.61,-147.33 242.52,-152.39 249.25,-158.51 267.81,-175.39 279.28,-201.77 285.83,-222.04"/>
<polygon fill="black" stroke="black" points="282.42,-222.83 288.63,-231.41 289.13,-220.83 282.42,-222.83"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-160.46" font-family="Helvetica,sans-Serif" font-size="9.00">3</text>
</g>
<!-- pr_6&#45;&gt;nt_T_b -->
<g id="edge24" class="edge">
<title>pr_6&#45;&gt;nt_T_b</title>
<path fill="none" stroke="black" d="M160.08,-104.95C172.88,-64.52 206.6,23.73 249.25,-6.51 279.71,-28.11 289.24,-72.5 292.14,-102.27"/>
<polygon fill="black" stroke="black" points="288.64,-102.43 292.88,-112.14 295.62,-101.9 288.64,-102.43"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-8.46" font-family="Helvetica,sans-Serif" font-size="9.00">5</text>
</g>
<!-- pr_6&#45;&gt;nt_T_b -->
<g id="edge25" class="edge">
<title>pr_6&#45;&gt;nt_T_b</title>
<path fill="none" stroke="black" d="M171.16,-104.9C189.99,-85.73 221.63,-60.87 249.25,-74.51 262.24,-80.93 272.45,-93.22 279.75,-104.8"/>
<polygon fill="black" stroke="black" points="276.63,-106.4 284.66,-113.31 282.7,-102.9 276.63,-106.4"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-76.46" font-family="Helvetica,sans-Serif" font-size="9.00">6</text>
</g>
<!-- pr_6&#45;&gt;nt_T_b -->
<g id="edge26" class="edge">
<title>pr_6&#45;&gt;nt_T_b</title>
<path fill="none" stroke="black" d="M166.29,-105.17C183.75,-79.74 217.83,-39.58 249.25,-57.51 266.59,-67.41 277.78,-87.11 284.54,-103.76"/>
<polygon fill="black" stroke="black" points="281.09,-104.54 287.83,-112.71 287.66,-102.12 281.09,-104.54"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-59.46" font-family="Helvetica,sans-Serif" font-size="9.00">7</text>
</g>
<!-- pr_6&#45;&gt;nt_T_c -->
<g id="edge23" class="edge">
<title>pr_6&#45;&gt;nt_T_c</title>
<path fill="none" stroke="black" d="M183.99,-143.14C205.19,-158.4 232.83,-181.61 249.25,-208.51 265.87,-235.75 256.78,-247.87 267.25,-278.01 270.8,-288.23 275.37,-299.14 279.69,-308.77"/>
<polygon fill="black" stroke="black" points="276.4,-309.98 283.76,-317.6 282.76,-307.06 276.4,-309.98"/>
<text xml:space="preserve" text-anchor="middle" x="246.62" y="-210.46" font-family="Helvetica,sans-Serif" font-size="9.00">4</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 17 KiB