Why Don't We Have a General-Purpose Tree Editor? (2014)
&gt;&gt; We need a solid, simple program that can simply edit trees.<p>I might be misunderstanding this but a &quot;tree&quot; is a graph, so formally a tuple G = {V,E} where V a set of vertices {a,b,c,....} and E a set of tuples: {{a,b}, {b,c},...} so that each a,b,c,... are vertices in V.<p>So for instance, the graph:<p><pre><code>    a
    |
   &#x2F; \
  b   c
  |   | 
  d   e
</code></pre>
Would be written as {{V,E}: V = {a,b,c,d,e}, E = {{a,b},{a,c},{b,d},{c,e}}} possibly accompanied by a statement as to whether edges are directed or not.<p>That&#x27;s a simple, intuitive, light-weight notation that is very easy to manipulate in a text editor, so that&#x27;s probably why nobody has bothered to write a special-purpose program for it.<p>And if you want a graphical representation there&#x27;s always tools like graphviz, so our graph can be written in dot-language as:<p><pre><code>  digraph{ 
   a-&gt;b
   a-&gt;c
   b-&gt;d
   c-&gt;e
   }
</code></pre>
Also, I don&#x27;t understand why a tool to manipulate graphs, rather than just represent them, would be any different than a proof assistant or a theorem prover.