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 \displaystyle S_n(x;q) = \frac{1}{(q;q)_n}{}_1\phi_1(q^{-n},0;q,-q^{n+1}x), }

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

Semantic latex: S_n(x ; q) = \frac{1}{\qmultiPochhammersym{q}{q}{n}}{}_1 \phi_1(q^{-n} , 0 ; q , - q^{n+1} x)

Confidence: 0.64970437488336

Mathematica

Translation: Subscript[S, n][x ; q] == Divide[1,Product[QPochhammer[Part[{q},i],q,n],{i,1,Length[{q}]}]]Subscript[, 1]*Subscript[\[Phi], 1][(q)^(- n), 0 ; q , - (q)^(n + 1)* x]

Information

Sub Equations

  • Subscript[S, n][x ; q] = Divide[1,Product[QPochhammer[Part[{q},i],q,n],{i,1,Length[{q}]}]]Subscript[, 1]*Subscript[\[Phi], 1][(q)^(- n), 0 ; q , - (q)^(n + 1)* x]

Free variables

  • Subscript[\[Phi], 1]
  • n
  • q
  • x

Symbol info

  • 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).
  • q-Multi-Pochhammer symbol; Example: \qmultiPochhammersym{a_1,\ldots,a_n}{q}{n}

Will be translated to: Alternative translations: [Product[QPochhammer[Part[{$0},i],$1,$2],{i,1,Length[{$0}]}]]Relevant links to definitions: DLMF: http://dlmf.nist.gov/17.2.E5 Mathematica:

Tests

Symbolic
Numeric

SymPy

Translation:

Information

Symbol info

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

Tests

Symbolic
Numeric

Maple

Translation:

Information

Symbol info

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

Tests

Symbolic
Numeric

Dependency Graph Information

Includes

Is part of

Complete translation information:

{
  "id" : "FORMULA_6171ea08252695e5defc7cd78ae352ff",
  "formula" : "S_n(x;q) = \\frac{1}{(q;q)_n}{}_1\\phi_1(q^{-n},0;q,-q^{n+1}x)",
  "semanticFormula" : "S_n(x ; q) = \\frac{1}{\\qmultiPochhammersym{q}{q}{n}}{}_1 \\phi_1(q^{-n} , 0 ; q , - q^{n+1} x)",
  "confidence" : 0.6497043748833582,
  "translations" : {
    "Mathematica" : {
      "translation" : "Subscript[S, n][x ; q] == Divide[1,Product[QPochhammer[Part[{q},i],q,n],{i,1,Length[{q}]}]]Subscript[, 1]*Subscript[\\[Phi], 1][(q)^(- n), 0 ; q , - (q)^(n + 1)* x]",
      "translationInformation" : {
        "subEquations" : [ "Subscript[S, n][x ; q] = Divide[1,Product[QPochhammer[Part[{q},i],q,n],{i,1,Length[{q}]}]]Subscript[, 1]*Subscript[\\[Phi], 1][(q)^(- n), 0 ; q , - (q)^(n + 1)* x]" ],
        "freeVariables" : [ "Subscript[\\[Phi], 1]", "n", "q", "x" ],
        "tokenTranslations" : {
          "\\phi" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary).",
          "S" : "Function without DLMF-Definition. We keep it like it is (but delete prefix \\ if necessary).",
          "\\qmultiPochhammersym" : "q-Multi-Pochhammer symbol; Example: \\qmultiPochhammersym{a_1,\\ldots,a_n}{q}{n}\nWill be translated to: \nAlternative translations: [Product[QPochhammer[Part[{$0},i],$1,$2],{i,1,Length[{$0}]}]]Relevant links to definitions:\nDLMF:         http://dlmf.nist.gov/17.2.E5\nMathematica:  "
        }
      },
      "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: \\qmultiPochhammersym [\\qmultiPochhammersym]"
        }
      },
      "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: Cannot extract information from feature set: \\qmultiPochhammersym [\\qmultiPochhammersym]"
        }
      },
      "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" : [ "\\displaystyle   S_n(x;q) = \\frac{1}{(q;q)_n}{}_1\\phi_1(q^{-n},0;q,-q^{n+1}x)" ],
  "isPartOf" : [ "\\displaystyle   S_n(x;q) = \\frac{1}{(q;q)_n}{}_1\\phi_1(q^{-n},0;q,-q^{n+1}x)" ],
  "definiens" : [ ]
}

Specify your own input