Oscar.jl icon indicating copy to clipboard operation
Oscar.jl copied to clipboard

Weil divisors

Open HechtiDerLachs opened this issue 2 years ago • 3 comments

First step towards computation of linear systems on covered schemes.

  • Introduces sheaves of ideals on covered schemes.
  • Introduces Weil divisors on covered schemes.
  • Introduces a prototype for linear systems of divisors.
  • First methods to compute subsystems.

Note: This also contains an additional feature for MPolyQuoIdeals: A hacky check for primality is introduced. To this end, I made that struct attributable. Please intervene, if you disagree! And it would be nice if someone with more insight rewrote that method more thoroughly. I will eventually open an issue for that.

To be evaluated by @simonbrandhorst .

HechtiDerLachs avatar Sep 30 '22 14:09 HechtiDerLachs

If the WeilDivisor would be implemented like the IdealSheaf, there would be no need for the copy method. By this I mean that as mathematical objects they are immutable and to create a new one, one first creates the new dictionary and then from this the new object.

This is not only about style, but also important in the following situation. It might be that at some point WeilDivisor gets more properties that would need to be updated once the underlying dictionary is changed. But this gets very fiddly and is in general annoying for developers.

thofma avatar Sep 30 '22 14:09 thofma

I am sorry to not have marked this PR as a draft from the beginning. Either way, I think your comments so far will be very helpful.

HechtiDerLachs avatar Sep 30 '22 17:09 HechtiDerLachs

Please make a separate pull request dealing with ideal sheaves. It will be easier to review for me.

simonbrandhorst avatar Sep 30 '22 19:09 simonbrandhorst