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 V(a,z)=\frac{1}{2^\xi\sqrt{\pi}\Gamma[1/2-a]} \left[ \sin(\xi\pi)\Gamma(1/2-\xi)\,y_1(a,z) +\sqrt{2}\cos(\xi\pi)\Gamma(1-\xi)\,y_2(a,z) \right] }

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

Semantic latex: \paraV@{a}{z} = \frac{1}{2^\xi \sqrt{\cpi} \Gamma [1 / 2 - a]} [\sin(\xi \cpi) \Gamma(1 / 2 - \xi) y_1(a , z) + \sqrt{2} \cos(\xi \cpi) \Gamma(1 - \xi) y_2(a , z)]

Confidence: 0.63503262687913

Mathematica

Translation: Divide[GAMMA[1/2 + a], Pi]*(Sin[Pi*(a)] * ParabolicCylinderD[-(a) - 1/2, z] + ParabolicCylinderD[-(a) - 1/2, -(z)]) == Divide[1,(2)^\[Xi]*Sqrt[Pi]*\[CapitalGamma]*(1/2 - a)]*(Sin[\[Xi]*Pi]*\[CapitalGamma]*(1/2 - \[Xi])*Subscript[y, 1][a , z]+Sqrt[2]*Cos[\[Xi]*Pi]*\[CapitalGamma]*(1 - \[Xi])*Subscript[y, 2][a , z])

Information

Sub Equations

  • Divide[GAMMA[1/2 + a], Pi]*(Sin[Pi*(a)] * ParabolicCylinderD[-(a) - 1/2, z] + ParabolicCylinderD[-(a) - 1/2, -(z)]) = Divide[1,(2)^\[Xi]*Sqrt[Pi]*\[CapitalGamma]*(1/2 - a)]*(Sin[\[Xi]*Pi]*\[CapitalGamma]*(1/2 - \[Xi])*Subscript[y, 1][a , z]+Sqrt[2]*Cos[\[Xi]*Pi]*\[CapitalGamma]*(1 - \[Xi])*Subscript[y, 2][a , z])

Free variables

  • \[CapitalGamma]
  • \[Xi]
  • a
  • z

Symbol info

  • Cosine; Example: \cos@@{z}

Will be translated to: Cos[$0] Relevant links to definitions: DLMF: http://dlmf.nist.gov/4.14#E2 Mathematica: https://reference.wolfram.com/language/ref/Cos.html

  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).
  • Pi was translated to: Pi
  • Sine; Example: \sin@@{z}

Will be translated to: Sin[$0] Relevant links to definitions: DLMF: http://dlmf.nist.gov/4.14#E1 Mathematica: https://reference.wolfram.com/language/ref/Sin.html

  • Parabolic cylinder function V; Example: \paraV@{a}{z}

Will be translated to: Alternative translations: [Divide[GAMMA[1/2 + $0], Pi]*(Sin[Pi*($0)] * ParabolicCylinderD[-($0) - 1/2, $1] + ParabolicCylinderD[-($0) - 1/2, -($1)])]Relevant links to definitions: DLMF: http://dlmf.nist.gov/12.4#E2 Mathematica: https://reference.wolfram.com/language/ref/Divide.html

Tests

Symbolic
Numeric

SymPy

Translation:

Information

Symbol info

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

Tests

Symbolic
Numeric

Maple

Translation: CylinderV(a, z) = (1)/((2)^(xi)*sqrt(Pi)*Gamma*(1/2 - a))*(sin(xi*Pi)*Gamma*(1/2 - xi)*y[1](a , z)+sqrt(2)*cos(xi*Pi)*Gamma*(1 - xi)*y[2](a , z))

Information

Sub Equations

  • CylinderV(a, z) = (1)/((2)^(xi)*sqrt(Pi)*Gamma*(1/2 - a))*(sin(xi*Pi)*Gamma*(1/2 - xi)*y[1](a , z)+sqrt(2)*cos(xi*Pi)*Gamma*(1 - xi)*y[2](a , z))

Free variables

  • Gamma
  • a
  • xi
  • z

Symbol info

  • Cosine; Example: \cos@@{z}

Will be translated to: cos($0) Relevant links to definitions: DLMF: http://dlmf.nist.gov/4.14#E2 Maple: https://www.maplesoft.com/support/help/maple/view.aspx?path=cos

  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).
  • Pi was translated to: Pi
  • Sine; Example: \sin@@{z}

Will be translated to: sin($0) Relevant links to definitions: DLMF: http://dlmf.nist.gov/4.14#E1 Maple: https://www.maplesoft.com/support/help/maple/view.aspx?path=sin

  • Parabolic cylinder function V; Example: \paraV@{a}{z}

Will be translated to: CylinderV($0, $1) Relevant links to definitions: DLMF: http://dlmf.nist.gov/12.4#E2 Maple: https://www.maplesoft.com/support/help/maple/view.aspx?path=CylinderV

Tests

Symbolic
Numeric

Dependency Graph Information

Includes

Is part of

Complete translation information:

{
  "id" : "FORMULA_389030a01beef224e22eea4ee979f12a",
  "formula" : "V(a,z)=\\frac{1}{2^\\xi\\sqrt{\\pi}\\Gamma[1/2-a]}\n\\left[\n\\sin(\\xi\\pi)\\Gamma(1/2-\\xi)y_1(a,z)\n+\\sqrt{2}\\cos(\\xi\\pi)\\Gamma(1-\\xi)y_2(a,z)\n\\right]",
  "semanticFormula" : "\\paraV@{a}{z} = \\frac{1}{2^\\xi \\sqrt{\\cpi} \\Gamma [1 / 2 - a]} [\\sin(\\xi \\cpi) \\Gamma(1 / 2 - \\xi) y_1(a , z) + \\sqrt{2} \\cos(\\xi \\cpi) \\Gamma(1 - \\xi) y_2(a , z)]",
  "confidence" : 0.6350326268791293,
  "translations" : {
    "Mathematica" : {
      "translation" : "Divide[GAMMA[1/2 + a], Pi]*(Sin[Pi*(a)] * ParabolicCylinderD[-(a) - 1/2, z] + ParabolicCylinderD[-(a) - 1/2, -(z)]) == Divide[1,(2)^\\[Xi]*Sqrt[Pi]*\\[CapitalGamma]*(1/2 - a)]*(Sin[\\[Xi]*Pi]*\\[CapitalGamma]*(1/2 - \\[Xi])*Subscript[y, 1][a , z]+Sqrt[2]*Cos[\\[Xi]*Pi]*\\[CapitalGamma]*(1 - \\[Xi])*Subscript[y, 2][a , z])",
      "translationInformation" : {
        "subEquations" : [ "Divide[GAMMA[1/2 + a], Pi]*(Sin[Pi*(a)] * ParabolicCylinderD[-(a) - 1/2, z] + ParabolicCylinderD[-(a) - 1/2, -(z)]) = Divide[1,(2)^\\[Xi]*Sqrt[Pi]*\\[CapitalGamma]*(1/2 - a)]*(Sin[\\[Xi]*Pi]*\\[CapitalGamma]*(1/2 - \\[Xi])*Subscript[y, 1][a , z]+Sqrt[2]*Cos[\\[Xi]*Pi]*\\[CapitalGamma]*(1 - \\[Xi])*Subscript[y, 2][a , z])" ],
        "freeVariables" : [ "\\[CapitalGamma]", "\\[Xi]", "a", "z" ],
        "tokenTranslations" : {
          "\\cos" : "Cosine; Example: \\cos@@{z}\nWill be translated to: Cos[$0]\nRelevant links to definitions:\nDLMF:         http://dlmf.nist.gov/4.14#E2\nMathematica:  https://reference.wolfram.com/language/ref/Cos.html",
          "y" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary).",
          "\\cpi" : "Pi was translated to: Pi",
          "\\sin" : "Sine; Example: \\sin@@{z}\nWill be translated to: Sin[$0]\nRelevant links to definitions:\nDLMF:         http://dlmf.nist.gov/4.14#E1\nMathematica:  https://reference.wolfram.com/language/ref/Sin.html",
          "\\paraV" : "Parabolic cylinder function V; Example: \\paraV@{a}{z}\nWill be translated to: \nAlternative translations: [Divide[GAMMA[1/2 + $0], Pi]*(Sin[Pi*($0)] * ParabolicCylinderD[-($0) - 1/2, $1] + ParabolicCylinderD[-($0) - 1/2, -($1)])]Relevant links to definitions:\nDLMF:         http://dlmf.nist.gov/12.4#E2\nMathematica:  https://reference.wolfram.com/language/ref/Divide.html"
        }
      },
      "numericResults" : {
        "overallResult" : "SKIPPED",
        "numberOfTests" : 0,
        "numberOfFailedTests" : 0,
        "numberOfSuccessfulTests" : 0,
        "numberOfSkippedTests" : 0,
        "numberOfErrorTests" : 0,
        "wasAborted" : false,
        "crashed" : false,
        "testCalculationsGroups" : [ ]
      },
      "symbolicResults" : {
        "overallResult" : "SKIPPED",
        "numberOfTests" : 0,
        "numberOfFailedTests" : 0,
        "numberOfSuccessfulTests" : 0,
        "numberOfSkippedTests" : 0,
        "numberOfErrorTests" : 0,
        "crashed" : false,
        "testCalculationsGroup" : [ ]
      }
    },
    "SymPy" : {
      "translation" : "",
      "translationInformation" : {
        "tokenTranslations" : {
          "Error" : "(LaTeX -> SymPy) No translation possible for given token: Cannot extract information from feature set: \\paraV [\\paraV]"
        }
      },
      "numericResults" : {
        "overallResult" : "SKIPPED",
        "numberOfTests" : 0,
        "numberOfFailedTests" : 0,
        "numberOfSuccessfulTests" : 0,
        "numberOfSkippedTests" : 0,
        "numberOfErrorTests" : 0,
        "wasAborted" : false,
        "crashed" : false,
        "testCalculationsGroups" : [ ]
      },
      "symbolicResults" : {
        "overallResult" : "SKIPPED",
        "numberOfTests" : 0,
        "numberOfFailedTests" : 0,
        "numberOfSuccessfulTests" : 0,
        "numberOfSkippedTests" : 0,
        "numberOfErrorTests" : 0,
        "crashed" : false,
        "testCalculationsGroup" : [ ]
      }
    },
    "Maple" : {
      "translation" : "CylinderV(a, z) = (1)/((2)^(xi)*sqrt(Pi)*Gamma*(1/2 - a))*(sin(xi*Pi)*Gamma*(1/2 - xi)*y[1](a , z)+sqrt(2)*cos(xi*Pi)*Gamma*(1 - xi)*y[2](a , z))",
      "translationInformation" : {
        "subEquations" : [ "CylinderV(a, z) = (1)/((2)^(xi)*sqrt(Pi)*Gamma*(1/2 - a))*(sin(xi*Pi)*Gamma*(1/2 - xi)*y[1](a , z)+sqrt(2)*cos(xi*Pi)*Gamma*(1 - xi)*y[2](a , z))" ],
        "freeVariables" : [ "Gamma", "a", "xi", "z" ],
        "tokenTranslations" : {
          "\\cos" : "Cosine; Example: \\cos@@{z}\nWill be translated to: cos($0)\nRelevant links to definitions:\nDLMF:  http://dlmf.nist.gov/4.14#E2\nMaple: https://www.maplesoft.com/support/help/maple/view.aspx?path=cos",
          "y" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary).",
          "\\cpi" : "Pi was translated to: Pi",
          "\\sin" : "Sine; Example: \\sin@@{z}\nWill be translated to: sin($0)\nRelevant links to definitions:\nDLMF:  http://dlmf.nist.gov/4.14#E1\nMaple: https://www.maplesoft.com/support/help/maple/view.aspx?path=sin",
          "\\paraV" : "Parabolic cylinder function V; Example: \\paraV@{a}{z}\nWill be translated to: CylinderV($0, $1)\nRelevant links to definitions:\nDLMF:  http://dlmf.nist.gov/12.4#E2\nMaple: https://www.maplesoft.com/support/help/maple/view.aspx?path=CylinderV"
        }
      },
      "numericResults" : {
        "overallResult" : "SKIPPED",
        "numberOfTests" : 0,
        "numberOfFailedTests" : 0,
        "numberOfSuccessfulTests" : 0,
        "numberOfSkippedTests" : 0,
        "numberOfErrorTests" : 0,
        "wasAborted" : false,
        "crashed" : false,
        "testCalculationsGroups" : [ ]
      },
      "symbolicResults" : {
        "overallResult" : "SKIPPED",
        "numberOfTests" : 0,
        "numberOfFailedTests" : 0,
        "numberOfSuccessfulTests" : 0,
        "numberOfSkippedTests" : 0,
        "numberOfErrorTests" : 0,
        "crashed" : false,
        "testCalculationsGroup" : [ ]
      }
    }
  },
  "positions" : [ ],
  "includes" : [ "a", "z", "V(a,z)", "f(a,z)", "U(a,z)", "V", "V(a,z)=\\frac{1}{2^\\xi\\sqrt{\\pi}\\Gamma[1/2-a]}\\left[\\sin(\\xi\\pi)\\Gamma(1/2-\\xi)\\,y_1(a,z)+\\sqrt{2}\\cos(\\xi\\pi)\\Gamma(1-\\xi)\\,y_2(a,z)\\right]" ],
  "isPartOf" : [ "V(a,z)=\\frac{1}{2^\\xi\\sqrt{\\pi}\\Gamma[1/2-a]}\\left[\\sin(\\xi\\pi)\\Gamma(1/2-\\xi)\\,y_1(a,z)+\\sqrt{2}\\cos(\\xi\\pi)\\Gamma(1-\\xi)\\,y_2(a,z)\\right]" ],
  "definiens" : [ ]
}

Specify your own input