Opened 12 months ago

Last modified 9 months ago

#26195 closed enhancement

Tate algebras — at Version 53

Reported by: caruso Owned by:
Priority: major Milestone: sage-8.5
Component: padics Keywords:
Cc: TristanVaccon, gh-ThibautVerron, caruso, roed Merged in:
Authors: Xavier Caruso, Thibaut Verron Reviewers:
Report Upstream: N/A Work issues:
Branch: u/caruso/tate_algebras (Commits) Commit: 408512dee2f068e87131cf118b59ffb52882bd2e
Dependencies: Stopgaps:

Description (last modified by caruso)

This ticket implements Tate algebras over complete discrete valuation rings/fields, together with Gröbner bases for ideals in these algebras.

See the documentation of sage.rings.tate_algebra for details.

Change History (53)

comment:1 Changed 12 months ago by caruso

  • Branch set to u/caruso/tate_algebras

comment:2 Changed 12 months ago by gh-ThibautVerron

  • Branch changed from u/caruso/tate_algebras to u/gh-ThibautVerron/TateAlgebras
  • Commit set to b8a6ac3ef7ac5f8608e1ff30beb59ced9b85c357

comment:3 Changed 12 months ago by caruso

  • Branch changed from u/gh-ThibautVerron/TateAlgebras to u/caruso/TateAlgebras

comment:4 Changed 12 months ago by git

  • Commit changed from b8a6ac3ef7ac5f8608e1ff30beb59ced9b85c357 to 9ca2244a01a165e24431e9d58acf5054484d0cb3

Branch pushed to git repo; I updated commit sha1. New commits:

9ca2244First working version

comment:5 Changed 12 months ago by git

  • Commit changed from 9ca2244a01a165e24431e9d58acf5054484d0cb3 to 05cf0414d5afae999fdc1f8000075571d9accd52

Branch pushed to git repo; I updated commit sha1. New commits:

05cf041Restriction + small fix in inverse_of_unit

comment:6 Changed 12 months ago by git

  • Commit changed from 05cf0414d5afae999fdc1f8000075571d9accd52 to 5d0e354ec45b362282840aa32d2b4cbd0856285f

Branch pushed to git repo; I updated commit sha1. New commits:

5d0e354Fix bugs in quo_rem

comment:7 Changed 12 months ago by caruso

  • Cc TristanVaccon added; vaccon removed

comment:8 Changed 12 months ago by gh-ThibautVerron

  • Branch changed from u/caruso/TateAlgebras to u/gh-ThibautVerron/tate_algebras
  • Commit changed from 5d0e354ec45b362282840aa32d2b4cbd0856285f to 5abdb64bf364a1459e1b8e771219274fe1e35172

New commits:

fa4e37aFirst docstring
5abdb64Merge branch 'u/caruso/TateAlgebras' of git://trac.sagemath.org/sage into t/26195/TateAlgebras

comment:9 Changed 12 months ago by caruso

  • Branch changed from u/gh-ThibautVerron/tate_algebras to u/caruso/tate_algebras

comment:10 Changed 12 months ago by gh-ThibautVerron

  • Branch changed from u/caruso/tate_algebras to u/gh-ThibautVerron/tate_algebras

comment:11 Changed 12 months ago by git

  • Commit changed from 5abdb64bf364a1459e1b8e771219274fe1e35172 to 78003937e854ba0699ec507d41cd41f7e81d2af8

Branch pushed to git repo; I updated commit sha1. New commits:

7800393Revert changes to .dir-locals.el

comment:12 Changed 12 months ago by git

  • Commit changed from 78003937e854ba0699ec507d41cd41f7e81d2af8 to 2383ba0acfb017721ec55ac44d790f0a1aba81f9

Branch pushed to git repo; I updated commit sha1. New commits:

2383ba0Fixed tests

comment:13 Changed 12 months ago by caruso

  • Cc caruso added

comment:14 Changed 12 months ago by caruso

  • Branch changed from u/gh-ThibautVerron/tate_algebras to u/caruso/tate_algebras

comment:15 Changed 12 months ago by git

  • Commit changed from 2383ba0acfb017721ec55ac44d790f0a1aba81f9 to 8446736d3e9bb14d60b6688f8d258f8a47cb66f6

Branch pushed to git repo; I updated commit sha1. New commits:

8446736Bug fixed in TateAlgebraTerms & more functionalities for ideals

comment:16 Changed 12 months ago by caruso

  • Description modified (diff)

comment:17 Changed 12 months ago by caruso

  • Description modified (diff)

comment:18 Changed 12 months ago by git

  • Commit changed from 8446736d3e9bb14d60b6688f8d258f8a47cb66f6 to fd3bf7b662acc0cebe91f963a8c9057604e69cda

Branch pushed to git repo; I updated commit sha1. New commits:

fd3bf7bSome improvements in Buchberger algorithm

comment:19 Changed 12 months ago by git

  • Commit changed from fd3bf7b662acc0cebe91f963a8c9057604e69cda to bfddf6e4dc8670551fd94ae87d4d330890d1b934

Branch pushed to git repo; I updated commit sha1. New commits:

bfddf6eRewrite in cython

comment:20 Changed 11 months ago by git

  • Commit changed from bfddf6e4dc8670551fd94ae87d4d330890d1b934 to bc7c7637e5d43c612a4137747b1d2d9d2b58d699

Branch pushed to git repo; I updated commit sha1. New commits:

bc7c763Better (?) choice of ordering of S-polynomials

comment:21 Changed 11 months ago by gh-ThibautVerron

  • Branch changed from u/caruso/tate_algebras to u/gh-ThibautVerron/tate_algebras

comment:22 Changed 11 months ago by caruso

  • Branch changed from u/gh-ThibautVerron/tate_algebras to u/caruso/tate_algebras

comment:23 Changed 11 months ago by git

  • Commit changed from bc7c7637e5d43c612a4137747b1d2d9d2b58d699 to b00b8e042c46adde4d0887feb0394293eee50f13

Branch pushed to git repo; I updated commit sha1. New commits:

b00b8e0Use directly the cython class PolyDict

comment:24 Changed 11 months ago by git

  • Commit changed from b00b8e042c46adde4d0887feb0394293eee50f13 to 100cbb727e64017ae940f5c4612a646092c1215a

Branch pushed to git repo; I updated commit sha1. New commits:

100cbb7Fix bug in creation of elements in Tate algebras

comment:25 Changed 11 months ago by gh-ThibautVerron

  • Branch changed from u/caruso/tate_algebras to u/gh-ThibautVerron/tate_algebras

comment:26 Changed 11 months ago by caruso

  • Branch changed from u/gh-ThibautVerron/tate_algebras to u/caruso/tate_algebras

comment:27 Changed 11 months ago by git

  • Commit changed from 100cbb727e64017ae940f5c4612a646092c1215a to 0f6391a172c79ac5620b32f1e323e407ee135016

Branch pushed to git repo; I updated commit sha1. New commits:

0f6391af.residue() now returns a polynomial over the residue field

comment:28 Changed 11 months ago by gh-ThibautVerron

  • Branch changed from u/caruso/tate_algebras to u/gh-ThibautVerron/tate_algebras

comment:29 Changed 11 months ago by git

  • Commit changed from 0f6391a172c79ac5620b32f1e323e407ee135016 to a5b9d368190ce600023393f846a43918cd9533fb

Branch pushed to git repo; I updated commit sha1. New commits:

a5b9d36Partial documentation of Tate algebra term elements

comment:30 Changed 11 months ago by caruso

  • Branch changed from u/gh-ThibautVerron/tate_algebras to u/caruso/tate_algebras

comment:31 Changed 11 months ago by git

  • Commit changed from a5b9d368190ce600023393f846a43918cd9533fb to cfc09d771fab2b7abb49f130913668324969602f

Branch pushed to git repo; I updated commit sha1. New commits:

fc5d3c4Implement rich comparison for terms
cfc09d7Implement monomials() and leading_monomial()

comment:32 Changed 11 months ago by git

  • Commit changed from cfc09d771fab2b7abb49f130913668324969602f to 7c2ac0bc86198f09c364c5151a275f3ad08dcc9c

Branch pushed to git repo; I updated commit sha1. New commits:

7c2ac0bImplement a factory

comment:33 Changed 11 months ago by gh-ThibautVerron

  • Branch changed from u/caruso/tate_algebras to u/gh-ThibautVerron/tate_algebras

comment:34 Changed 11 months ago by git

  • Commit changed from 7c2ac0bc86198f09c364c5151a275f3ad08dcc9c to 2a4044c42980e116e157de9749237f83b08e8058

Branch pushed to git repo; I updated commit sha1. New commits:

2a4044cDocumentation for Tate terms

comment:35 Changed 11 months ago by git

  • Commit changed from 2a4044c42980e116e157de9749237f83b08e8058 to 892c63163df8a1bd0805e6d0e593ac46103ce27d

Branch pushed to git repo; I updated commit sha1. New commits:

439bb96Behavior for rings
0cf12c1Minor changes to docstrings for tests
892c631Fixed some doctests

comment:36 Changed 11 months ago by git

  • Commit changed from 892c63163df8a1bd0805e6d0e593ac46103ce27d to d10fca9e1b2d78e7ce7c9403a272cfd2a93cb31c

Branch pushed to git repo; I updated commit sha1. New commits:

d10fca9Doctest for TateAlgebraElement __init__

comment:37 Changed 11 months ago by caruso

  • Branch changed from u/gh-ThibautVerron/tate_algebras to u/caruso/tate_algebras

comment:38 Changed 11 months ago by git

  • Commit changed from d10fca9e1b2d78e7ce7c9403a272cfd2a93cb31c to 0a49fbb4679a41a7c0a2595bae43ca291516f5a4

Branch pushed to git repo; I updated commit sha1. New commits:

7d6d030Simplify doctests for Tate terms
0a49fbbFix doctest

comment:39 Changed 11 months ago by git

  • Commit changed from 0a49fbb4679a41a7c0a2595bae43ca291516f5a4 to 0576cde54aa26aa7af7d8e2edd68b1c51f4946ba

Branch pushed to git repo; I updated commit sha1. New commits:

0576cdeShorten doctests

comment:40 Changed 11 months ago by git

  • Commit changed from 0576cde54aa26aa7af7d8e2edd68b1c51f4946ba to 53c7ed32c004b8177a5991c7e2d7ea3e160f8119

Branch pushed to git repo; I updated commit sha1. New commits:

53c7ed3Typo

comment:41 Changed 11 months ago by git

  • Commit changed from 53c7ed32c004b8177a5991c7e2d7ea3e160f8119 to fa9b86b913d1526120c1956cb3848798331598eb

Branch pushed to git repo; I updated commit sha1. New commits:

fa9b86bMerge branch 'develop' into t/26195/tate_algebras

comment:42 Changed 11 months ago by gh-ThibautVerron

  • Branch changed from u/caruso/tate_algebras to u/gh-ThibautVerron/tate_algebras

comment:43 Changed 11 months ago by git

  • Commit changed from fa9b86b913d1526120c1956cb3848798331598eb to ef8799f583ef84cadbcec3226b9691ea1b5d3f9b

Branch pushed to git repo; I updated commit sha1. New commits:

ef8799fPartial documentation for the Tate algebra monoid class

comment:44 Changed 11 months ago by git

  • Commit changed from ef8799f583ef84cadbcec3226b9691ea1b5d3f9b to 44ba97030b04cbc846ab44897b6185bbfa90d7ee

Branch pushed to git repo; I updated commit sha1. New commits:

317c782Documentation on Tate terms
44ba970Fixed doctests

comment:45 Changed 11 months ago by caruso

  • Authors set to Xavier Caruso, Thibaut Verron
  • Cc roed added

I cc roed because, David, you might know the answer at the following question.

In this ticket, we have implemented two parents, the first one for the Tate algebra itself and the second one for the monoid of terms of the Tate Algebra. Here is a basic example:

sage: A.<x,y> = TateAlgebra(Zp(2)); A
Tate Algebra in x (val >= 0), y (val >= 0) over 2-adic Field with capped relative precision 20
sage: T = A.monoid_of_terms(); T
Monoid of terms in x (val >= 0), y (val >= 0) over 2-adic Field with capped relative precision 20

We now want to add a method for recovering A (the Tate algebra) from T (the monoid of terms). However a method algebra already exists: it is inherited from sage.categories.sets_cat.Sets and provides a very general construction of an algebra over an arbitrary set. We believe that this general construction is not very relevant in our setting and that T.algebra() should instead output A. So our question is: is it allowed/appropriate to override the method algebra (keeping in mind that it comes from the category machinery)?

In any case, we will create a method tate_algebra but we think that having algebra at the same time (with a different behavior) could be confusing.

Last edited 11 months ago by caruso (previous) (diff)

comment:46 Changed 11 months ago by tscrim

Yes, you are allowed (maybe even encouraged) to override algebra, and in this case, you should because you have a specialized implementation of the algebra.

Also, I want to just point out a common idiom that we've used is to define the monoid of monomials, then use CombinatorialFreeModule and the category of AlgebrasWithBasis to construct the corresponding algebra by implementing product_on_basis. Although this has been known to have some issues with overhead due to the number of indirections (which can be mitigated by directly implementing the multiplication in the element class), and this might not work for what you need.

comment:47 Changed 11 months ago by git

  • Commit changed from 44ba97030b04cbc846ab44897b6185bbfa90d7ee to c559f1487c26ba91644d2fbf83333c66a91c8ac0

Branch pushed to git repo; I updated commit sha1. New commits:

4af77f3Documentation of Buchberger, without examples
cf2afe6Deduplicate coercion + recover parent algebra from monoid of terms
c559f14Documentation of the new function

comment:48 Changed 11 months ago by git

  • Commit changed from c559f1487c26ba91644d2fbf83333c66a91c8ac0 to 298c253bb13e147604e91781f30bf9402fbacae5

Branch pushed to git repo; I updated commit sha1. New commits:

46d8bd1Documentation for ideals
298c253Moved coercion code back in the algebra class

comment:49 Changed 11 months ago by git

  • Commit changed from 298c253bb13e147604e91781f30bf9402fbacae5 to 52b9ad10d6e0b8c8901556090715f9944f594ee5

Branch pushed to git repo; I updated commit sha1. New commits:

52b9ad1Documentation of Buchberger's function

comment:50 Changed 11 months ago by caruso

  • Branch changed from u/gh-ThibautVerron/tate_algebras to u/caruso/tate_algebras

comment:51 Changed 11 months ago by git

  • Commit changed from 52b9ad10d6e0b8c8901556090715f9944f594ee5 to a433e9c22e2a0693a78c851f5b0de615516fd546

Branch pushed to git repo; I updated commit sha1. New commits:

c1acf5cAdd doctest in polydict
af6ddbeAdd licence
66844adAdd tutorial
fc2d6a7Add LaTeX representations
a433e9cAdd evaluation and composition

comment:52 Changed 11 months ago by git

  • Commit changed from a433e9c22e2a0693a78c851f5b0de615516fd546 to 408512dee2f068e87131cf118b59ffb52882bd2e

Branch pushed to git repo; I updated commit sha1. New commits:

408512dNormalize output of groebner_basis

comment:53 Changed 11 months ago by caruso

  • Description modified (diff)
  • Status changed from new to needs_review
Note: See TracTickets for help on using tickets.