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 \Theta_\Lambda(\tau) = \sum_{x\in\Lambda}e^{i\pi\tau\|x\|^2}\qquad\mathrm{Im}\,\tau > 0.}

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

Semantic latex: \Theta_\Lambda(\tau) = \sum_{x\in\Lambda} \expe^{\iunit \cpi \tau \|x \|^2} \qquad \mathrm{Im} \tau > 0

Confidence: 0

Mathematica

Translation: Subscript[\[CapitalTheta], \[CapitalLambda]][\[Tau]] == Sum[Exp[I*Pi*\[Tau]*(Norm[x])^(2)], {x, \[CapitalLambda]}, GenerateConditions->None] > 0

Information

Sub Equations

  • Subscript[\[CapitalTheta], \[CapitalLambda]][\[Tau]] = Sum[Exp[I*Pi*\[Tau]*(Norm[x])^(2)], {x, \[CapitalLambda]}, GenerateConditions->None]
  • Sum[Exp[I*Pi*\[Tau]*(Norm[x])^(2)], {x, \[CapitalLambda]}, GenerateConditions->None] > 0

Free variables

  • I
  • Subscript[\[CapitalTheta], \[CapitalLambda]]
  • \[CapitalLambda]
  • \[Tau]
  • m

Constraints

  • I*m*\[Tau]

Symbol info

  • Pi was translated to: Pi
  • Unable to translate operator (imaginary part of complex number $arg1). Interpret it as a sequence of multiplications instead.
  • 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

Tests

Symbolic
Numeric

SymPy

Translation:

Information

Symbol info

  • (LaTeX -> SymPy) No translation possible for given token: norm [\|x\|]

Tests

Symbolic
Numeric

Maple

Translation:

Information

Symbol info

  • (LaTeX -> Maple) No translation possible for given token: norm [\|x\|]

Tests

Symbolic
Numeric

Dependency Graph Information

Includes

Is part of

Complete translation information:

{
  "id" : "FORMULA_e0eeb35abfd1bb59f64ea48c5ae017ae",
  "formula" : "\\Theta_\\Lambda(\\tau) = \\sum_{x\\in\\Lambda}e^{i\\pi\\tau\\|x\\|^2}\\qquad\\mathrm{Im}\\tau > 0",
  "semanticFormula" : "\\Theta_\\Lambda(\\tau) = \\sum_{x\\in\\Lambda} \\expe^{\\iunit \\cpi \\tau \\|x \\|^2} \\qquad \\mathrm{Im} \\tau > 0",
  "confidence" : 0.0,
  "translations" : {
    "Mathematica" : {
      "translation" : "Subscript[\\[CapitalTheta], \\[CapitalLambda]][\\[Tau]] == Sum[Exp[I*Pi*\\[Tau]*(Norm[x])^(2)], {x, \\[CapitalLambda]}, GenerateConditions->None] > 0",
      "translationInformation" : {
        "subEquations" : [ "Subscript[\\[CapitalTheta], \\[CapitalLambda]][\\[Tau]] = Sum[Exp[I*Pi*\\[Tau]*(Norm[x])^(2)], {x, \\[CapitalLambda]}, GenerateConditions->None]", "Sum[Exp[I*Pi*\\[Tau]*(Norm[x])^(2)], {x, \\[CapitalLambda]}, GenerateConditions->None] > 0" ],
        "freeVariables" : [ "I", "Subscript[\\[CapitalTheta], \\[CapitalLambda]]", "\\[CapitalLambda]", "\\[Tau]", "m" ],
        "constraints" : [ "I*m*\\[Tau]" ],
        "tokenTranslations" : {
          "\\cpi" : "Pi was translated to: Pi",
          "Im" : "Unable to translate operator (imaginary part of complex number $arg1). Interpret it as a sequence of multiplications instead.",
          "\\Theta" : "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"
        }
      },
      "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: norm [\\|x\\|]"
        }
      },
      "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" : "",
      "translationInformation" : {
        "tokenTranslations" : {
          "Error" : "(LaTeX -> Maple) No translation possible for given token: norm [\\|x\\|]"
        }
      },
      "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" : [ "\\Theta_\\Lambda(\\tau) = \\sum_{x\\in\\Lambda}e^{i\\pi\\tau\\|x\\|^2}\\qquad\\mathrm{Im}\\,\\tau > 0", "\\Lambda" ],
  "isPartOf" : [ "\\Theta_\\Lambda(\\tau) = \\sum_{x\\in\\Lambda}e^{i\\pi\\tau\\|x\\|^2}\\qquad\\mathrm{Im}\\,\\tau > 0" ],
  "definiens" : [ ]
}

Specify your own input