|
|
last edited 16 years ago by kratt6 |
1 2 | ||
Editor:
Time: 2007/11/17 22:23:08 GMT-8 |
||
Note: Axiom is not very strict... |
changed: - \begin{axiom} F := MachineFloat a: F := -0.12345 b: F := -1234567890.0 c: F := 1234567890.12345 (a+b)+c a+(b+c) F has Field \end{axiom} MachineFloat clearly doesn't form a (mathematical) field as the above code demonstrates (and we all know). From greg Thu Jun 22 09:18:32 -0500 2006 From: greg Date: Thu, 22 Jun 2006 09:18:32 -0500 Subject: DoubleFloat and Float too Message-ID: <20060622091832-0500@wiki.axiom-developer.org> \begin{axiom} )cl all F := Float digits() a: F := -0.12345 b: F := -1234567890.0 c: F := 1234567890.12345 (a+b)+c a+(b+c) F has Field \end{axiom} From kratt6 Thu Jun 22 09:39:26 -0500 2006 From: kratt6 Date: Thu, 22 Jun 2006 09:39:26 -0500 Subject: Axiom is not very strict... Message-ID: <20060622093926-0500@wiki.axiom-developer.org> Unfortunately, Axiom is not very strict with these things, although it should be, I believe. Some examples: * in Axiom, every field has the attribute 'canonicalUnitNormal'. In ATTREG.SPAD, we find:: canonicalUnitNormal ++ \spad{canonicalUnitNormal} is true if we can choose a canonical ++ representative for each class of associate elements, that is ++ \spad{associates?(a,b)} returns true if and only if ++ \spad{unitCanonical(a) = unitCanonical(b)}. However, I suspect, this cannot be done in every field. * the domain 'EXPR' is a field, although it is (I think) meant to allow arbitrary functions to be expressed, for example $\chi(x<0)$, which does not have an inverse, I'd say. In the documentation of MuPAD, they say that (their) expression domain is a field for "convenience". Maybe this is related to the above. In any case, we certainly cannot decide whether an element is zero or not. Martin
axiomF := MachineFloat
(1) |
axioma: F := -0.12345
(2) |
axiomb: F := -1234567890.0
(3) |
axiomc: F := 1234567890.12345
(4) |
axiom(a+b)+c
(5) |
axioma+(b+c)
(6) |
axiomF has Field
(7) |
MachineFloat? clearly doesn't form a (mathematical) field as the above code demonstrates (and we all know).
axiom)cl all All user variables and function definitions have been cleared. F := Float
(8) |
axiomdigits()
(9) |
axioma: F := -0.12345
(10) |
axiomb: F := -1234567890.0
(11) |
axiomc: F := 1234567890.12345
(12) |
axiom(a+b)+c
(13) |
axioma+(b+c)
(14) |
axiomF has Field
(15) |
canonicalUnitNormal
.In ATTREG.SPAD, we find:
canonicalUnitNormal ++ \spad{canonicalUnitNormal} is true if we can choose a canonical ++ representative for each class of associate elements, that is ++ \spad{associates?(a,b)} returns true if and only if ++ \spad{unitCanonical(a) = unitCanonical(b)}.
However, I suspect, this cannot be done in every field.
EXPR
is a field, although it is (I think) meant to allow arbitrary functions to be expressed, for example , which does not have an inverse, I'd say.In the documentation of MuPAD?, they say that (their) expression domain is a field for "convenience". Maybe this is related to the above.
In any case, we certainly cannot decide whether an element is zero or not.
Martin