Alpha equivalence checker for arbitrary lambda terms
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4<!-- Generated by graphviz version 14.1.5 (0)
5 -->
6<!-- Title: modulo Pages: 1 -->
7<svg width="659pt" height="406pt"
8 viewBox="0.00 0.00 659.00 406.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(18 388.17)">
10<title>modulo</title>
11<polygon fill="white" stroke="none" points="-18,18 -18,-388.17 641.18,-388.17 641.18,18 -18,18"/>
12<!-- __start -->
13<g id="node1" class="node">
14<title>__start</title>
15<ellipse fill="black" stroke="black" cx="2.88" cy="-184.57" rx="2.88" ry="2.88"/>
16</g>
17<!-- r0 -->
18<g id="node2" class="node">
19<title>r0</title>
20<ellipse fill="none" stroke="black" cx="128.08" cy="-184.57" rx="21.57" ry="21.57"/>
21<ellipse fill="none" stroke="black" cx="128.08" cy="-184.57" rx="25.57" ry="25.57"/>
22<text xml:space="preserve" text-anchor="middle" x="128.08" y="-180.62" font-family="Times New Roman" font-size="16.00">r₀</text>
23</g>
24<!-- __start->r0 -->
25<g id="edge1" class="edge">
26<title>__start->r0</title>
27<path fill="none" stroke="black" d="M6.02,-184.57C16.18,-184.57 60.44,-184.57 92.51,-184.57"/>
28<polygon fill="black" stroke="black" points="92.51,-187.37 100.51,-184.57 92.51,-181.77 92.51,-187.37"/>
29<text xml:space="preserve" text-anchor="middle" x="54.13" y="-190.77" font-family="Times New Roman" font-size="14.00">start</text>
30</g>
31<!-- r0->r0 -->
32<g id="edge2" class="edge">
33<title>r0->r0</title>
34<path fill="none" stroke="black" d="M118.9,-208.55C113.51,-232.96 116.57,-260.13 128.08,-260.13 138.15,-260.13 141.75,-239.33 138.88,-217.78"/>
35<polygon fill="black" stroke="black" points="141.66,-217.44 137.51,-210.05 136.14,-218.41 141.66,-217.44"/>
36<text xml:space="preserve" text-anchor="middle" x="128.08" y="-266.33" font-family="Times New Roman" font-size="14.00">0</text>
37</g>
38<!-- r1 -->
39<g id="node3" class="node">
40<title>r1</title>
41<ellipse fill="none" stroke="black" cx="249.46" cy="-255.57" rx="21.57" ry="21.57"/>
42<text xml:space="preserve" text-anchor="middle" x="249.46" y="-251.62" font-family="Times New Roman" font-size="16.00">r₁</text>
43</g>
44<!-- r0->r1 -->
45<g id="edge3" class="edge">
46<title>r0->r1</title>
47<path fill="none" stroke="black" d="M150.7,-197.42C170.86,-209.42 200.99,-227.33 222.46,-240.1"/>
48<polygon fill="black" stroke="black" points="220.9,-242.43 229.21,-244.12 223.76,-237.62 220.9,-242.43"/>
49<text xml:space="preserve" text-anchor="middle" x="190.77" y="-228.4" font-family="Times New Roman" font-size="14.00">1</text>
50</g>
51<!-- r2 -->
52<g id="node4" class="node">
53<title>r2</title>
54<ellipse fill="none" stroke="black" cx="366.84" cy="-161.57" rx="21.57" ry="21.57"/>
55<text xml:space="preserve" text-anchor="middle" x="366.84" y="-157.62" font-family="Times New Roman" font-size="16.00">r₂</text>
56</g>
57<!-- r1->r2 -->
58<g id="edge4" class="edge">
59<title>r1->r2</title>
60<path fill="none" stroke="black" d="M266.5,-242.5C286.2,-226.45 319.76,-199.11 342.36,-180.7"/>
61<polygon fill="black" stroke="black" points="343.96,-183.01 348.39,-175.79 340.42,-178.67 343.96,-183.01"/>
62<text xml:space="preserve" text-anchor="middle" x="308.15" y="-217.59" font-family="Times New Roman" font-size="14.00">0</text>
63</g>
64<!-- r3 -->
65<g id="node5" class="node">
66<title>r3</title>
67<ellipse fill="none" stroke="black" cx="601.61" cy="-228.57" rx="21.57" ry="21.57"/>
68<text xml:space="preserve" text-anchor="middle" x="601.61" y="-224.62" font-family="Times New Roman" font-size="16.00">r₃</text>
69</g>
70<!-- r1->r3 -->
71<g id="edge5" class="edge">
72<title>r1->r3</title>
73<path fill="none" stroke="black" d="M261.21,-274.07C270.53,-288.1 285.43,-306.33 304.03,-314.57 402.79,-358.29 452.62,-367 547.04,-314.57 568.65,-302.57 582.67,-277.84 590.93,-257.97"/>
74<polygon fill="black" stroke="black" points="593.49,-259.12 593.78,-250.65 588.27,-257.09 593.49,-259.12"/>
75<text xml:space="preserve" text-anchor="middle" x="425.54" y="-356.87" font-family="Times New Roman" font-size="14.00">1</text>
76</g>
77<!-- r2->r0 -->
78<g id="edge7" class="edge">
79<title>r2->r0</title>
80<path fill="none" stroke="black" d="M345.06,-163.59C304.23,-167.55 213.22,-176.39 163.36,-181.24"/>
81<polygon fill="black" stroke="black" points="163.17,-178.44 155.47,-182 163.71,-184.02 163.17,-178.44"/>
82<text xml:space="preserve" text-anchor="middle" x="249.46" y="-180.8" font-family="Times New Roman" font-size="14.00">1</text>
83</g>
84<!-- r4 -->
85<g id="node6" class="node">
86<title>r4</title>
87<ellipse fill="none" stroke="black" cx="484.23" cy="-21.57" rx="21.57" ry="21.57"/>
88<text xml:space="preserve" text-anchor="middle" x="484.23" y="-17.62" font-family="Times New Roman" font-size="16.00">r₄</text>
89</g>
90<!-- r2->r4 -->
91<g id="edge6" class="edge">
92<title>r2->r4</title>
93<path fill="none" stroke="black" d="M381.31,-145.23C401.71,-120.47 440.58,-73.31 463.97,-44.93"/>
94<polygon fill="black" stroke="black" points="465.96,-46.92 468.89,-38.96 461.64,-43.36 465.96,-46.92"/>
95<text xml:space="preserve" text-anchor="middle" x="425.54" y="-101.96" font-family="Times New Roman" font-size="14.00">0</text>
96</g>
97<!-- r3->r1 -->
98<g id="edge8" class="edge">
99<title>r3->r1</title>
100<path fill="none" stroke="black" d="M581.13,-236.65C571.13,-240.41 558.63,-244.49 547.04,-246.57 450.86,-263.8 334.37,-260.43 280.48,-257.54"/>
101<polygon fill="black" stroke="black" points="280.83,-254.75 272.68,-257.09 280.51,-260.34 280.83,-254.75"/>
102<text xml:space="preserve" text-anchor="middle" x="425.54" y="-265.09" font-family="Times New Roman" font-size="14.00">0</text>
103</g>
104<!-- r3->r2 -->
105<g id="edge9" class="edge">
106<title>r3->r2</title>
107<path fill="none" stroke="black" d="M580.57,-222.8C539.38,-210.94 445.04,-183.79 397.04,-169.97"/>
108<polygon fill="black" stroke="black" points="398.01,-167.34 389.55,-167.81 396.46,-172.72 398.01,-167.34"/>
109<text xml:space="preserve" text-anchor="middle" x="484.23" y="-206.83" font-family="Times New Roman" font-size="14.00">1</text>
110</g>
111<!-- r4->r3 -->
112<g id="edge10" class="edge">
113<title>r4->r3</title>
114<path fill="none" stroke="black" d="M496.83,-39.65C509.58,-59.76 530.47,-93.33 547.04,-123.07 561.55,-149.09 576.81,-179.48 587.31,-200.95"/>
115<polygon fill="black" stroke="black" points="584.69,-201.95 590.71,-207.91 589.72,-199.5 584.69,-201.95"/>
116<text xml:space="preserve" text-anchor="middle" x="542.92" y="-129.27" font-family="Times New Roman" font-size="14.00">0</text>
117</g>
118<!-- r4->r4 -->
119<g id="edge11" class="edge">
120<title>r4->r4</title>
121<path fill="none" stroke="black" d="M476.15,-42.08C470.41,-65.73 473.11,-93.13 484.23,-93.13 493.91,-93.13 497.21,-72.34 494.1,-51.35"/>
122<polygon fill="black" stroke="black" points="496.87,-50.89 492.59,-43.57 491.37,-51.95 496.87,-50.89"/>
123<text xml:space="preserve" text-anchor="middle" x="484.23" y="-99.33" font-family="Times New Roman" font-size="14.00">1</text>
124</g>
125</g>
126</svg>