compute-engine
                                
                                 compute-engine copied to clipboard
                                
                                    compute-engine copied to clipboard
                            
                            
                            
                        Enabling Summation Subscript Equations
The summation is unable to parse a group containing more than a single argument in the subscript.
Error Examples 1) latex: \sum_{n,m} k_{n,m} ["Sum",["Subscript","k",["Delimiter",["Sequence","n","m"],"','"]],["Error",["ErrorCode","'incompatible-domain'","Symbols","Undefined"],["Delimiter",["Sequence","n","m"],"','"]]]
latex: \sum_{n \in N}K_n ["Sum","K_n",["Error",["ErrorCode","'incompatible-domain'","Symbols","Undefined"],["Element","n","N"]]]
Would like the parser to insert the mathjson of the equation in place of the subscript/superscript.
Proposed Solution to Examples Above 1) ["Sum",["Subscript","k",["Delimiter",["Sequence","n","m"],"','"]],["Hold",["Delimiter",["Sequence","n","m"],"','"]]] 2) ["Sum","K_n",["Hold",["Element","n","N"]]]
Hi, can I implement it?
Sure! That would be great. You'll want to extend the canonicalIndexingSet function in src/compute-engine/library/utils.ts and then the evalSummation and evalMultiplication function to make use of the extended indexing set.
The correct output should be ["Sum", ..., "n", "m"] for \sum_{n, m} or ["Sum", ..., ["Pair", "n", 1], ["Pair", "m", 1]] for \sum_{n=1, m=1}...
Hi @arnog , some follow-up questions:
- Why would \sum_{n,m} -> ["Sum",...,"n","m"] instead of ["Sum",...,["Hold","n"],["Hold","m"]]?
- would \sum_{n,m}^{j,k} x -> ["Sum", "x", ["Triple","n",1,"j"], ["Triple","m",1,"k"]]
- and would \sum_{d \in D;d \ne 5}{} d -> ["Sum", "d", ["Element","d","D"], ["NotEqual","d","5"]]
- The Holdis not actually necessary since theSumis already 'hold: "all"` (I know it's generated right now, but it could be removed).
- yes, presumably
- yes