# Appendix B: List of Syntax Tree Nodes

This is a comprehensive list of all math operations that MathLex recognizes. In JavaScript, each node is represented as an Array, the 0th index of which is a string ID. Any additional information is stored in the indices as described by each node type below.

Note that most of the tree nodes correspond to their operator tokens.

Unless otherwise noted, each purple "slot" is a (recursive) container for other node types.

Empty
Equivalentlhsrhs
Ifflhsrhs
Implieshypothesisconclusionsyntax_used
systax_used is a boolean variable indicating whether the "implies" (true) or "implied by" (false) syntax was used
Orlhsrhs
Xorlhsrhs
Andlhsrhs
Notclause
Forallrelationquantified_statement
Existsrelationquantified_statement
Uniquerelationquantified_statement
Equallhsrhs
NotEquallhsrhs
RatioEquallhsrhs
Congruentlhsrhs
Similarlhsrhs
Parallellhsrhs
Perpendicularlhsrhs
Lesslhsrhs
LessEquallhsrhs
GreaterEquallhsrhs
Greaterlhsrhs
Subsetlhsrhs
Supersetlhsrhs
ProperSubsetlhsrhs
ProperSupersetlhsrhs
Inclusionlhsrhs
Divideslhsrhs
NotDivideslhsrhs
Ratiolhsrhs
PlusMinuslhsrhs
MinusPluslhsrhs
Pluslhsrhs
Minuslhsrhs
Timeslhsrhs
Dividelhsrhs
Moduluslhsrhs
Exponentlhsrhs
Superscriptlhsrhs
Subscriptlhsrhs
DotProductlhsrhs
CrossProductlhsrhs
WedgeProductlhsrhs
TensorProductlhsrhs
Composelhsrhs
Unionlhsrhs
Intersectionlhsrhs
SetDifflhsrhs
DirectSumlhsrhs
CartesianProductlhsrhs
PosNegexpr
NegPosexpr
Positiveexpr
Negativeexpr
Vectorizerexpr
UnitVectorizerexpr
Partialexpr
Differentialexpr
Changeexpr
Divergenceexpr
Curlexpr
Factorialexpr
Primeexpr
DotDiffexpr
Functionfunc_builderarguments
Functions are still a work in progress. At present, the only recognized functions are those that stand alone as "variables" in func_builder
Variablename
Literaltypevalue
type is either 'Int' or 'Float'
Constantname
Vectorcomponents
Braexpr
Ketexpr
BraKetlhsrhs
Listelements
Rangeleft_inclusivelower_boundupper_boundright_inclusive
left_inclusive and right_inclusive parameters are boolean values
AbsValexpr
Normexpr
Parenthesesexpr
EmptySet
Setcomponents
SetBuilderbuild_exprpredicates