Library / Symbolic Computation
Normal Forms In Symbolic Computation
A normal form is an expression that cannot be rewritten any further by a chosen rule set. It is a local
notion of completion, and it plays a major role in simplification, normalization, and symbolic
reasoning.
Definition
No More Applicable Rewrites
If a rewrite system reaches an expression where none of its rules apply, that expression is in
normal form with respect to that system. The important phrase is "with respect to that system." A
normal form depends on the rule set and strategy you chose.
This is why normal forms are useful but also limited. They tell you that a given rewrite process has
stopped, not necessarily that the expression is globally best or uniquely preferred.
Key Distinction
Normal Form Is Not Always Canonical Form
A canonical form is usually meant to be a uniquely preferred representation among equivalent
expressions. A normal form only says rewriting has stopped. If the system is not confluent, two
different rewrite paths may lead to two different normal forms.
That distinction explains why people discuss normal forms together with confluence and termination.