Definition
Occurs Check
The occurs check is the unification test that rejects binding a variable to an expression that already contains that variable.
Formally, a proposed substitution
is rejected when
In type inference, this prevents infinite types such as .