#8821: Adding a section on coercion to the tutorial (guided tour)
-----------------------------+----------------------------------------------
Reporter: SimonKing | Owner: mvngu
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-4.4.4
Component: documentation | Keywords: tutorial coercion
Author: Simon King | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
-----------------------------+----------------------------------------------
Comment(by jhpalmieri):
Replying to [comment:13 leif]:
> If you want to have fun, compare this description to that in
[http://wstein.org/papers/icms/icms_2010.pdf William's and Burcin's recent
paper] (page 12)... ;-)
>
> (Reading that, one would think ''every'' coercion in Sage is a type
> '''promotion'''. "only from exact to inexact" suggests the opposite,
type '''demotion''', and does, e.g., not include
{{{QQ.has_coerce_map_from(ZZ)}}}, where I'd consider {{{ZZ}}} the [more]
"inexact" domain.)
ZZ and QQ are equally exact: any element of them can be represented
exactly on a computer. Because of the presence of some transcendental
numbers with no exact representation, RR is inherently inexact: when you
work in RR, you're only working up to some level of precision.
Reading p. 12 of the Stein-Erocal paper, I would think that every coercion
comes from an embedding, but this is not true. Every coercion should come
from a mathematically canonical map (like mapping Z to any ring, or the
inclusion of Q into R). Thinking about it mathematically makes sense to
me, and I think this is the whole point.
Also, remember that a document like the Sage tutorial is aimed to a large
degree at mathematicians and math students (and other "consumers" of
mathematics), moreso than to people with a computer science focus. So
focusing on types, etc., is not appropriate.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8821#comment:14>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.