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 D_-(x) = i F(-ix) = -\frac{\sqrt{\pi}}{2} \left[ e^{x^2} - w(-ix) \right]}

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

Semantic latex: D_-(x) = \iunit F(- \iunit x) = - \frac{\sqrt{\cpi}}{2} [\expe^{x^2} - w(- \iunit x)]

Confidence: 0

Mathematica

Translation: Subscript[D, -][x] == I*F[- I*x] == -Divide[Sqrt[Pi],2]*(Exp[(x)^(2)]- w[- I*x])

Information

Sub Equations

  • Subscript[D, -][x] = I*F[- I*x]
  • I*F[- I*x] = -Divide[Sqrt[Pi],2]*(Exp[(x)^(2)]- w[- I*x])

Free variables

  • x

Symbol info

  • Pi was translated to: Pi
  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).
  • Recognizes e with power as the exponential function. It was translated as a function.
  • Imaginary unit was translated to: I
  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).
  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).

Tests

Symbolic
Numeric

SymPy

Translation: Symbol('{D}_{-}')(x) == I*F(- I*x) == -(sqrt(pi))/(2)*(exp((x)**(2))- w(- I*x))

Information

Sub Equations

  • Symbol('{D}_{-}')(x) = I*F(- I*x)
  • I*F(- I*x) = -(sqrt(pi))/(2)*(exp((x)**(2))- w(- I*x))

Free variables

  • x

Symbol info

  • Pi was translated to: pi
  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).
  • Recognizes e with power as the exponential function. It was translated as a function.
  • Imaginary unit was translated to: I
  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).
  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).

Tests

Symbolic
Numeric

Maple

Translation: D[-](x) = I*F(- I*x) = -(sqrt(Pi))/(2)*(exp((x)^(2))- w(- I*x))

Information

Sub Equations

  • D[-](x) = I*F(- I*x)
  • I*F(- I*x) = -(sqrt(Pi))/(2)*(exp((x)^(2))- w(- I*x))

Free variables

  • x

Symbol info

  • Pi was translated to: Pi
  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).
  • Recognizes e with power as the exponential function. It was translated as a function.
  • Imaginary unit was translated to: I
  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).
  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).

Tests

Symbolic
Numeric

Dependency Graph Information

Includes

Description

  • entire complex plane
  • Dawson function
  • term
  • erfi
  • Faddeeva function

Complete translation information:

{
  "id" : "FORMULA_7e0e13bac033ba8ef229ce6f5c661822",
  "formula" : "D_-(x) = i F(-ix) = -\\frac{\\sqrt{\\pi}}{2} \\left[ e^{x^2} - w(-ix) \\right]",
  "semanticFormula" : "D_-(x) = \\iunit F(- \\iunit x) = - \\frac{\\sqrt{\\cpi}}{2} [\\expe^{x^2} - w(- \\iunit x)]",
  "confidence" : 0.0,
  "translations" : {
    "Mathematica" : {
      "translation" : "Subscript[D, -][x] == I*F[- I*x] == -Divide[Sqrt[Pi],2]*(Exp[(x)^(2)]- w[- I*x])",
      "translationInformation" : {
        "subEquations" : [ "Subscript[D, -][x] = I*F[- I*x]", "I*F[- I*x] = -Divide[Sqrt[Pi],2]*(Exp[(x)^(2)]- w[- I*x])" ],
        "freeVariables" : [ "x" ],
        "tokenTranslations" : {
          "\\cpi" : "Pi was translated to: Pi",
          "D" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary).",
          "\\expe" : "Recognizes e with power as the exponential function. It was translated as a function.",
          "\\iunit" : "Imaginary unit was translated to: I",
          "F" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary).",
          "w" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary)."
        }
      },
      "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" : "Symbol('{D}_{-}')(x) == I*F(- I*x) == -(sqrt(pi))/(2)*(exp((x)**(2))- w(- I*x))",
      "translationInformation" : {
        "subEquations" : [ "Symbol('{D}_{-}')(x) = I*F(- I*x)", "I*F(- I*x) = -(sqrt(pi))/(2)*(exp((x)**(2))- w(- I*x))" ],
        "freeVariables" : [ "x" ],
        "tokenTranslations" : {
          "\\cpi" : "Pi was translated to: pi",
          "D" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary).",
          "\\expe" : "Recognizes e with power as the exponential function. It was translated as a function.",
          "\\iunit" : "Imaginary unit was translated to: I",
          "F" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary).",
          "w" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary)."
        }
      },
      "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" : "D[-](x) = I*F(- I*x) = -(sqrt(Pi))/(2)*(exp((x)^(2))- w(- I*x))",
      "translationInformation" : {
        "subEquations" : [ "D[-](x) = I*F(- I*x)", "I*F(- I*x) = -(sqrt(Pi))/(2)*(exp((x)^(2))- w(- I*x))" ],
        "freeVariables" : [ "x" ],
        "tokenTranslations" : {
          "\\cpi" : "Pi was translated to: Pi",
          "D" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary).",
          "\\expe" : "Recognizes e with power as the exponential function. It was translated as a function.",
          "\\iunit" : "Imaginary unit was translated to: I",
          "F" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary).",
          "w" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary)."
        }
      },
      "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" : [ {
    "section" : 1,
    "sentence" : 4,
    "word" : 29
  } ],
  "includes" : [ "w(z)", "F(x)", "x", "F(y)" ],
  "isPartOf" : [ ],
  "definiens" : [ {
    "definition" : "entire complex plane",
    "score" : 0.6460746792928004
  }, {
    "definition" : "Dawson function",
    "score" : 0.5500952380952381
  }, {
    "definition" : "term",
    "score" : 0.5500952380952381
  }, {
    "definition" : "erfi",
    "score" : 0.5049074255814494
  }, {
    "definition" : "Faddeeva function",
    "score" : 0.46655930748162855
  } ]
}

Specify your own input