- Every AXIOM expression has a unique and precise type
- AXIOM has an inference mechanism to help the user in the desk-calculator mode
- This mechanism uses coercions between types.
- A given mathematical object may have several implementations in AXIOM which one with is different type (for instance multivariate polynomials can be viewed recursively univariate or distributed).
- Types control internal representations and available methods.
- The AXIOM programming language offers
*types of types*which are extremely convenient for implementing algebraic structures. - Types are organized in a hierarchical manner.
- Types of types are called
*categories*. Other types are called*domains*. - An AXIOM function can return a type (or admit a type
among its arguments). Such a function is called a
*constructor*.

2004-04-27