Tratar las ecuaciones en ausencia de un buen editor de ecuaciones es desordenado y desagradable. Por ejemplo, si quisiera expresar una integral y su solución, podría verse así:
Integral [x ^ 3 e ^ (- mx ^ 2 b / 2), dx] = - ((2 + b m x ^ 2) / (b ^ 2 * e ^ ((b m x ^ 2) / 2) * m ^ 2))
En integrals.wolfram.com , esto se llama "formulario de entrada". A nadie le gusta ver una ecuación en "forma de entrada". La forma ideal de visualizar esta ecuación sería:

(Wolfram llama a esto "forma tradicional")
Para este codegolf, escriba un programa que tome alguna ecuación en "forma de entrada" como entrada y visualice esa ecuación en una representación ascii de "forma tradicional". Entonces, para este ejemplo, podríamos obtener algo como esto:
       /\      3
       |      x
       | ------------  dx = 
       |       2
      \/   (m x  b)/2
          e
              2
     2 + b m x
-(-----------------)
            2
   2  (b m x )/2  2
  b  e           m
Requisitos:
- No baraje, simplifique ni reorganice la entrada de ninguna manera. Preséntelo exactamente de la misma forma en que lo describió la entrada.
 - Admite las cuatro operaciones matemáticas básicas (+, -, *, /). Cuando no se multiplican dos números adyacentes, el símbolo * está implícito y debe omitirse.
 - No se requiere soporte para la integración (como se muestra en el ejemplo anterior) . Poder admitir entradas con funciones como Integrar [...] o Sqrt [...] es una ventaja.
 - Potencias de soporte como se muestra en el ejemplo anterior (la raíz enésima se puede modelar elevando a la potencia enésima).
 - Los paréntesis redundantes (como los que rodean al denomentador y el numerador de la fracción grande en el ejemplo anterior) deben omitirse.
 - La expresión en el denominador y numerador de una fracción debe estar centrada encima y debajo de la línea de división horizontal.
 - Puede elegir iniciar o no una nueva línea después de un signo igual. En el ejemplo anterior, se inicia una nueva línea.
 - El orden de las operaciones debe ser exactamente el mismo en la salida que en la entrada.
 
Algunos ejemplos de entrada y salida asociada para probar su solución:
Entrada:
1/2 + 1/3 + 1/4
Salida:
1   1   1
- + - + -
2   3   4
Entrada:
3x^2 / 2 + x^3^3
Salida:
   2     3
3 x     3
---- + x   
 2
Entrada:
(2 / x) / (5 / 4^2)
Salida:
2
-
x
--
5
--
 2
4
Entrada:
(3x^2)^(1/2)
Salida:
    2 1/2
(3 x )
                
Respuestas:
Python 2, 1666 caracteres
El diseño en realidad es bastante fácil: el análisis de la entrada es un verdadero problema. Todavía no estoy seguro de que sea completamente correcto.
Para la gran entrada en la pregunta, obtengo:
Aquí hay algunos casos de prueba más difíciles:
Ese último está mal, algún error de precedencia en el analizador.
fuente