-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fails to turn into correct MathJSON #13
Comments
Those are excellent test cases, thank you!
|
That's true, that makes this test case surprisingly tricky. For what it's worth, I personally have never seen a Another interesting thing that I just found out is that by default, a comma has a small space after it. |
Yes, it's considered a punctuation character and so has a small padding on its right. Note also that you can configure which character (or rather which LaTeX command sequence) is used with the That said, some people have very strong opinions about this: http://wordpress.mrreid.org/2014/05/27/stop-putting-commas-in-your-numbers/ Maybe I should reconsider the default value for |
Oh nice, I didn't know that there was configuration option for that :) I like the idea of changing the default value for |
I found another case where the compute-engine doesn't quite work: Logarithms. For example
|
I went through some mathematics notes and found the following interesting equations. I tested them on the compute engine demo page https://cortexjs.io/compute-engine/demo/
(Information for myself: Page 1 of ANA_UE_SS_21_Mo_1.pdf , meaning there are a few more testcases)
\begin{equation*} N(\varepsilon)\coloneq\lceil\frac{4}{\varepsilon^2}\rceil \end{equation*}
turns into
"" syntax-error
\begin{equation*} x_{1,2}=1,2 \end{equation*}
turns into
["Equal", ["Subscript", "x", {num: "12"}], {num: "12"}]
. Notice how the comma is missing\begin{equation*} \{1,2\} \end{equation*}
turns into
["Multiply", "\\{", {num: "12"}, "\\}"]
. I assume this happens because sets haven't been implemented yet\begin{equation*} [1,2] \end{equation*}
turns into
"" syntax-error
. I assume this happens because vectors/matrices and the like haven't been implemented yet.\begin{equation*} \frac{2}{\sqrt{n}}\Leftrightarrow n>\frac{5}{n^2} \end{equation*}
turns into the following, notice how
\\Leftrightarrow
doesn't have a special meaning and its precedence is off\begin{equation*} |a_n|\le\frac{2}{\sqrt{n}}\Rightarrow a_n\to0=0 \end{equation*}
turns into the following, notice how
\\Rightarrow
doesn't have a special meaning (implies) and its precedence is off.\begin{equation*} 3\equiv5\mod7 \end{equation*}
or also\begin{equation*} 3\equiv 5 (\mod 7) \end{equation*}
This is a congruence relation. I assume this is simply something that hasn't been implemented yet. Hopefully it's a good test case for round-tripping
\begin{equation*} a={\displaystyle \lim_{n\to\infin}a_n} \end{equation*}
turns into
\begin{equation*} \forall x\in\C^2:|x|<0 \end{equation*}
turns into the following
\begin{equation*} \forall n\colon a_n\le c_n\le b_n\implies\lim_{n\to\infin}c_n=a \end{equation*}
turns into the following, note how a few operators aren't parsed and how the precedences for other operators are slightly off. I think the correct order of operations in this case would start at the
:
, then the=>
and then the normal rules. Another interesting tidbit here are the two<=
signs. While a comparison would usually return a boolean value (true/false), here the comparisons are more like a range.The expression is a part of the squeeze theorem.
The text was updated successfully, but these errors were encountered: