[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Axiomdeveloper] [Axiom Language] Embedding Axiom categories in Axiom d
From: 
Bill Page 
Subject: 
[Axiomdeveloper] [Axiom Language] Embedding Axiom categories in Axiom domains. 
Date: 
Thu, 29 Sep 2005 12:40:36 0500 
Changes http://wiki.axiomdeveloper.org/AxiomLanguage/diff

??changed:
calling `1' a fraction just because of the way it was
calling "1" a fraction just because of the way it was
??changed:
The division of 1+2 by 3 takes place in Fraction Integer
The division of 1+2 by 3 takes place in 'Fraction Integer'
??changed:
The Name of each domain is used to refer to the collection
of its instances. For example, Integer denotes "the integers",
Float denotes "the floating point numbers" etc. For example::
The 'Name' of each domain is used to refer to the collection
of its instances. For example, 'Integer' denotes "the integers",
'Float' denotes "the floating point numbers" etc. For example::
??changed:
Thus the type of Fraction Integer is 'QuotientFieldCategory
Integer with canonical'. The axiom 'canonical' means that
equal elements of the domain are in fact identical.

We also say that the domain Fraction(s) *extends* the domain
LocalAlgebera(S,S,S). Domains can extend each other in a
Thus the type of 'Fraction Integer' is
'QuotientFieldCategory Integer with canonical'.
The axiom 'canonical' means that equal elements of the
domain are in fact identical.
We also say that the domain 'Fraction(S)' *extends* the domain
'LocalAlgebera(S,S,S)'. Domains can extend each other in a
??changed:
Fractions are represented as the domain Record(num:S, den:S).
Fractions are represented as the domain 'Record(num:S, den:S)'.
??changed:
Category. The category Name is used to denote the collection
of domains of that type. For example, category Ring denotes
'Category'. The category 'Name' is used to denote the collection
of domains of that type. For example, category 'Ring' denotes
??changed:
SetCategory, the class of algebraic sets. The notions of
'SetCategory', the class of algebraic sets. The notions of
??changed:
sets (domains of category OrderedSet) and rings are also
sets (domains of category 'OrderedSet') and rings are also
++added:
Confusion of Type and Domain
The most basic category is 'Type'. It denotes the collection
of all domains and subdomains. Note carefully that 'Type' does
not denote the class of all types! The type of all categories
is 'Category'. The type of 'Type' itself is undefined. For
example: the domain List is able to build "lists of elements
from domain D" for arbitrary D simply by requiring that D
belong to category 'Type'.
Another example. Enter the type 'Polynomial (Integer)' as an
expression to Axiom. This looks much like a function call
as well. It is! The result is stated to be of type 'Domain',
which denotes the collection of all domains.
\begin{axiom}
Polynomial(Integer)
\end{axiom}
But note well that 'Domain' is a domain but 'Type' is a
category. !!!?
Ref: Axoim Book "Chapter 2 Using Types and Modes".
??changed:
as type Tuple(Domain).
as type 'Tuple(Domain)'.

forwarded from http://wiki.axiomdeveloper.org/address@hidden