-
Notifications
You must be signed in to change notification settings - Fork 133
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Docu invariants lin. red. groups (Lakshmi Ramesh and Wolfram Decker) #3443
Conversation
…d Wolfram Decker)
What is the status quo here?
|
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## master #3443 +/- ##
==========================================
+ Coverage 81.93% 81.94% +0.01%
==========================================
Files 561 561
Lines 75170 75180 +10
==========================================
+ Hits 61588 61607 +19
+ Misses 13582 13573 -9
|
@doc raw""" | ||
linearly_reductive_group(sym::Symbol, m::Int, R::MPolyRing) | ||
|
||
If `sym` stands for implementing the special linear group, return SL$(m, K)$, where $K$ is the base field |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Similar to above.
function affine_algebra(R::RedGrpInvRing) | ||
V = fundamental_invariants(R) | ||
s = length(V) | ||
S,t = polynomial_ring(field(group(representation(R))), "t"=>1:s) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Assuming the fundamental invariants are homogeneous, we could/should grade this polynomial ring appropriately.
Also, the presentation as affine algebra should be cached in the invariant ring.
This can be filed under "future improvements".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@joschmitt As far as I can see, the ring is NOT graded for finite groups. Or?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is graded:
julia> RG = invariant_ring(matrix_group(QQ[-1 0 ; 0 -1]));
julia> A, AtoR = affine_algebra(RG);
julia> A
Quotient
of multivariate polynomial ring in 3 variables over QQ graded by
y1 -> [2]
y2 -> [2]
y3 -> [2]
by ideal (-y1*y3 + y2^2)
characteristic(fld) == 0 || error("Characteristic should be 0 for linearly reductive groups") | ||
G.field = fld | ||
@req m^2 == ngens(pring) "ring not compatible" | ||
G.group = (sym,m) | ||
G.reynolds_operator = reynolds_slm | ||
M = matrix(pring, m, m, gens(pring)) | ||
M = transpose(matrix(pring, m, m, gens(pring))) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's not a docu change but a change in behavior. Is this covered by a test? What is it fixing?
(Not arguing against this, I have no idea, but I also don't want this to accidentally slip through)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is correct now and fits with what we write in the book.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It also fits with Sturmfels' book.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And, it fits with the Disquisitiones Arithmetica.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As discussed: I am happy to trust you this is correct as in: fits what we document and fits our book.
That it fits other books or papers only is relevant if we establish that they use exact same conventions as we and hence are supposed to give identical results. I had a look at that a few months ago, but I didn't keep my notes, and don't have time to repeat this right now. Anyway, as I already wrote, I am happy to trust you, I just want it to be explicit and not "by oversight" ;-).
BTW, if we verified it fits with the convention in those publications, but does not fit with the conventions in Derksen and Kemper; then I think we should actually point that out in the documentation, perhaps even with an example, as this is of course highly relevant for users of our code. And since we refer to e.g. Derksen/Derksen-Kemper in there, this is doubly important as a user might expect the reverse, or not even be aware of the differences in conventions.
(Ideally we would also state how it compares to Singular and Magma conventions, I guess?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(That's not a blocker for this PR, of course, just something "nice to have")
@fingolfin, @joschmitt: We believe that we adressed all your remarks. Please check. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added one more doctest.
…3443) Co-authored-by: Johannes Schmitt <[email protected]> (cherry picked from commit 73ba787)
- Add QQBar docs to the manual #3423 - do not show the OscarInterface banner #3422 - fix bugs in all_OD_infos #3419 - Ep/ Rename Spec to AffineScheme #3345 #3425 - Remove two mentions of Arb_jll #3431 - Tweak epimorphism_from_free_group #3430 - CI: re-enable nightly #3435 - support gen(G::GAPGroup, 0) #3332 - Align all_*_groups methods some more #3433 - Add all_perfect_groups #3434 - Add all_primitive_groups and all_transitive_groups variants taking a single int or int range #3404 - fix a docstring #3436 - Fixes multivariate division #3396 - Docu invariants tori #3428 - Improve docstrings for is_conjugate/is_conjugate_with_data. #3384 - Fix ambient_module(M::SubquoModule) #3448 - Bugfix for printing of affine schemes #3437 - Bugfix for bugfix for printing of affine schemes #3445 - Update OSCAR banner #3410 - Docu invariants lin. red. groups (Lakshmi Ramesh and Wolfram Decker) #3443 - add od_from_atlas_group, od_from_p_subgroup, and helpers #3444 - Unexport normalise #3453 - support group properties for character tables #3449 - add docstrings for acting_group and action_function #3432 (exports are used in new groups code for the book) - Adjust to renaming of rank(A::FinGenAbGroup) to torsion_free_rank(A::FinGenAbGroup) #3457 - Ensure fp_group(G) transfers group attributes #3464 - Added comment on convention #3467 - Export weierstrass_chart_on_minimal_model and patch transform_to_weierstrass #3458 - Fix a doc signature #3466 - Grading + caching for affine algebra of torus invariants #3469
…d Wolfram Decker)