-
-
Notifications
You must be signed in to change notification settings - Fork 701
Description
This patch provides the universal cyclotomic field
sage: UCF.<E> = UniversalCyclotomicField(); UCF
Universal Cyclotomic Field endowed with the Zumbroich basis
in sage. This field is the smallest field extension of QQ which contains all roots of unity.
sage: E(3); E(3)^3
E(3)
1
sage: E(6); E(6)^2; E(6)^3; E(6)^6
-E(3)^2
E(3)
-1
1
It comes equipped with a distinguished basis, called the Zumbroich
basis, which gives, for any n, A basis of QQ( E(n) ) over QQ, where (n,k) stands for E(n)^k.
sage: UCF.zumbroich_basis(6)
[(6, 2), (6, 4)]
As seen for E(6), every element in UCF is expressed in terms of the smallest cyclotomic field in which it is contained.
sage: E(6)*E(4)
-E(12)^11
It provides arithmetics on UCF as addition, multiplication, and inverses:
sage: E(3)+E(4)
E(12)^4 - E(12)^7 - E(12)^11
sage: E(3)*E(4)
E(12)^7
sage: (E(3)+E(4)).inverse()
E(12)^4 + E(12)^8 + E(12)^11
sage: (E(3)+E(4))*(E(3)+E(4)).inverse()
1
And also things like Galois conjugates.
sage: (E(3)+E(4)).galois_conjugates()
[E(12)^4 - E(12)^7 - E(12)^11, -E(12)^7 + E(12)^8 - E(12)^11, E(12)^4 + E(12)^7 + E(12)^11, E(12)^7 + E(12)^8 + E(12)^11]
The ticket does not use the gap interface.
Depends on #13765
CC: @sagetrac-sage-combinat @sagetrac-cwitty
Component: number fields
Keywords: Cyclotomic field, Zumbroich basis
Author: Christian Stump, Simon King
Reviewer: Frédéric Chapoton
Merged: sage-5.7.beta3
Issue created by migration from https://trac.sagemath.org/ticket/8327