AngouriMath
Canonical
Property
Summary
Smallest first, then structural. Total up to Equals(System.Object) —
two expressions compare equal exactly when they are the same expression, which is what
makes "the least member" well defined.
two expressions compare equal exactly when they are the same expression, which is what
makes "the least member" well defined.
Remarks
Size first is the half that makes it useful rather than merely well defined: the
representative of a class is its smallest member, so canonicalising never enlarges what
it was given. The structural half is what makes it total, and it is deliberately not
the printed form —(x + y) + a and x + (y + a) print identically while
being different trees, so ordering on text would call two distinct expressions one.
representative of a class is its smallest member, so canonicalising never enlarges what
it was given. The structural half is what makes it total, and it is deliberately not
the printed form —
being different trees, so ordering on text would call two distinct expressions one.
Angouri © 2019-2023 · Project's repo · Site's repo · Octicons · Transparency · 4378 pages online