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

Elliptic surfaces fixes #4177

Merged

Conversation

HechtiDerLachs
Copy link
Collaborator

  • Fixes a bug in inherit_decomposition_info!
  • Repairs in has_dim_leq_zero
  • Disables some superfluous internal check for the elliptic surfaces.

Copy link

codecov bot commented Oct 4, 2024

Codecov Report

Attention: Patch coverage is 47.61905% with 22 lines in your changes missing coverage. Please review.

Project coverage is 84.58%. Comparing base (78da753) to head (03df499).
Report is 6 commits behind head on master.

Files with missing lines Patch % Lines
experimental/Schemes/src/elliptic_surface.jl 35.00% 13 Missing ⚠️
.../AlgebraicGeometry/Schemes/Divisors/base_change.jl 0.00% 7 Missing ⚠️
...aicGeometry/Schemes/Covering/Objects/Attributes.jl 77.77% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #4177      +/-   ##
==========================================
- Coverage   84.59%   84.58%   -0.01%     
==========================================
  Files         631      631              
  Lines       84813    84826      +13     
==========================================
+ Hits        71747    71754       +7     
- Misses      13066    13072       +6     
Files with missing lines Coverage Δ
experimental/Schemes/src/BlowupMorphism.jl 84.75% <100.00%> (+0.05%) ⬆️
...gebraicGeometry/Schemes/Sheaves/CoherentSheaves.jl 80.80% <ø> (+1.60%) ⬆️
.../AlgebraicGeometry/Schemes/Sheaves/IdealSheaves.jl 80.60% <100.00%> (+0.06%) ⬆️
...aicGeometry/Schemes/Covering/Objects/Attributes.jl 94.64% <77.77%> (-3.44%) ⬇️
.../AlgebraicGeometry/Schemes/Divisors/base_change.jl 0.00% <0.00%> (ø)
experimental/Schemes/src/elliptic_surface.jl 85.57% <35.00%> (-0.66%) ⬇️

... and 4 files with indirect coverage changes

src/AlgebraicGeometry/Schemes/Sheaves/IdealSheaves.jl Outdated Show resolved Hide resolved
Comment on lines 110 to 111
V_ref = [(U, (UV, h)) for (U, (UV, h)) in decomp_dict if UV === V]
_compl(a) = sum(length(lifted_numerator(b)) + length(lifted_denominator(b)) for b in a[2][2]; init=0)
Copy link
Member

Choose a reason for hiding this comment

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

A minor and purely optional nitpick (feel free to ignore):

So UV is always V. So why not do this?

Suggested change
V_ref = [(U, (UV, h)) for (U, (UV, h)) in decomp_dict if UV === V]
_compl(a) = sum(length(lifted_numerator(b)) + length(lifted_denominator(b)) for b in a[2][2]; init=0)
V_ref = [(U, h) for (U, (UV, h)) in decomp_dict if UV === V]
_compl(a) = sum(length(lifted_numerator(b)) + length(lifted_denominator(b)) for b in a[2]; init=0)

and then the for loop in line 115 can be slightly simplified, and also line 120.

This avoids a little bit of storage space for those tuples.

Anyway, perhaps you have a reason for having it as it is (e.g. plans for further changes, keeping the code similar to something else etc.) -- so as I said, feel free to ignore.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

This makes sense. I just cluttered it together so that it would work for the moment. Thanks for the close look.

@@ -1649,6 +1649,19 @@ function extended_ade(ADE::Symbol, n::Int)
return -G, kernel(G; side = :left)
end

# This function allows to store a reduction map to positive characteristic,
# e.g. for computing intersection numbers.
function reduction_to_pos_char(X::EllipticSurface, red_map::Map)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Should we turn this into a field of EllipticSurface?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Let's discuss this in #4183 .

@@ -784,19 +784,6 @@ end
return C
end

function inherit_decomposition_info!(C::Covering, X::AbsCoveredScheme)
Copy link
Collaborator

Choose a reason for hiding this comment

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

why remove this? Was it a duplicate?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Yes. And it was wrong. Fortunately, it seemed to be used nowhere.

@@ -345,7 +345,6 @@ end
end

@attr Bool function has_dimension_leq_zero(I::Ideal)
is_one(I) && return true
Copy link
Collaborator

Choose a reason for hiding this comment

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

Why remove this line?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

It's superfluous. It's usually not easier to compute this than the dimension. Both are the same Groebner basis computation.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Yep. Is the GB stored? Or could it be that it is discarded and just the is_one attribute is true?

@afkafkafk13 afkafkafk13 merged commit 4d1d833 into oscar-system:master Oct 8, 2024
29 checks passed
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.

4 participants