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 \;_{1}\phi_0 (a;q,z) =\frac{(az;q)_\infty}{(z;q)_\infty}= \prod_{n=0}^\infty \frac {1-aq^n z}{1-q^n z}}

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

Semantic latex: _{1}\phi_0 (a;q,z) =\frac{(az;q)_\infty}{(z;q)_\infty}= \prod_{n=0}^\infty \frac {1-aq^n z}{1-q^n z}

Confidence: 0

Mathematica

Translation: Subscript[$0, 1]*Subscript[\[Phi], 0][a ; q , z] == Divide[Subscript[a*z ; q, Infinity],Subscript[z ; q, Infinity]] == Product[Divide[1 - a*(q)^(n)* z,1 - (q)^(n)* z], {n, 0, Infinity}, GenerateConditions->None]

Information

Sub Equations

  • Subscript[$0, 1]*Subscript[\[Phi], 0][a ; q , z] = Divide[Subscript[a*z ; q, Infinity],Subscript[z ; q, Infinity]]
  • Divide[Subscript[a*z ; q, Infinity],Subscript[z ; q, Infinity]] = Product[Divide[1 - a*(q)^(n)* z,1 - (q)^(n)* z], {n, 0, Infinity}, GenerateConditions->None]

Free variables

  • Subscript[\[Phi], 0]
  • a
  • q
  • z

Symbol info

  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).

Tests

Symbolic
Numeric

SymPy

Translation: Symbol('{$0}_{1}')*Symbol('{Symbol('phi')}_{0}')(a ; q , z) == (Symbol('{a*z ; q}_{oo}'))/(Symbol('{z ; q}_{oo}')) == Product((1 - a*(q)**(n)* z)/(1 - (q)**(n)* z), (n, 0, oo))

Information

Sub Equations

  • Symbol('{$0}_{1}')*Symbol('{Symbol('phi')}_{0}')(a ; q , z) = (Symbol('{a*z ; q}_{oo}'))/(Symbol('{z ; q}_{oo}'))
  • (Symbol('{a*z ; q}_{oo}'))/(Symbol('{z ; q}_{oo}')) = Product((1 - a*(q)**(n)* z)/(1 - (q)**(n)* z), (n, 0, oo))

Free variables

  • Symbol('{Symbol('phi')}_{0}')
  • a
  • q
  • z

Symbol info

  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).

Tests

Symbolic
Numeric

Maple

Translation: $0[1]*phi[0](a ; q , z) = (a*z ; q[infinity])/(z ; q[infinity]) = product((1 - a*(q)^(n)* z)/(1 - (q)^(n)* z), n = 0..infinity)

Information

Sub Equations

  • $0[1]*phi[0](a ; q , z) = (a*z ; q[infinity])/(z ; q[infinity])
  • (a*z ; q[infinity])/(z ; q[infinity]) = product((1 - a*(q)^(n)* z)/(1 - (q)^(n)* z), n = 0..infinity)

Free variables

  • a
  • phi[0]
  • q
  • z

Symbol info

  • Function without DLMF-Definition. We keep it like it is (but delete prefix \ if necessary).

Tests

Symbolic
Numeric

Dependency Graph Information

Includes

Is part of

Complete translation information:

{
  "id" : "FORMULA_53c66f341e0adbbe3a4e7e9e2cedbe91",
  "formula" : "_{1}\\phi_0 (a;q,z) =\\frac{(az;q)_\\infty}{(z;q)_\\infty}= \\prod_{n=0}^\\infty \n\\frac {1-aq^n z}{1-q^n z}",
  "semanticFormula" : "_{1}\\phi_0 (a;q,z) =\\frac{(az;q)_\\infty}{(z;q)_\\infty}= \\prod_{n=0}^\\infty \n\\frac {1-aq^n z}{1-q^n z}",
  "confidence" : 0.0,
  "translations" : {
    "Mathematica" : {
      "translation" : "Subscript[$0, 1]*Subscript[\\[Phi], 0][a ; q , z] == Divide[Subscript[a*z ; q, Infinity],Subscript[z ; q, Infinity]] == Product[Divide[1 - a*(q)^(n)* z,1 - (q)^(n)* z], {n, 0, Infinity}, GenerateConditions->None]",
      "translationInformation" : {
        "subEquations" : [ "Subscript[$0, 1]*Subscript[\\[Phi], 0][a ; q , z] = Divide[Subscript[a*z ; q, Infinity],Subscript[z ; q, Infinity]]", "Divide[Subscript[a*z ; q, Infinity],Subscript[z ; q, Infinity]] = Product[Divide[1 - a*(q)^(n)* z,1 - (q)^(n)* z], {n, 0, Infinity}, GenerateConditions->None]" ],
        "freeVariables" : [ "Subscript[\\[Phi], 0]", "a", "q", "z" ],
        "tokenTranslations" : {
          "\\phi" : "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('{$0}_{1}')*Symbol('{Symbol('phi')}_{0}')(a ; q , z) == (Symbol('{a*z ; q}_{oo}'))/(Symbol('{z ; q}_{oo}')) == Product((1 - a*(q)**(n)* z)/(1 - (q)**(n)* z), (n, 0, oo))",
      "translationInformation" : {
        "subEquations" : [ "Symbol('{$0}_{1}')*Symbol('{Symbol('phi')}_{0}')(a ; q , z) = (Symbol('{a*z ; q}_{oo}'))/(Symbol('{z ; q}_{oo}'))", "(Symbol('{a*z ; q}_{oo}'))/(Symbol('{z ; q}_{oo}')) = Product((1 - a*(q)**(n)* z)/(1 - (q)**(n)* z), (n, 0, oo))" ],
        "freeVariables" : [ "Symbol('{Symbol('phi')}_{0}')", "a", "q", "z" ],
        "tokenTranslations" : {
          "\\phi" : "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" : "$0[1]*phi[0](a ; q , z) = (a*z ; q[infinity])/(z ; q[infinity]) = product((1 - a*(q)^(n)* z)/(1 - (q)^(n)* z), n = 0..infinity)",
      "translationInformation" : {
        "subEquations" : [ "$0[1]*phi[0](a ; q , z) = (a*z ; q[infinity])/(z ; q[infinity])", "(a*z ; q[infinity])/(z ; q[infinity]) = product((1 - a*(q)^(n)* z)/(1 - (q)^(n)* z), n = 0..infinity)" ],
        "freeVariables" : [ "a", "phi[0]", "q", "z" ],
        "tokenTranslations" : {
          "\\phi" : "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" : [ ],
  "includes" : [ "a", "z", "n", "q^{n}", "\\;_{1}\\phi_0 (a;q,z) =\\frac{(az;q)_\\infty}{(z;q)_\\infty}= \\prod_{n=0}^\\infty \\frac {1-aq^n z}{1-q^n z}", "q" ],
  "isPartOf" : [ "\\;_{1}\\phi_0 (a;q,z) =\\frac{(az;q)_\\infty}{(z;q)_\\infty}= \\prod_{n=0}^\\infty \\frac {1-aq^n z}{1-q^n z}" ],
  "definiens" : [ ]
}

Specify your own input