LaTeX to CAS translator

Jump to navigation Jump to search

This mockup demonstrates the concept of TeX to Computer Algebra System (CAS) conversion.

The demo-application converts LaTeX functions which directly translate to CAS counterparts.

Functions without explicit CAS support are available for translation via a DRMF package (under development).

The following LaTeX input ...

{\displaystyle \begin{align} \log G(z+1) = {} & \frac{z^2}{2} \log z - \frac{3z^2}{4} + \frac{z}{2}\log 2\pi -\frac{1}{12} \log z \\ & {} + \left(\frac{1}{12}-\log A \right) +\sum_{k=1}^N \frac{B_{2k + 2}}{4k\left(k + 1\right)z^{2k}}~+~O\left(\frac{1}{z^{2N + 2}}\right). \end{align}}

... is translated to the CAS output ...

Semantic latex: \begin{align}\log \BarnesG@{z + 1} ={} &\frac{z^2}{2} \log z - \frac{3z^2}{4} + \frac{z}{2} \log 2 \cpi - \frac{1}{12} \log z \\ &{} +(\frac{1}{12} - \log A) + \sum_{k=1}^N \frac{\BernoullinumberB{2k + 2}}{4 k(k + 1) z^{2k}} + O(\frac{1}{z^{2N + 2}}) .\end{align}

Confidence: 0.7041471827212

Mathematica

Translation:

Information

Symbol info

  • (LaTeX -> Mathematica) Error while translating DLMF/DRMF Macro: Unable to retrieve correct number of arguments for the macro \BarnesG [\BarnesG]

Tests

Symbolic
Numeric

SymPy

Translation:

Information

Symbol info

  • (LaTeX -> SymPy) No translation possible for given token: Cannot extract information from feature set: \BarnesG [\BarnesG]

Tests

Symbolic
Numeric

Maple

Translation:

Information

Symbol info

  • (LaTeX -> Maple) No translation possible for given token: Cannot extract information from feature set: \BarnesG [\BarnesG]

Tests

Symbolic
Numeric

Dependency Graph Information

Includes

Is part of

Complete translation information:

{
  "id" : "FORMULA_493debcd6fe4e50af1dcd315dd88006a",
  "formula" : "\\begin{align}\n\\log G(z+1) = {} & \\frac{z^2}{2} \\log z - \\frac{3z^2}{4} + \\frac{z}{2}\\log 2\\pi -\\frac{1}{12} \\log z \\\\\n            & {} + \\left(\\frac{1}{12}-\\log A \\right)\n            +\\sum_{k=1}^N \\frac{B_{2k + 2}}{4k\\left(k + 1\\right)z^{2k}}~+~O\\left(\\frac{1}{z^{2N + 2}}\\right).\n\\end{align}",
  "semanticFormula" : "\\begin{align}\\log \\BarnesG@{z + 1} ={} &\\frac{z^2}{2} \\log z - \\frac{3z^2}{4} + \\frac{z}{2} \\log 2 \\cpi - \\frac{1}{12} \\log z \\\\ &{} +(\\frac{1}{12} - \\log A) + \\sum_{k=1}^N \\frac{\\BernoullinumberB{2k + 2}}{4 k(k + 1) z^{2k}} + O(\\frac{1}{z^{2N + 2}}) .\\end{align}",
  "confidence" : 0.7041471827211964,
  "translations" : {
    "Mathematica" : {
      "translation" : "",
      "translationInformation" : {
        "tokenTranslations" : {
          "Error" : "(LaTeX -> Mathematica) Error while translating DLMF/DRMF Macro: Unable to retrieve correct number of arguments for the macro \\BarnesG [\\BarnesG]"
        }
      }
    },
    "SymPy" : {
      "translation" : "",
      "translationInformation" : {
        "tokenTranslations" : {
          "Error" : "(LaTeX -> SymPy) No translation possible for given token: Cannot extract information from feature set: \\BarnesG [\\BarnesG]"
        }
      }
    },
    "Maple" : {
      "translation" : "",
      "translationInformation" : {
        "tokenTranslations" : {
          "Error" : "(LaTeX -> Maple) No translation possible for given token: Cannot extract information from feature set: \\BarnesG [\\BarnesG]"
        }
      }
    }
  },
  "positions" : [ ],
  "includes" : [ "B_k", "A", "z", "\\, 2\\pi", "G", "B_{2k}", "\\begin{align}\\log G(z+1) = {} & \\frac{z^2}{2} \\log z - \\frac{3z^2}{4} + \\frac{z}{2}\\log 2\\pi -\\frac{1}{12} \\log z \\\\            & {} + \\left(\\frac{1}{12}-\\log A \\right)            +\\sum_{k=1}^N \\frac{B_{2k + 2}}{4k\\left(k + 1\\right)z^{2k}}+O\\left(\\frac{1}{z^{2N + 2}}\\right).\\end{align}", "G(z+ 1)" ],
  "isPartOf" : [ "\\begin{align}\\log G(z+1) = {} & \\frac{z^2}{2} \\log z - \\frac{3z^2}{4} + \\frac{z}{2}\\log 2\\pi -\\frac{1}{12} \\log z \\\\            & {} + \\left(\\frac{1}{12}-\\log A \\right)            +\\sum_{k=1}^N \\frac{B_{2k + 2}}{4k\\left(k + 1\\right)z^{2k}}+O\\left(\\frac{1}{z^{2N + 2}}\\right).\\end{align}" ],
  "definiens" : [ ]
}

Specify your own input