Opened 2 years ago
Last modified 2 years ago
#27413 new enhancement
Implement picard group and unit group for non-maximal orders — at Version 4
Reported by: | klui | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-wishlist |
Component: | number fields | Keywords: | class group, unit group, non-maximal order, picard group |
Cc: | Merged in: | ||
Authors: | Reviewers: | ||
Report Upstream: | N/A | Work issues: | |
Branch: | u/klui/implement_picard_group_and_unit_group_for_non_maximal_orders (Commits, GitHub, GitLab) | Commit: | 9d09ebf443058d35ad6f0a9178514b8f44b277fb |
Dependencies: | Stopgaps: |
Description (last modified by )
The goal of this ticket is to compute the unit group (as a subgroup of the unit group of the maximal order) and to compute the picard group (these are useful for isomorphism-testing and isogeny-enumerating of modabvars.) So the goal is to implement the algorithms here: https://math.uni-paderborn.de/fileadmin/mathematik/AG-Computeralgebra/Publications-klueners/picard.pdf . These have already been implemented in Magma (by the authors of the paper, I believe) so we should double-check with the results there.
Non-maximal orders are not well-supported in Sage (Sage uses PARI for maximal orders but PARI does not have non-maximal orders, except for quadratic number fields). For example,
sage: K.<a> = NumberField(x^2-5) sage: O = K.order(a); O.is_maximal() False sage: O.ideal(2) --------------------------------------------------------------------------- NotImplementedError Traceback (most recent call last) <ipython-input-10-8da0cc5ea6ab> in <module>() ----> 1 O.ideal(Integer(2)) /home/klui/sage/local/lib/python2.7/site-packages/sage/rings/number_field/order.pyc in ideal(self, *args, **kwds) 232 """ 233 if not self.is_maximal(): --> 234 raise NotImplementedError("ideals of non-maximal orders not yet supported.") 235 I = self.number_field().ideal(*args, **kwds) 236 if not I.is_integral(): NotImplementedError: ideals of non-maximal orders not yet supported.
So this might be hard.
Github
I've been using Github for version control. See https://github.com/kevinywlui/sage/tree/order for the lastest development.
Change History (4)
comment:1 Changed 2 years ago by
- Component changed from modular forms to number fields
comment:2 Changed 2 years ago by
- Branch set to u/klui/implement_picard_group_and_unit_group_for_non_maximal_orders
comment:3 Changed 2 years ago by
- Commit set to 9d09ebf443058d35ad6f0a9178514b8f44b277fb
comment:4 Changed 2 years ago by
- Description modified (diff)
Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:
Add comments to conductor
Add an OrderIdeal class
Use OrderIdeal as base class of NumberFieldIdeal
Generalize free_module to work for OrderIdeals
Add a README which I will remove at the end
Rename from order_ideal to order_fractional_ideal
Fix a typo
Allow conductor to be returned as ideal of self
Update README to remind to ask sage-nt
Implement richcmp for ideals