Skip to main content

A SageMath package for computing with adèles and idèles over number fields

Project description

This is a SageMath package for computing with adèles and idèles. It is based on and part of the master’s thesis [Her2021].

[Her2021] Mathé Hertogh, Computing with adèles and idèles, master’s thesis, Leiden University, 2021.

In the root of this repository you can find [Her2021] as a PDF-file.

Contents of the package

The package can be seen to consist out of four parts.

Part 1 corresponds to Chapters 3–6 of [Her2021] and provides the functionality to compute with adèles and idèles over number fields. It consists out of these files:

  • profinite_integer.py – profinite integers over number fields

  • profinite_number.py – profinite numbers over number fields

  • completion.py – infinite completions of number fields

  • adele.py – adèles over number fields

  • multiplicative_padic.py – multiplicative p-adics

  • idele.py – idèles over number fields

  • ray_class_group.py - ray class groups of number fields

Part 2 corresponds to Chapter 7 of [Her2021] and implements profinite graphs, which visualize graphs of functions from and to the ring of rational profinite integers. In particular, the profinite Fibonacci function is implemented. Part 2 consists of out two files:

  • profinite_function.py – profinite functions, including Fibonacci

  • profinite_graph.py – graphs of profinite functions

Part 3 corresponds to Chapter 8 of [Her2021] and implements the adèlic matrix factorization algorithms discussed there. This resides in the file:

  • matrix.py – adèlic matrix factorization algorithms

Part 4 corresponds to Chapter 9 of [Her2021] and implements the computation of Hilbert class fields of imaginary quadratic number fields using Shimura’s reciprocity law. It consists of the files:

  • modular.py – modular functions and their actions

  • shimura.py – Shimura’s connecting homomorphism

  • hilbert.py – example hilbert class field computations

Getting acquainted with the package

Instead of browsing through the source code files, we recommend browsing the documentation, which is nicer formatted. It contains many examples to illustrate the functionality.

Documentation

The documentation resides in the folder docs and is also hosted online at the following webpage: https://mathehertogh.github.io/adeles.

Installing the package

First of all you should make sure you have a recent version of SageMath installed, specifically SageMath version 9.2 or newer.

Now run the command

$ sage -pip install adeles

To use the package, from anywhere on your computer, open sage

$ sage

and within the sage prompt, load the package:

sage: from adeles.all import *

Now you will have all functionality available, for example:

sage: Adeles(QQ)
Adèle Ring of Rational Field

Updating the package

To update to the latest stable version of this package, run

$ sage -pip install --upgrade adeles

It might be the case that the GitHub repository https://github.com/mathehertogh/adeles contains an ever newer version. To install that version, clone the repository

$ git clone https://github.com/mathehertogh/adeles.git

change to the root directory of the package

$ cd adeles

and build the package using

$ make

Background information

For more detailed information on this implementation of adèles and idèles, we refer to [Her2021]. There we elaborate on properties of our representations of adèles and idèles, design choices we made and implementation details.

For questions you can contact the author via email (see below).

Project details


Release history Release notifications | RSS feed

This version

1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

adeles-1.tar.gz (102.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

adeles-1-py3-none-any.whl (110.1 kB view details)

Uploaded Python 3

File details

Details for the file adeles-1.tar.gz.

File metadata

  • Download URL: adeles-1.tar.gz
  • Upload date:
  • Size: 102.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.9

File hashes

Hashes for adeles-1.tar.gz
Algorithm Hash digest
SHA256 3d93690f179b229c74b26a4e3b66f6253b7bda55fb9338bb70418281ca501eb9
MD5 600311e139aab3c21d1450dfc10a8518
BLAKE2b-256 51d11bf04a0a02e6a140bf70cb61ee84309c9f76c4f7ae328e0e29875549ae55

See more details on using hashes here.

File details

Details for the file adeles-1-py3-none-any.whl.

File metadata

  • Download URL: adeles-1-py3-none-any.whl
  • Upload date:
  • Size: 110.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.9

File hashes

Hashes for adeles-1-py3-none-any.whl
Algorithm Hash digest
SHA256 e5935e4fa4e8805469c350d1e2b2052fa07674a845ce8c08032c91b2627b1ab7
MD5 88385d8361d7f5cef6cb8ed425bcbd30
BLAKE2b-256 c16b04e3b3341576e17f0ddc8acfcde84e318d60145c2ee01edaa3064911fde8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page