#8327: Implement the universal cyclotomic field, using Zumbroich basis
-----------------------------+----------------------------------------------
Reporter: nthiery | Owner: davidloeffler
Type: enhancement | Status: new
Priority: major | Milestone:
Component: number fields | Keywords: Cyclotomic field, Zumbroich basis
Author: | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
-----------------------------+----------------------------------------------
Here is a user story for this feature.
We construct the universal cyclotomic field::
{{{
sage: F = CyclotomicField()
}}}
This field contains all roots of unity:
{{{
sage: z3 = F.zeta(3)
sage: z3
E(3)
sage: z3^3
1
sage: z5 = F.zeta(5)
sage: z5
E(5)
sage: z5^5
1
}}}
It comes equipped with a distinguished basis, called the Zumbroich
basis, which consists of a strict subset of all roots of unity::
{{{
sage: z9 = F.zeta(9)
-E(9)^4-E(9)^7
sage: z3 * z5
sage: E(15)^8
sage: z3 + z5
-E(15)^2-2*E(15)^8-E(15)^11-E(15)^13-E(15)^14
sage: [z9^i for i in range(0,9)]
[1, -E(9)^4-E(9)^7, E(9)^2, E(3), E(9)^4, E(9)^5, E(3)^2, E(9)^7,
-E(9)^2-E(9)^5 ]
}}}
Note: we might want some other style of pretty printing.
The following is called AsRootOfUnity in Chevie; we might want instead
to use (z1*z3).multiplicative_order()::
{{{
sage: (z1*z3).as_root_of_unity()
11/18
}}}
Depending on the progress on #6391 (lib gap), we might want to
implement this directly in Sage or to instead expose GAP's
implementation, creating elements as in::
{{{
sage: z5 = gap("E(5)")
sage: z3 = gap("E(3)")
sage: z3+z5
-E(15)^2-2*E(15)^8-E(15)^11-E(15)^13-E(15)^14
}}}
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8327>
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.