Opened 3 years ago
Closed 2 years ago
#20308 closed enhancement (fixed)
Generic zeta function method for schemes
Reported by:  kedlaya  Owned by:  

Priority:  minor  Milestone:  sage8.1 
Component:  algebraic geometry  Keywords:  zeta function, scheme, finite field, sd87 
Cc:  Merged in:  
Authors:  Ben Hutz  Reviewers:  David Ayotte 
Report Upstream:  N/A  Work issues:  
Branch:  d47998c (Commits)  Commit:  d47998cbe6316478873257856cd5009ac674a074 
Dependencies:  Stopgaps: 
Description (last modified by )
Currently there is a generic method zeta_series for schemes over a finite field, but not zeta_function. It would be useful to have the latter so that zeta_series could invoke it when it is implemented (which hopefully will happen for hyperelliptic curves soon).
At the same time, also make zeta_series work over nonprime fields.
Change History (17)
comment:1 Changed 2 years ago by
 Branch set to public/20308
 Commit set to d6e70dbeae70a9d2e03a7a973e9d0fa42ce4d66b
comment:2 Changed 2 years ago by
 Keywords sd87 added
comment:3 followup: ↓ 6 Changed 2 years ago by
 Status changed from new to needs_info
It's not clear to me what the goal here is. The initial code seems to be using the zeta_function call to try and compute the zeta series as opposed to trying to compute zeta functions for generic schemes. So, are we improving zeta series or trying to make a generic .zeta_function()?? The later seems daunting...
I've improved the zeta_series code to allow for nonprime base fields.
comment:4 Changed 2 years ago by
 Branch changed from public/20308 to u/bhutz/20308
 Commit changed from d6e70dbeae70a9d2e03a7a973e9d0fa42ce4d66b to 5e776a6c202afcc67e74d554694e648e541868bd
New commits:
5e776a6  20308: improve zeta series for generic schemes

comment:5 Changed 2 years ago by
Sorry, am on vacation this week and hence unable to participate in sd87, but I can still clarify what I had in mind here!
What I had in mind is that the generic .zeta_function() returns a NotImplementedError?. Then the generic .zeta_series() method would check for the existence of a .zeta_function() method, and if present would call it and convert the rational function into a power series instead of falling back to manually counting points.
comment:6 in reply to: ↑ 3 Changed 2 years ago by
Replying to bhutz:
It's not clear to me what the goal here is. The initial code seems to be using the zeta_function call to try and compute the zeta series as opposed to trying to compute zeta functions for generic schemes. So, are we improving zeta series or trying to make a generic .zeta_function()?? The later seems daunting...
I've improved the zeta_series code to allow for nonprime base fields.
That is an important improvement, but it is actually separate from the issue I had in mind. Maybe we should create a new ticket and put this patch there instead?
comment:7 Changed 2 years ago by
 Commit changed from 5e776a6c202afcc67e74d554694e648e541868bd to 280e260e4d79fa1a40ab61ff0583423cb78334bd
Branch pushed to git repo; I updated commit sha1. New commits:
280e260  20308: add generic zeta_function()

comment:8 followup: ↓ 10 Changed 2 years ago by
 Milestone changed from sage7.2 to sage8.1
 Priority changed from major to minor
 Status changed from needs_info to needs_review
ok, that is certainly reasonable to do. I've added the generic function and put my doc test is the right place.
My zeta_series improvement is such a minor change and related to the original functionality, I'm fine with leaving it as part of this ticket. Perhaps we should make a slight change to the ticket description to include improving zeta_series in the generic case?
comment:9 Changed 2 years ago by
 Commit changed from 280e260e4d79fa1a40ab61ff0583423cb78334bd to 7f1bfec0929016db4550f68db54a4b1b0801eda3
Branch pushed to git repo; I updated commit sha1. New commits:
7f1bfec  20308: fix typo

comment:10 in reply to: ↑ 8 Changed 2 years ago by
 Description modified (diff)
Replying to bhutz:
ok, that is certainly reasonable to do. I've added the generic function and put my doc test is the right place.
My zeta_series improvement is such a minor change and related to the original functionality, I'm fine with leaving it as part of this ticket. Perhaps we should make a slight change to the ticket description to include improving zeta_series in the generic case?
Changed the description accordingly. Unfortunately I won't be able to review this before the end of the week, but all the better if someone else can do it...
comment:11 Changed 2 years ago by
Everything seems right. I ran the doctest and all test passed. For some reason I had difficulty generating the reference manual, but the problem doesn't seems to come from this ticket. I got this error :
Error building the documentation. Traceback (most recent call last): File "/projects/da1818ed996d4de6acc6361415b7725d/Src/sagedavid.ayotte/SageMath/local/lib/python2.7/runpy.py", line 174, in _run_module_as_main "__main__", fname, loader, pkg_name) File "/projects/da1818ed996d4de6acc6361415b7725d/Src/sagedavid.ayotte/SageMath/local/lib/python2.7/runpy.py", line 72, in _run_code exec code in run_globals File "/projects/da1818ed996d4de6acc6361415b7725d/Src/sagedavid.ayotte/SageMath/local/lib/python2.7/sitepackages/sage_setup/docbuild/__main__.py", line 2, in <module> main() File "/projects/da1818ed996d4de6acc6361415b7725d/Src/sagedavid.ayotte/SageMath/local/lib/python2.7/sitepackages/sage_setup/docbuild/__init__.py", line 1642, in main builder() File "/projects/da1818ed996d4de6acc6361415b7725d/Src/sagedavid.ayotte/SageMath/local/lib/python2.7/sitepackages/sage_setup/docbuild/__init__.py", line 720, in _wrapper getattr(DocBuilder, build_type)(self, *args, **kwds) File "/projects/da1818ed996d4de6acc6361415b7725d/Src/sagedavid.ayotte/SageMath/local/lib/python2.7/sitepackages/sage_setup/docbuild/__init__.py", line 104, in f runsphinx() File "/projects/da1818ed996d4de6acc6361415b7725d/Src/sagedavid.ayotte/SageMath/local/lib/python2.7/sitepackages/sage_setup/docbuild/sphinxbuild.py", line 215, in runsphinx raise exception OSError: [schemes ] /projects/da1818ed996d4de6acc6361415b7725d/Src/sagedavid.ayotte/SageMath/local/lib/python2.7/sitepackages/sage/schemes/affine/affine_space.py:docstring of sage.schemes.affine.affine_space.AffineSpace_field.points_of_bounded_height:4: WARNING: citation not found: DoyleKrumm
comment:12 Changed 2 years ago by
 Commit changed from 7f1bfec0929016db4550f68db54a4b1b0801eda3 to d47998cbe6316478873257856cd5009ac674a074
Branch pushed to git repo; I updated commit sha1. New commits:
d47998c  20308: add OUTPUT to zeta_function

comment:13 Changed 2 years ago by
make docclean make doc
is able to build all docs.
comment:14 Changed 2 years ago by
 Status changed from needs_review to positive_review
comment:15 Changed 2 years ago by
 Status changed from positive_review to needs_work
Reviewer name...
comment:16 Changed 2 years ago by
 Reviewers set to David Ayotte
 Status changed from needs_work to positive_review
comment:17 Changed 2 years ago by
 Branch changed from u/bhutz/20308 to d47998cbe6316478873257856cd5009ac674a074
 Resolution set to fixed
 Status changed from positive_review to closed
Here is a tentative
New commits:
using zeta_function to compute zeta_series if possible