LaTeX to CAS translator
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 \sum_{j=1}^p a_j + \sum_{j=1}^q b_j = \sum_{j=1}^m c_j + \sum_{j=1}^n d_j, }
... is translated to the CAS output ...
Semantic latex: \sum_{j=1}^p a_j + \sum_{j=1}^q b_j = \sum_{j=1}^m c_j + \sum_{j=1}^n d_j
Confidence: 0
Mathematica
Translation: Sum[Subscript[a, j], {j, 1, p}, GenerateConditions->None]+ Sum[Subscript[b, j], {j, 1, q}, GenerateConditions->None] == Sum[Subscript[c, j], {j, 1, m}, GenerateConditions->None]+ Sum[Subscript[d, j], {j, 1, n}, GenerateConditions->None]
Information
Sub Equations
- Sum[Subscript[a, j], {j, 1, p}, GenerateConditions->None]+ Sum[Subscript[b, j], {j, 1, q}, GenerateConditions->None] = Sum[Subscript[c, j], {j, 1, m}, GenerateConditions->None]+ Sum[Subscript[d, j], {j, 1, n}, GenerateConditions->None]
Free variables
- Subscript[a, j]
- Subscript[b, j]
- Subscript[c, j]
- Subscript[d, j]
- m
- n
- p
- q
Tests
Symbolic
Numeric
SymPy
Translation: Sum(Symbol('{a}_{j}'), (j, 1, p))+ Sum(Symbol('{b}_{j}'), (j, 1, q)) == Sum(Symbol('{c}_{j}'), (j, 1, m))+ Sum(Symbol('{d}_{j}'), (j, 1, n))
Information
Sub Equations
- Sum(Symbol('{a}_{j}'), (j, 1, p))+ Sum(Symbol('{b}_{j}'), (j, 1, q)) = Sum(Symbol('{c}_{j}'), (j, 1, m))+ Sum(Symbol('{d}_{j}'), (j, 1, n))
Free variables
- Symbol('{a}_{j}')
- Symbol('{b}_{j}')
- Symbol('{c}_{j}')
- Symbol('{d}_{j}')
- m
- n
- p
- q
Tests
Symbolic
Numeric
Maple
Translation: sum(a[j], j = 1..p)+ sum(b[j], j = 1..q) = sum(c[j], j = 1..m)+ sum(d[j], j = 1..n)
Information
Sub Equations
- sum(a[j], j = 1..p)+ sum(b[j], j = 1..q) = sum(c[j], j = 1..m)+ sum(d[j], j = 1..n)
Free variables
- a[j]
- b[j]
- c[j]
- d[j]
- m
- n
- p
- q
Tests
Symbolic
Numeric
Dependency Graph Information
Includes
Description
- asymmetric pair
- further convergence condition
- function
- kernel
Complete translation information:
{
"id" : "FORMULA_ef23b14b25f9fc5415a9b1b997f8c57d",
"formula" : "\\sum_{j=1}^p a_j + \\sum_{j=1}^q b_j = \\sum_{j=1}^m c_j + \\sum_{j=1}^n d_j",
"semanticFormula" : "\\sum_{j=1}^p a_j + \\sum_{j=1}^q b_j = \\sum_{j=1}^m c_j + \\sum_{j=1}^n d_j",
"confidence" : 0.0,
"translations" : {
"Mathematica" : {
"translation" : "Sum[Subscript[a, j], {j, 1, p}, GenerateConditions->None]+ Sum[Subscript[b, j], {j, 1, q}, GenerateConditions->None] == Sum[Subscript[c, j], {j, 1, m}, GenerateConditions->None]+ Sum[Subscript[d, j], {j, 1, n}, GenerateConditions->None]",
"translationInformation" : {
"subEquations" : [ "Sum[Subscript[a, j], {j, 1, p}, GenerateConditions->None]+ Sum[Subscript[b, j], {j, 1, q}, GenerateConditions->None] = Sum[Subscript[c, j], {j, 1, m}, GenerateConditions->None]+ Sum[Subscript[d, j], {j, 1, n}, GenerateConditions->None]" ],
"freeVariables" : [ "Subscript[a, j]", "Subscript[b, j]", "Subscript[c, j]", "Subscript[d, j]", "m", "n", "p", "q" ]
},
"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" : "Sum(Symbol('{a}_{j}'), (j, 1, p))+ Sum(Symbol('{b}_{j}'), (j, 1, q)) == Sum(Symbol('{c}_{j}'), (j, 1, m))+ Sum(Symbol('{d}_{j}'), (j, 1, n))",
"translationInformation" : {
"subEquations" : [ "Sum(Symbol('{a}_{j}'), (j, 1, p))+ Sum(Symbol('{b}_{j}'), (j, 1, q)) = Sum(Symbol('{c}_{j}'), (j, 1, m))+ Sum(Symbol('{d}_{j}'), (j, 1, n))" ],
"freeVariables" : [ "Symbol('{a}_{j}')", "Symbol('{b}_{j}')", "Symbol('{c}_{j}')", "Symbol('{d}_{j}')", "m", "n", "p", "q" ]
},
"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" : "sum(a[j], j = 1..p)+ sum(b[j], j = 1..q) = sum(c[j], j = 1..m)+ sum(d[j], j = 1..n)",
"translationInformation" : {
"subEquations" : [ "sum(a[j], j = 1..p)+ sum(b[j], j = 1..q) = sum(c[j], j = 1..m)+ sum(d[j], j = 1..n)" ],
"freeVariables" : [ "a[j]", "b[j]", "c[j]", "d[j]", "m", "n", "p", "q" ]
},
"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" : 12,
"sentence" : 0,
"word" : 21
} ],
"includes" : [ "m", "q", "n", "\\mathbf{a}_{\\mathbf{p}}", "\\mathbf{b}_{\\mathbf{q}}", "j=h", "c" ],
"isPartOf" : [ ],
"definiens" : [ {
"definition" : "asymmetric pair",
"score" : 0.6859086196238077
}, {
"definition" : "further convergence condition",
"score" : 0.6859086196238077
}, {
"definition" : "function",
"score" : 0.6460746792928004
}, {
"definition" : "kernel",
"score" : 0.6460746792928004
} ]
}