Skip to content
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

Grading + caching for affine algebra of torus invariants #3469

Merged
merged 4 commits into from
Feb 29, 2024

Conversation

Lax202
Copy link
Contributor

@Lax202 Lax202 commented Feb 29, 2024

No description provided.

z.fundamental = torus_invariants_fast(weights(R), polynomial_ring(z))
return z.fundamental
end
@attr function fundamental_invariants(z::TorGrpInvRing)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
@attr function fundamental_invariants(z::TorGrpInvRing)
@attr SomeType function fundamental_invariants(z::TorGrpInvRing)

Please add the return type here to make the attribute lookup type stable

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know what type to use here other than Vector{MPolyRingElem} or Vector{MPolyDecRingElem} - which are not concrete types.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Faced the same issue with the other file - InvariantTheory.jl

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's true. In most other places, we would add the field type as a type parameter to the invariant ring, which would then allow something smarter here.
But I think this is out of scope for this PR.

@fingolfin can you keep this in mind for some future refactoring?

This comment was marked as outdated.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, I typed to slow. We can keep this here as is and I look into it in #3442.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@lgoettgens sure, I actually had pointed out the same issue on a prior PR. We'll get there eventually ;-)

@@ -399,10 +392,14 @@ julia> affine_algebra(RT)
(Quotient of multivariate polynomial ring by ideal (-t[1]*t[3] + t[2]^2), Hom: quotient of multivariate polynomial ring -> graded multivariate polynomial ring)
```
"""
function affine_algebra(R::TorGrpInvRing)
@attr function affine_algebra(R::TorGrpInvRing)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
@attr function affine_algebra(R::TorGrpInvRing)
@attr SomeType function affine_algebra(R::TorGrpInvRing)

Here as well

Copy link
Member

@joschmitt joschmitt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, I try to handle the return type business later.

@wdecker wdecker added the backport 1.0.x Should be backported to the release 1.0 branch label Feb 29, 2024
@joschmitt
Copy link
Member

The doctest needs to be adjusted: The return type of fundamental_invariants is now more precise.

@aaruni96 aaruni96 mentioned this pull request Feb 29, 2024
31 tasks
@benlorenz benlorenz merged commit b6f11d0 into oscar-system:master Feb 29, 2024
22 of 23 checks passed
benlorenz pushed a commit that referenced this pull request Feb 29, 2024
* TorGrpInvRing to attributes, added test for affine_algebra for tori

* graded affine algebra ring

* fix to doctest

(cherry picked from commit b6f11d0)
@benlorenz benlorenz removed the backport 1.0.x Should be backported to the release 1.0 branch label Feb 29, 2024
benlorenz added a commit that referenced this pull request Feb 29, 2024
- 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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants