Draft:Atomic subtyping

From testwiki
Revision as of 03:20, 10 January 2025 by imported>Jlwoodwa (Created page with ''''Atomic subtyping''' is a restricted form of subtyping where type statements can only depend on coercions between atomic types (including type variables), rather than between arbitrary types. For example, <math>int \subseteq real</math> is an atomic coercion, and <math>(r \to s) \subseteq t</math> is a non-atomic coercion. When atomic subtyping is used, one type can be a subtype of another only if they have the same pattern of type construct...')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Atomic subtyping is a restricted form of subtyping where type statements can only depend on coercions between atomic types (including type variables), rather than between arbitrary types. For example, intreal is an atomic coercion, and (rs)t is a non-atomic coercion. When atomic subtyping is used, one type can be a subtype of another only if they have the same pattern of type constructors. This allows for more efficient type inference algorithms.Template:Sfn

Notes

Template:Reflist

References