ritex 0.1 → 0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +41 -50
- data/ReleaseNotes +12 -4
- data/lib/ritex.rb +26 -17
- data/lib/ritex/lexer.rb +42 -49
- data/lib/ritex/mathml/entities.rb +14 -24
- data/lib/ritex/mathml/functions.rb +32 -10
- data/lib/ritex/mathml/markup.rb +4 -4
- data/lib/ritex/parser.rb +983 -644
- data/lib/ritex/parser.y +103 -65
- data/test/answer-key.yaml +233 -0
- data/test/mathml.rb +117 -74
- metadata +56 -45
- data/test/itex2mml-key.yaml +0 -292
data/lib/ritex/parser.y
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
/*
|
2
|
-
|
3
|
-
## lib/ritex/lexer.rb -- contains Ritex::Lexer
|
2
|
+
## lib/ritex/parser.y -- contains Ritex::Parser
|
4
3
|
## Author:: William Morgan (mailto: wmorgan-ritex@masanjin.net)
|
5
|
-
## Copyright:: Copyright 2005 William Morgan
|
4
|
+
## Copyright:: Copyright 2005--2009 William Morgan
|
6
5
|
## License:: GNU GPL version 2
|
7
6
|
*/
|
8
7
|
|
@@ -12,44 +11,46 @@ class Ritex::Parser
|
|
12
11
|
or 'rake racc'
|
13
12
|
*/
|
14
13
|
|
15
|
-
/* spacing
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
14
|
+
/* spacing
|
15
|
+
SPACE represents whitespace. the (stateful) lexer starts
|
16
|
+
sending this signal whenever it sees an ENV, up till when
|
17
|
+
it sees a '}'. Crazy, but it works: it allows us to capture
|
18
|
+
spacing in evironments (like \text) where we want them,
|
19
|
+
and the rest of the time not to have to deal with them
|
20
|
+
in the parser.
|
22
21
|
*/
|
23
22
|
|
24
|
-
token NUMBER VAR SYMBOL
|
25
|
-
|
26
|
-
expect 18 /* all from the \left\{ \right\} thing, which is naturally
|
27
|
-
ambiguous and there's nothing i can do to fix that. */
|
23
|
+
token NUMBER VAR SYMBOL FUNC0 FUNC1 FUNC2 FUNC3 MACRO0 MACRO1 MACRO2 MACRO3 ENV DOUBLEBACK DEFINE LEFT RIGHT ARRAY ARRAYOPTS ROWOPTS CELLOPTS COLALIGN ROWALIGN ALIGN PADDING EQUALCOLS EQUALROWS ROWLINES COLLINES FRAME ROWSPAN COLSPAN SPACE OPERATOR
|
28
24
|
|
29
25
|
rule
|
30
|
-
exp: /* nothing */
|
31
|
-
| exp
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
26
|
+
exp: /* nothing */ { result = "" }
|
27
|
+
| exp '-' atom { result = join(val[0], markup(token(val[1]), :unaryminus), val[2]) }
|
28
|
+
| exp nontoken '-' atom { result = join(val[0], val[1], op(val[2]), val[3]) }
|
29
|
+
| exp nontoken '-' '-' atom { result = join(val[0], val[1], op(val[2]), markup(token(val[3]), :unaryminus), val[4]) }
|
30
|
+
| exp atom { result = join(*val) }
|
31
|
+
|
32
|
+
subsup: atom '^' atom '_' atom { result = markup join(val[0], val[4], val[2]), :subsup }
|
33
|
+
| atom '_' atom '^' atom { result = markup join(val[0], val[2], val[4]), :subsup }
|
34
|
+
| atom '_' atom { result = markup join(val[0], val[2]), :sub }
|
35
|
+
| atom '^' atom { result = markup join(val[0], val[2]), :sup }
|
36
|
+
|
37
|
+
nontoken: NUMBER { result = markup val[0], :num }
|
38
|
+
| VAR { result = join(*val[0].split(//).map { |v| markup v, :var }) }
|
39
|
+
| symbol
|
40
|
+
| func
|
41
|
+
| macro
|
42
|
+
| ENV arg { result = special(*val) }
|
43
|
+
| '{' exp '}' { result = markup val[1], :group }
|
44
|
+
| array
|
45
|
+
| macrodef
|
46
|
+
| LEFT delim exp RIGHT delim { result = markup join(val[1], val[2], val[4]), :group }
|
47
|
+
|
48
|
+
|
49
|
+
atom: token
|
50
|
+
| nontoken
|
51
|
+
| subsup
|
52
|
+
| OPERATOR { result = lookup val[0] }
|
53
|
+
| '.' { result = op val[0] }
|
53
54
|
|
54
55
|
func: FUNC0 { result = special(*val) }
|
55
56
|
| FUNC1 atom { result = special(*val) }
|
@@ -65,21 +66,22 @@ rule
|
|
65
66
|
/* un-evalauted argument */
|
66
67
|
arg: '{' string '}' { result = safe(val[1]) }
|
67
68
|
|
68
|
-
pos: plainop { result = markup val[0], :op }
|
69
|
-
| SYMBOL { result = lookup val[0] }
|
70
|
-
|
71
69
|
stringel: NUMBER
|
72
|
-
| plainop
|
73
70
|
| '^'
|
74
71
|
| '_'
|
75
72
|
| VAR
|
76
73
|
| ARRAY
|
77
74
|
| escapeme { result = '\\' + val[0] } /* have to re-escape these */
|
78
75
|
| DOUBLEBACK
|
76
|
+
| rawtoken
|
77
|
+
| rawdelimtoken
|
78
|
+
| '-'
|
79
|
+
| '.'
|
79
80
|
| SPACE
|
80
81
|
| '{' string '}' { result = "{#{val[1]}}" } /* nested shit must match up or we won't know when to end */
|
81
82
|
|
82
83
|
escapeme: SYMBOL
|
84
|
+
| OPERATOR
|
83
85
|
| FUNC0
|
84
86
|
| FUNC1
|
85
87
|
| FUNC2
|
@@ -89,6 +91,8 @@ rule
|
|
89
91
|
| MACRO2
|
90
92
|
| MACRO3
|
91
93
|
| ENV
|
94
|
+
| LEFT
|
95
|
+
| RIGHT
|
92
96
|
|
93
97
|
string: /* empty */ { result = "" }
|
94
98
|
| string stringel { result = val[0] + val[1] }
|
@@ -99,6 +103,7 @@ rule
|
|
99
103
|
|
100
104
|
|
101
105
|
symspec: SYMBOL
|
106
|
+
| OPERATOR
|
102
107
|
| FUNC0
|
103
108
|
| FUNC1
|
104
109
|
| FUNC2
|
@@ -108,33 +113,66 @@ rule
|
|
108
113
|
| MACRO2
|
109
114
|
| MACRO3
|
110
115
|
|
111
|
-
array: ARRAY '{' ainnards '}' { result = markup markup(val[
|
116
|
+
array: ARRAY '{' arrayopts ainnards '}' { result = markup markup(val[3], :array, val[2]), :group }
|
117
|
+
|
118
|
+
arrayopts: /* empty */
|
119
|
+
| ARRAYOPTS '{' arrayoptsinnards '}' { result = val[2] }
|
120
|
+
|
121
|
+
arrayoptsinnards: /* empty */
|
122
|
+
| arrayoptsinnards COLALIGN arg { result = join val[0], special(val[1], val[2]) }
|
123
|
+
| arrayoptsinnards ROWALIGN arg { result = join val[0], special(val[1], val[2]) }
|
124
|
+
| arrayoptsinnards ALIGN arg { result = join val[0], special(val[1], val[2]) }
|
125
|
+
| arrayoptsinnards PADDING arg { result = join val[0], special(val[1], val[2]) }
|
126
|
+
| arrayoptsinnards EQUALCOLS arg { result = join val[0], special(val[1], val[2]) }
|
127
|
+
| arrayoptsinnards EQUALROWS arg { result = join val[0], special(val[1], val[2]) }
|
128
|
+
| arrayoptsinnards ROWLINES arg { result = join val[0], special(val[1], val[2]) }
|
129
|
+
| arrayoptsinnards COLLINES arg { result = join val[0], special(val[1], val[2]) }
|
130
|
+
| arrayoptsinnards FRAME arg { result = join val[0], special(val[1], val[2]) }
|
112
131
|
|
113
132
|
ainnards: arow
|
114
133
|
| ainnards DOUBLEBACK arow { result = val[0] + val[2] }
|
115
134
|
|
116
135
|
arow: arow1 { result = markup val[0], :row }
|
117
136
|
|
118
|
-
arow1:
|
119
|
-
| arow1 '&'
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
137
|
+
arow1: acell
|
138
|
+
| arow1 '&' acell { result = val[0] + val[2] }
|
139
|
+
|
140
|
+
acell: cellopts exp { result = markup val[1], :cell, val[0] }
|
141
|
+
|
142
|
+
cellopts: /* empty */
|
143
|
+
| CELLOPTS '{' celloptsinnards '}' { result = val[2] }
|
144
|
+
| celloptsinnards /* apparently you can elide this, though i only see that in the WebTeX examples */
|
145
|
+
|
146
|
+
celloptsinnards: /* empty */
|
147
|
+
| celloptsinnards ROWSPAN arg { result = join val[0], special(val[1], val[2]) }
|
148
|
+
| celloptsinnards COLSPAN arg { result = join val[0], special(val[1], val[2]) }
|
149
|
+
| celloptsinnards ROWALIGN arg { result = join val[0], special(val[1], val[2]) }
|
150
|
+
| celloptsinnards COLALIGN arg { result = join val[0], special(val[1], val[2]) }
|
151
|
+
|
152
|
+
token: rawtoken { result = op val[0] }
|
153
|
+
| rawdelimtoken { result = op val[0], "stretchy='false'" }
|
154
|
+
|
155
|
+
rawtoken: ','
|
156
|
+
| ';'
|
157
|
+
| ':'
|
158
|
+
| '<'
|
159
|
+
| '>'
|
160
|
+
| '='
|
161
|
+
| '#'
|
162
|
+
| '!'
|
163
|
+
| '+'
|
164
|
+
| '*'
|
165
|
+
| '/'
|
166
|
+
|
167
|
+
rawdelimtoken: '('
|
168
|
+
| ')'
|
169
|
+
| '['
|
170
|
+
| ']'
|
171
|
+
| '|'
|
172
|
+
|
173
|
+
delim: /* empty */
|
174
|
+
| rawdelimtoken { result = op val[0] }
|
175
|
+
| symbol
|
176
|
+
| '.' { result = nil } # counts as nothing
|
177
|
+
|
178
|
+
symbol: SYMBOL { result = lookup val[0] }
|
@@ -0,0 +1,233 @@
|
|
1
|
+
---
|
2
|
+
- - ""
|
3
|
+
- ""
|
4
|
+
- - " a"
|
5
|
+
- <mi>a</mi>
|
6
|
+
- - " a"
|
7
|
+
- <mi>a</mi>
|
8
|
+
- - (\hat{x}) = {(\hat{x}})
|
9
|
+
- <mo stretchy='false'>(</mo><mover><mrow><mi>x</mi></mrow><mo>^</mo></mover><mo stretchy='false'>)</mo><mo>=</mo><mrow><mo stretchy='false'>(</mo><mover><mrow><mi>x</mi></mrow><mo>^</mo></mover></mrow><mo stretchy='false'>)</mo>
|
10
|
+
- - ","
|
11
|
+
- <mo>,</mo>
|
12
|
+
- - ,\,\,,,\,
|
13
|
+
- <mo>,</mo><mspace width="thinmathspace"/><mspace width="thinmathspace"/><mo>,</mo><mo>,</mo><mspace width="thinmathspace"/>
|
14
|
+
- - "-1"
|
15
|
+
- <mo lspace="verythinmathspace" rspace="0em">−</mo><mn>1</mn>
|
16
|
+
- - -\infty
|
17
|
+
- <mo lspace="verythinmathspace" rspace="0em">−</mo><mn>∞</mn>
|
18
|
+
- - -\log(1 - X)/\lambda
|
19
|
+
- <mo lspace="verythinmathspace" rspace="0em">−</mo><mi>log</mi><mo stretchy='false'>(</mo><mn>1</mn><mo>−</mo><mi>X</mi><mo stretchy='false'>)</mo><mo>/</mo><mi>λ</mi>
|
20
|
+
- - -x
|
21
|
+
- <mo lspace="verythinmathspace" rspace="0em">−</mo><mi>x</mi>
|
22
|
+
- - 100!
|
23
|
+
- <mn>100</mn><mo>!</mo>
|
24
|
+
- - F(x) = \Pr(X \leq x)\ \text{for}\ -\infinity < x < \infinity
|
25
|
+
- <mi>F</mi><mo stretchy='false'>(</mo><mi>x</mi><mo stretchy='false'>)</mo><mo>=</mo><mi>Pr</mi><mo stretchy='false'>(</mo><mi>X</mi><mo>≤</mo><mi>x</mi><mo stretchy='false'>)</mo><mspace width="mediummathspace"/><mtext>for</mtext><mspace width="mediummathspace"/><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>∞</mn><mo><</mo><mi>x</mi><mo><</mo><mn>∞</mn>
|
26
|
+
- - |-
|
27
|
+
G(y) = \left\{\array{ 1 - e^{-\lambda y} & \text{ if } y \geq 0 \\
|
28
|
+
0 & \text{ if } y < 0 }\right.
|
29
|
+
- <mi>G</mi><mo stretchy="false">(</mo><mi>y</mi><mo stretchy="false">)</mo><mo>=</mo><mrow><mo>{</mo><mrow><mtable><mtr><mtd><mn>1</mn><mo>−</mo><msup><mi>e</mi><mrow><mo lspace="verythinmathspace" rspace="0em">−</mo><mi>λ</mi><mi>y</mi></mrow></msup></mtd><mtd><mtext> if </mtext><mi>y</mi><mo>≥</mo><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mtext> if </mtext><mi>y</mi><mo><</mo><mn>0</mn></mtd></mtr></mtable></mrow></mrow>
|
30
|
+
- - G^{-1}(x) = -\log(1 - x)/\lambda\text{ if } 0 < x < 1.
|
31
|
+
- <msup><mi>G</mi><mrow><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>1</mn></mrow></msup><mo stretchy='false'>(</mo><mi>x</mi><mo stretchy='false'>)</mo><mo>=</mo><mo lspace="verythinmathspace" rspace="0em">−</mo><mi>log</mi><mo stretchy='false'>(</mo><mn>1</mn><mo>−</mo><mi>x</mi><mo stretchy='false'>)</mo><mo>/</mo><mi>λ</mi><mtext> if </mtext><mn>0</mn><mo><</mo><mi>x</mi><mo><</mo><mn>1</mn><mo>.</mo>
|
32
|
+
- - P(x) = P^*(x)/Z
|
33
|
+
- <mi>P</mi><mo stretchy='false'>(</mo><mi>x</mi><mo stretchy='false'>)</mo><mo>=</mo><msup><mi>P</mi><mo>*</mo></msup><mo stretchy='false'>(</mo><mi>x</mi><mo stretchy='false'>)</mo><mo>/</mo><mi>Z</mi>
|
34
|
+
- - \ -\infty
|
35
|
+
- <mspace width="mediummathspace"/><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>∞</mn>
|
36
|
+
- - \,
|
37
|
+
- <mspace width="thinmathspace"/>
|
38
|
+
- - \Pr(a < X \leq b) = \int_a^b f(x)\ dx
|
39
|
+
- <mi>Pr</mi><mo stretchy='false'>(</mo><mi>a</mi><mo><</mo><mi>X</mi><mo>≤</mo><mi>b</mi><mo stretchy='false'>)</mo><mo>=</mo><msubsup><mo>∫</mo><mi>a</mi><mi>b</mi></msubsup><mi>f</mi><mo stretchy='false'>(</mo><mi>x</mi><mo stretchy='false'>)</mo><mspace width="mediummathspace"/><mi>d</mi><mi>x</mi>
|
40
|
+
- - \alpha
|
41
|
+
- <mi>α</mi>
|
42
|
+
- - \alpha + b + c
|
43
|
+
- <mi>α</mi><mo>+</mo><mi>b</mi><mo>+</mo><mi>c</mi>
|
44
|
+
- - \alpha - x
|
45
|
+
- <mi>α</mi><mo>−</mo><mi>x</mi>
|
46
|
+
- - |-
|
47
|
+
\array{ \colspan{3} (1,1) \text{ to } (1,3) & (1,4) \\
|
48
|
+
(2,1) & (2,2) & (2,3) & (2,4) }
|
49
|
+
- <mrow><mtable><mtr><mtd columnspan='3'><mo stretchy='false'>(</mo><mn>1</mn><mo>,</mo><mn>1</mn><mo stretchy='false'>)</mo><mtext> to </mtext><mo stretchy='false'>(</mo><mn>1</mn><mo>,</mo><mn>3</mn><mo stretchy='false'>)</mo></mtd><mtd><mo stretchy='false'>(</mo><mn>1</mn><mo>,</mo><mn>4</mn><mo stretchy='false'>)</mo></mtd></mtr><mtr><mtd><mo stretchy='false'>(</mo><mn>2</mn><mo>,</mo><mn>1</mn><mo stretchy='false'>)</mo></mtd><mtd><mo stretchy='false'>(</mo><mn>2</mn><mo>,</mo><mn>2</mn><mo stretchy='false'>)</mo></mtd><mtd><mo stretchy='false'>(</mo><mn>2</mn><mo>,</mo><mn>3</mn><mo stretchy='false'>)</mo></mtd><mtd><mo stretchy='false'>(</mo><mn>2</mn><mo>,</mo><mn>4</mn><mo stretchy='false'>)</mo></mtd></mtr></mtable></mrow>
|
50
|
+
- - |-
|
51
|
+
\array{ (1,1) & \rowspan{2} \int dx & (1,3) \\
|
52
|
+
(2,1) & (2,3) \\
|
53
|
+
(3,1) & (3,2) & (3,3) }
|
54
|
+
- <mrow><mtable><mtr><mtd><mo stretchy='false'>(</mo><mn>1</mn><mo>,</mo><mn>1</mn><mo stretchy='false'>)</mo></mtd><mtd rowspan='2'><mo>∫</mo><mi>d</mi><mi>x</mi></mtd><mtd><mo stretchy='false'>(</mo><mn>1</mn><mo>,</mo><mn>3</mn><mo stretchy='false'>)</mo></mtd></mtr><mtr><mtd><mo stretchy='false'>(</mo><mn>2</mn><mo>,</mo><mn>1</mn><mo stretchy='false'>)</mo></mtd><mtd><mo stretchy='false'>(</mo><mn>2</mn><mo>,</mo><mn>3</mn><mo stretchy='false'>)</mo></mtd></mtr><mtr><mtd><mo stretchy='false'>(</mo><mn>3</mn><mo>,</mo><mn>1</mn><mo stretchy='false'>)</mo></mtd><mtd><mo stretchy='false'>(</mo><mn>3</mn><mo>,</mo><mn>2</mn><mo stretchy='false'>)</mo></mtd><mtd><mo stretchy='false'>(</mo><mn>3</mn><mo>,</mo><mn>3</mn><mo stretchy='false'>)</mo></mtd></mtr></mtable></mrow>
|
55
|
+
- - \array{ \arrayopts{\colalign{left center right}} a & b & c \\ 100000 & 100000 & 10000}
|
56
|
+
- <mrow><mtable columnalign="left center right"><mtr><mtd><mi>a</mi></mtd><mtd><mi>b</mi></mtd><mtd><mi>c</mi></mtd></mtr><mtr><mtd><mn>100000</mn></mtd><mtd><mn>100000</mn></mtd><mtd><mn>10000</mn></mtd></mtr></mtable></mrow>
|
57
|
+
- - \array{ \arrayopts{\colalign{left}} a & b & c \\ 100000 & 100000 & 10000}
|
58
|
+
- <mrow><mtable columnalign="left"><mtr><mtd><mi>a</mi></mtd><mtd><mi>b</mi></mtd><mtd><mi>c</mi></mtd></mtr><mtr><mtd><mn>100000</mn></mtd><mtd><mn>100000</mn></mtd><mtd><mn>10000</mn></mtd></mtr></mtable></mrow>
|
59
|
+
- - \array{ \arrayopts{\rowalign{top center bottom}} \binom{\alpha}{\omega} & a & b \\ \frac{3}{4} & c & d \\ \int_0^1 & e & f}
|
60
|
+
- <mrow><mtable rowalign='top center bottom'><mtr><mtd><mfrac linethickness="0"><mrow><mi>α</mi></mrow><mrow><mi>ω</mi></mrow></mfrac></mtd><mtd><mi>a</mi></mtd><mtd><mi>b</mi></mtd></mtr><mtr><mtd><mfrac><mrow><mn>3</mn></mrow><mrow><mn>4</mn></mrow></mfrac></mtd><mtd><mi>c</mi></mtd><mtd><mi>d</mi></mtd></mtr><mtr><mtd><msubsup><mo>∫</mo><mn>0</mn><mn>1</mn></msubsup></mtd><mtd><mi>e</mi></mtd><mtd><mi>f</mi></mtd></mtr></mtable></mrow>
|
61
|
+
- - \array{ \arrayopts{\rowalign{top}} \binom{\alpha}{\omega} & a & b \\ \frac{3}{4} & c & d \\ \int_0^1 & e & f}
|
62
|
+
- <mrow><mtable rowalign='top'><mtr><mtd><mfrac linethickness="0"><mrow><mi>α</mi></mrow><mrow><mi>ω</mi></mrow></mfrac></mtd><mtd><mi>a</mi></mtd><mtd><mi>b</mi></mtd></mtr><mtr><mtd><mfrac><mrow><mn>3</mn></mrow><mrow><mn>4</mn></mrow></mfrac></mtd><mtd><mi>c</mi></mtd><mtd><mi>d</mi></mtd></mtr><mtr><mtd><msubsup><mo>∫</mo><mn>0</mn><mn>1</mn></msubsup></mtd><mtd><mi>e</mi></mtd><mtd><mi>f</mi></mtd></mtr></mtable></mrow>
|
63
|
+
- - |-
|
64
|
+
\array{1 & 0 \\
|
65
|
+
0 & 1}
|
66
|
+
- <mrow><mtable><mtr><mtd><mn>1</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>1</mn></mtd></mtr></mtable></mrow>
|
67
|
+
- - \array{1 & 0 \\ 0 & 1}
|
68
|
+
- <mrow><mtable><mtr><mtd><mn>1</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>1</mn></mtd></mtr></mtable></mrow>
|
69
|
+
- - \array{1 & 0}
|
70
|
+
- <mrow><mtable><mtr><mtd><mn>1</mn></mtd><mtd><mn>0</mn></mtd></mtr></mtable></mrow>
|
71
|
+
- - \array{1}
|
72
|
+
- <mrow><mtable><mtr><mtd><mn>1</mn></mtd></mtr></mtable></mrow>
|
73
|
+
- - \array{\arrayopts{\collines{solid}} a}
|
74
|
+
- <mrow><mtable columnlines="solid"><mtr><mtd><mi>a</mi></mtd></mtr></mtable></mrow>
|
75
|
+
- - \array{\arrayopts{\equalcols{true}} a}
|
76
|
+
- <mrow><mtable equalcolumns="true"><mtr><mtd><mi>a</mi></mtd></mtr></mtable></mrow>
|
77
|
+
- - \array{\arrayopts{\equalrows{true}} a}
|
78
|
+
- <mrow><mtable equalrows="true"><mtr><mtd><mi>a</mi></mtd></mtr></mtable></mrow>
|
79
|
+
- - \array{\arrayopts{\frame{solid}} a}
|
80
|
+
- <mrow><mtable frame="solid"><mtr><mtd><mi>a</mi></mtd></mtr></mtable></mrow>
|
81
|
+
- - \array{\arrayopts{\padding{20}} a & b & c \\ d & e & f \\ \alpha & \beta & \gamma}
|
82
|
+
- <mrow><mtable rowspacing="20" columnspacing="20"><mtr><mtd><mi>a</mi></mtd><mtd><mi>b</mi></mtd><mtd><mi>c</mi></mtd></mtr><mtr><mtd><mi>d</mi></mtd><mtd><mi>e</mi></mtd><mtd><mi>f</mi></mtd></mtr><mtr><mtd><mi>α</mi></mtd><mtd><mi>β</mi></mtd><mtd><mi>γ</mi></mtd></mtr></mtable></mrow>
|
83
|
+
- - \array{\arrayopts{\rowlines{solid}} a}
|
84
|
+
- <mrow><mtable rowlines="solid"><mtr><mtd><mi>a</mi></mtd></mtr></mtable></mrow>
|
85
|
+
- - \array{\cellopts{\colspan{2}} a \\ b & c}
|
86
|
+
- <mrow><mtable><mtr><mtd columnspan="2"><mi>a</mi></mtd></mtr><mtr><mtd><mi>b</mi></mtd><mtd><mi>c</mi></mtd></mtr></mtable></mrow>
|
87
|
+
- - \array{\cellopts{\rowspan{2}} a & b \\ c}
|
88
|
+
- <mrow><mtable><mtr><mtd rowspan="2"><mi>a</mi></mtd><mtd><mi>b</mi></mtd></mtr><mtr><mtd><mi>c</mi></mtd></mtr></mtable></mrow>
|
89
|
+
- - \array{\colspan{2} a \\ b & c}
|
90
|
+
- <mrow><mtable><mtr><mtd columnspan='2'><mi>a</mi></mtd></mtr><mtr><mtd><mi>b</mi></mtd><mtd><mi>c</mi></mtd></mtr></mtable></mrow>
|
91
|
+
- - \array{\rowspan{2} a & b \\ c}
|
92
|
+
- <mrow><mtable><mtr><mtd rowspan='2'><mi>a</mi></mtd><mtd><mi>b</mi></mtd></mtr><mtr><mtd><mi>c</mi></mtd></mtr></mtable></mrow>
|
93
|
+
- - \bar{x}
|
94
|
+
- <mover><mrow><mi>x</mi></mrow><mo>‾</mo></mover>
|
95
|
+
- - \binom{x}{2}
|
96
|
+
- <mfrac linethickness="0"><mrow><mi>x</mi></mrow><mrow><mn>2</mn></mrow></mfrac>
|
97
|
+
- - \check{x}
|
98
|
+
- <mover><mrow><mi>x</mi></mrow><mo>¯</mo></mover>
|
99
|
+
- - \ddot{x}
|
100
|
+
- <mover><mrow><mi>x</mi></mrow><mo>¨</mo></mover>
|
101
|
+
- - \dot{x}
|
102
|
+
- <mover><mrow><mi>x</mi></mrow><mo>˙</mo></mover>
|
103
|
+
- - \forall x\,x<0
|
104
|
+
- <mo>∀</mo><mi>x</mi><mspace width="thinmathspace"/><mi>x</mi><mo><</mo><mn>0</mn>
|
105
|
+
- - \frac{1}{2}
|
106
|
+
- <mfrac><mrow><mn>1</mn></mrow><mrow><mn>2</mn></mrow></mfrac>
|
107
|
+
- - \frac{1}{N} \sum_r \phi({x^{(r)}})
|
108
|
+
- <mfrac><mrow><mn>1</mn></mrow><mrow><mi>N</mi></mrow></mfrac><msub><mo lspace="thinmathspace" rspace="thinmathspace">∑</mo><mi>r</mi></msub><mi>φ</mi><mo stretchy='false'>(</mo><mrow><msup><mi>x</mi><mrow><mo stretchy='false'>(</mo><mi>r</mi><mo stretchy='false'>)</mo></mrow></msup></mrow><mo stretchy='false'>)</mo>
|
109
|
+
- - \frac{\sum_r w_r \phi({x^{(r)}})}{\sum_r w_r}
|
110
|
+
- <mfrac><mrow><msub><mo lspace="thinmathspace" rspace="thinmathspace">∑</mo><mi>r</mi></msub><msub><mi>w</mi><mi>r</mi></msub><mi>φ</mi><mo stretchy='false'>(</mo><mrow><msup><mi>x</mi><mrow><mo stretchy='false'>(</mo><mi>r</mi><mo stretchy='false'>)</mo></mrow></msup></mrow><mo stretchy='false'>)</mo></mrow><mrow><msub><mo lspace="thinmathspace" rspace="thinmathspace">∑</mo><mi>r</mi></msub><msub><mi>w</mi><mi>r</mi></msub></mrow></mfrac>
|
111
|
+
- - \frac{{N-x}}{2}
|
112
|
+
- <mfrac><mrow><mrow><mi>N</mi><mo>−</mo><mi>x</mi></mrow></mrow><mrow><mn>2</mn></mrow></mfrac>
|
113
|
+
- - \hat{x}
|
114
|
+
- <mover><mrow><mi>x</mi></mrow><mo>^</mo></mover>
|
115
|
+
- - \int_x f(x)\ dx
|
116
|
+
- <msub><mo>∫</mo><mi>x</mi></msub><mi>f</mi><mo stretchy='false'>(</mo><mi>x</mi><mo stretchy='false'>)</mo><mspace width="mediummathspace"/><mi>d</mi><mi>x</mi>
|
117
|
+
- - \int_{-\infinity}^\infinity f(x)\ dx = 1
|
118
|
+
- <msubsup><mo>∫</mo><mrow><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>∞</mn></mrow><mn>∞</mn></msubsup><mi>f</mi><mo stretchy='false'>(</mo><mi>x</mi><mo stretchy='false'>)</mo><mspace width="mediummathspace"/><mi>d</mi><mi>x</mi><mo>=</mo><mn>1</mn>
|
119
|
+
- - \left ( \binom{2}{3} \right )
|
120
|
+
- <mrow><mo>(</mo><mfrac linethickness="0"><mrow><mn>2</mn></mrow><mrow><mn>3</mn></mrow></mfrac><mo>)</mo></mrow>
|
121
|
+
- - \left ( \frac{2}{4+x} \right )^3
|
122
|
+
- <msup><mrow><mo>(</mo><mfrac><mrow><mn>2</mn></mrow><mrow><mn>4</mn><mo>+</mo><mi>x</mi></mrow></mfrac><mo>)</mo></mrow><mn>3</mn></msup>
|
123
|
+
- - \left ( x \right
|
124
|
+
- <mrow><mo>(</mo><mi>x</mi></mrow>
|
125
|
+
- - \left ( x \right )
|
126
|
+
- <mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow>
|
127
|
+
- - \left ( x \right + 3
|
128
|
+
- <mrow><mo>(</mo><mi>x</mi></mrow><mo>+</mo><mn>3</mn>
|
129
|
+
- - \left \frac{x}{y} \right|_{x=0}
|
130
|
+
- <msub><mrow><mfrac><mrow><mi>x</mi></mrow><mrow><mi>y</mi></mrow></mfrac><mo>|</mo></mrow><mrow><mi>x</mi><mo>=</mo><mn>0</mn></mrow></msub>
|
131
|
+
- - \left \{ x \right \}
|
132
|
+
- <mrow><mo>{</mo><mi>x</mi><mo>}</mo></mrow>
|
133
|
+
- - \lim_3
|
134
|
+
- <msub><mi>lim</mi><mn>3</mn></msub>
|
135
|
+
- - \lim_{x\to\infty}f(x)=0
|
136
|
+
- <msub><mi>lim</mi><mrow><mi>x</mi><mo>→</mo><mn>∞</mn></mrow></msub><mi>f</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mo>=</mo><mn>0</mn>
|
137
|
+
- - \ln x
|
138
|
+
- <mi>ln</mi><mi>x</mi>
|
139
|
+
- - \mathbb{Hello}
|
140
|
+
- <mi>ℍ𝕖𝕝𝕝𝕠</mi>
|
141
|
+
- - \mathcal{Hello}
|
142
|
+
- <mi>ℋℯ𝓁𝓁ℴ</mi>
|
143
|
+
- - |-
|
144
|
+
\mathop{monkey}
|
145
|
+
<
|
146
|
+
b
|
147
|
+
- <mo lspace="0em" rspace="thinmathspace">monkey</mo><mo><</mo><mi>b</mi>
|
148
|
+
- - \overset{\text{n terms}}{\overbrace{1+2+\cdots+n}}
|
149
|
+
- <mover><mrow><mover><mrow><mn>1</mn><mo>+</mo><mn>2</mn><mo>+</mo><mo>⋯</mo><mo>+</mo><mi>n</mi></mrow><mo>⏞</mo></mover></mrow><mrow><mtext>n terms</mtext></mrow></mover>
|
150
|
+
- - \root{3}{x+y}
|
151
|
+
- <mroot><mrow><mi>x</mi><mo>+</mo><mi>y</mi></mrow><mrow><mn>3</mn></mrow></mroot>
|
152
|
+
- - \sqrt{i}
|
153
|
+
- <msqrt><mrow><mi>i</mi></mrow></msqrt>
|
154
|
+
- - \sum_{n=1}^\infty \frac{(-1)^n}{n} = \ln 2
|
155
|
+
- <msubsup><mo lspace="thinmathspace" rspace="thinmathspace">∑</mo><mrow><mi>n</mi><mo>=</mo><mn>1</mn></mrow><mn>∞</mn></msubsup><mfrac><mrow><mo stretchy='false'>(</mo><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>1</mn><msup><mo stretchy='false'>)</mo><mi>n</mi></msup></mrow><mrow><mi>n</mi></mrow></mfrac><mo>=</mo><mi>ln</mi><mn>2</mn>
|
156
|
+
- - \sum_{n=1}^\infty \frac{1}{n} \text{ is divergent, but } \lim_{n \to \infty} \sum_{i=1}^n \frac{1}{i} - \ln n \text{ exists.}
|
157
|
+
- <msubsup><mo lspace="thinmathspace" rspace="thinmathspace">∑</mo><mrow><mi>n</mi><mo>=</mo><mn>1</mn></mrow><mn>∞</mn></msubsup><mfrac><mrow><mn>1</mn></mrow><mrow><mi>n</mi></mrow></mfrac><mtext> is divergent, but </mtext><msub><mi>lim</mi><mrow><mi>n</mi><mo>→</mo><mn>∞</mn></mrow></msub><msubsup><mo lspace="thinmathspace" rspace="thinmathspace">∑</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></msubsup><mfrac><mrow><mn>1</mn></mrow><mrow><mi>i</mi></mrow></mfrac><mo>−</mo><mi>ln</mi><mi>n</mi><mtext> exists.</mtext>
|
158
|
+
- - \text{ if }
|
159
|
+
- <mtext> if </mtext>
|
160
|
+
- - \text{for}\ -\infty
|
161
|
+
- <mtext>for</mtext><mspace width="mediummathspace"/><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>∞</mn>
|
162
|
+
- - \text{if \alpha}
|
163
|
+
- <mtext>if \alpha</mtext>
|
164
|
+
- - \text{if}
|
165
|
+
- <mtext>if</mtext>
|
166
|
+
- - \underoverset{S}{\alpha}{x=\infty}
|
167
|
+
- <munderover><mrow><mi>x</mi><mo>=</mo><mn>∞</mn></mrow><mrow><mi>S</mi></mrow><mrow><mi>α</mi></mrow></munderover>
|
168
|
+
- - \vec{x}
|
169
|
+
- <mover><mrow><mi>x</mi></mrow><mo>⇀</mo></mover>
|
170
|
+
- - a < b
|
171
|
+
- <mi>a</mi><mo><</mo><mi>b</mi>
|
172
|
+
- - a = -3
|
173
|
+
- <mi>a</mi><mo>=</mo><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>3</mn>
|
174
|
+
- - a ^ b
|
175
|
+
- <msup><mi>a</mi><mi>b</mi></msup>
|
176
|
+
- - a+3
|
177
|
+
- <mi>a</mi><mo>+</mo><mn>3</mn>
|
178
|
+
- - a-b
|
179
|
+
- <mi>a</mi><mo>−</mo><mi>b</mi>
|
180
|
+
- - a=-b
|
181
|
+
- <mi>a</mi><mo>=</mo><mo lspace="verythinmathspace" rspace="0em">−</mo><mi>b</mi>
|
182
|
+
- - a\in S
|
183
|
+
- <mi>a</mi><mo>∈</mo><mi>S</mi>
|
184
|
+
- - a\mathbb{GOAT}
|
185
|
+
- <mi>a</mi><mi>𝔾𝕆𝔸𝕋</mi>
|
186
|
+
- - a\text{ if a fd ew s }b
|
187
|
+
- <mi>a</mi><mtext> if a fd ew s </mtext><mi>b</mi>
|
188
|
+
- - a\text{ if }b
|
189
|
+
- <mi>a</mi><mtext> if </mtext><mi>b</mi>
|
190
|
+
- - a\text{ if}b
|
191
|
+
- <mi>a</mi><mtext> if</mtext><mi>b</mi>
|
192
|
+
- - a\text{if }b
|
193
|
+
- <mi>a</mi><mtext>if </mtext><mi>b</mi>
|
194
|
+
- - a\text{if}b
|
195
|
+
- <mi>a</mi><mtext>if</mtext><mi>b</mi>
|
196
|
+
- - a^b
|
197
|
+
- <msup><mi>a</mi><mi>b</mi></msup>
|
198
|
+
- - a^b_c
|
199
|
+
- <msubsup><mi>a</mi><mi>c</mi><mi>b</mi></msubsup>
|
200
|
+
- - a^{b_c} < a^b_c
|
201
|
+
- <msup><mi>a</mi><mrow><msub><mi>b</mi><mi>c</mi></msub></mrow></msup><mo><</mo><msubsup><mi>a</mi><mi>c</mi><mi>b</mi></msubsup>
|
202
|
+
- - a_b
|
203
|
+
- <msub><mi>a</mi><mi>b</mi></msub>
|
204
|
+
- - if
|
205
|
+
- <mi>i</mi><mi>f</mi>
|
206
|
+
- - w_r \equiv \frac{P^*({x^{(r)}})}{Q^*({x^{(r)}})}.
|
207
|
+
- <msub><mi>w</mi><mi>r</mi></msub><mo>≡</mo><mfrac><mrow><msup><mi>P</mi><mo>*</mo></msup><mo stretchy="false">(</mo><mrow><msup><mi>x</mi><mrow><mo stretchy="false">(</mo><mi>r</mi><mo stretchy="false">)</mo></mrow></msup></mrow><mo stretchy="false">)</mo></mrow><mrow><msup><mi>Q</mi><mo>*</mo></msup><mo stretchy="false">(</mo><mrow><msup><mi>x</mi><mrow><mo stretchy="false">(</mo><mi>r</mi><mo stretchy="false">)</mo></mrow></msup></mrow><mo stretchy="false">)</mo></mrow></mfrac><mo>.</mo>
|
208
|
+
- - x
|
209
|
+
- <mi>x</mi>
|
210
|
+
- - x + - x
|
211
|
+
- <mi>x</mi><mo>+</mo><mo lspace="verythinmathspace" rspace="0em">−</mo><mi>x</mi>
|
212
|
+
- - x - x
|
213
|
+
- <mi>x</mi><mo>−</mo><mi>x</mi>
|
214
|
+
- - x--x
|
215
|
+
- <mi>x</mi><mo>−</mo><mo lspace="verythinmathspace" rspace="0em">−</mo><mi>x</mi>
|
216
|
+
- - x\textstyle{\int_0^1}\displaystyle{\int_0^1}y
|
217
|
+
- <mi>x</mi><mstyle displaystyle="false"><mrow><msubsup><mo>∫</mo><mn>0</mn><mn>1</mn></msubsup></mrow></mstyle><mstyle displaystyle="true"><mrow><msubsup><mo>∫</mo><mn>0</mn><mn>1</mn></msubsup></mrow></mstyle><mi>y</mi>
|
218
|
+
- - "{E_\\theta\\left[\\hat{\\theta}\\right]}"
|
219
|
+
- <mrow><msub><mi>E</mi><mi>θ</mi></msub><mrow><mo>[</mo><mover><mrow><mi>θ</mi></mrow><mo>^</mo></mover><mo>]</mo></mrow></mrow>
|
220
|
+
- - "{\\frac{\\alpha-\\delta}{\\beta-\\gamma}}"
|
221
|
+
- <mrow><mfrac><mrow><mi>α</mi><mo>−</mo><mi>δ</mi></mrow><mrow><mi>β</mi><mo>−</mo><mi>γ</mi></mrow></mfrac></mrow>
|
222
|
+
- - "{\\frac{\\alpha-{\\mathbb{GOAT}}}{\\beta-{{\\mathbb{GOAT}}-x}}}"
|
223
|
+
- <mrow><mfrac><mrow><mi>α</mi><mo>−</mo><mrow><mi>𝔾𝕆𝔸𝕋</mi></mrow></mrow><mrow><mi>β</mi><mo>−</mo><mrow><mrow><mi>𝔾𝕆𝔸𝕋</mi></mrow><mo>−</mo><mi>x</mi></mrow></mrow></mfrac></mrow>
|
224
|
+
- - "{\\mathbb{GOAT}}_3"
|
225
|
+
- <msub><mrow><mi>𝔾𝕆𝔸𝕋</mi></mrow><mn>3</mn></msub>
|
226
|
+
- - "{x}"
|
227
|
+
- <mrow><mi>x</mi></mrow>
|
228
|
+
- - "{y-x}"
|
229
|
+
- <mrow><mi>y</mi><mo>−</mo><mi>x</mi></mrow>
|
230
|
+
- - "{{N-x}-x}"
|
231
|
+
- <mrow><mrow><mi>N</mi><mo>−</mo><mi>x</mi></mrow><mo>−</mo><mi>x</mi></mrow>
|
232
|
+
- - "{{{N-x}-x}-x}"
|
233
|
+
- <mrow><mrow><mrow><mi>N</mi><mo>−</mo><mi>x</mi></mrow><mo>−</mo><mi>x</mi></mrow><mo>−</mo><mi>x</mi></mrow>
|