#20848 closed enhancement (fixed)

Degree and arithmetic genus for projective curves

Reported by: gjorgenson Owned by:
Priority: minor Milestone: sage-7.3
Component: algebraic geometry Keywords: gsoc2016
Cc: bhutz, mmarco Merged in:
Authors: Grayson Jorgenson Reviewers: Ben Hutz
Report Upstream: N/A Work issues:
Branch: 3427412 (Commits) Commit: 3427412f972f676039d7e9a6075f4855e999945f
Dependencies: Stopgaps:

Description

Implement a function to compute the degree of a projective curve, and generalize the existing arithmetic genus computation for projective plane curves to work for arbitrary projective curves.

Change History (19)

comment:1 Changed 11 months ago by gjorgenson

  • Branch set to u/gjorgenson/ticket/20848

comment:2 Changed 11 months ago by git

  • Commit set to 0f962116681a5683ad2db4201dbfe13a4b8540cf

Branch pushed to git repo; I updated commit sha1. New commits:

0f9621120848: first implementation attempt.

comment:3 Changed 11 months ago by gjorgenson

  • Status changed from new to needs_review

comment:4 Changed 11 months ago by mmarco

In the case of plane curves, which genus do we want to assignt to non-reduced curves?

comment:5 Changed 11 months ago by gjorgenson

Oops, I was under the impression that these definitions agreed for arbitrary plane curves. Is the Hilbert polynomial definition still okay for reducible/non-reduced curves? Would it be better to restrict the genus computations to just irreducible curves?

comment:6 Changed 11 months ago by bhutz

I think genus should be restricted to irreducible. The problem is not the difference between plane and not plane curves. You could have a curve with multiple components of different genus

eg: (y-x)(y2-x2-x-1)

comment:7 Changed 11 months ago by gjorgenson

  • Commit changed from 0f962116681a5683ad2db4201dbfe13a4b8540cf to 07e6b720f2cf15bdf9b3ac814e987925c3937d4b

I added an is_irreducible check which checks irreducibility by just counting irreducible components.

The new commit shows up in the log for this ticket but no notification seems to have been generated (I think because of the trac server change).

EDIT: actually the new commit shows up as part of this comment now


New commits:

07e6b7220848: added is_irreducible check
Last edited 11 months ago by gjorgenson (previous) (diff)

comment:8 Changed 11 months ago by bhutz

  • Reviewers set to Ben Hutz
  • Status changed from needs_review to needs_work
  • Just checking the number of components for is_irreducible is not good enough. You're better off checking if the defining ideal is prime.
P.<x,y>=ProjectiveSpace(QQ,1)
X=P.subscheme([x^2])
X.is_irreducible(),X.defining_ideal().is_prime()
  • since the degree is just the dim! times the leading coefficient of HP, why not do it for projective subschemes instead of just curves?
  • Adding an actual REF for Hartshorne would be nice.

comment:9 Changed 11 months ago by gjorgenson

  • Commit changed from 07e6b720f2cf15bdf9b3ac814e987925c3937d4b to f4709f535b1c9b1e8233f73353a8f2e28d1ca1fb
  • Status changed from needs_work to needs_review

Thanks, made the changes.


New commits:

f4709f520848: generalized degree computation, and improved is_irreducible

comment:10 Changed 11 months ago by bhutz

  • Status changed from needs_review to positive_review

comment:11 Changed 11 months ago by vbraun

  • Status changed from positive_review to needs_work

Merge conflict

comment:12 Changed 11 months ago by git

  • Commit changed from f4709f535b1c9b1e8233f73353a8f2e28d1ca1fb to df1faa685c2092d9b04710a3f2fbe23ed423bd3f

Branch pushed to git repo; I updated commit sha1. New commits:

df1faa620848: merge with 7.3 beta5.

comment:13 Changed 11 months ago by gjorgenson

  • Status changed from needs_work to needs_review

comment:14 Changed 11 months ago by bhutz

  • Status changed from needs_review to positive_review

comment:15 Changed 11 months ago by vbraun

  • Status changed from positive_review to needs_work

Merge conflict #20839

comment:16 Changed 11 months ago by git

  • Commit changed from df1faa685c2092d9b04710a3f2fbe23ed423bd3f to 3427412f972f676039d7e9a6075f4855e999945f

Branch pushed to git repo; I updated commit sha1. New commits:

f775a0f20839: first implementation attempt.
e0188ce20839: some changes from review
656472420839: merge with ticket 20774
09eea0220839: some remaining changes from review
4b9ab0a20839: implemented Serre intersection multiplicity for affine/projective subschemes
cae16fe20839: improved is_transverse
342741220848: merge with ticket 20839

comment:17 Changed 11 months ago by gjorgenson

  • Status changed from needs_work to needs_review

Okay I think the conflict with #20839 is fixed now.

comment:18 Changed 11 months ago by bhutz

  • Status changed from needs_review to positive_review

still looks fine for me.

comment:19 Changed 11 months ago by vbraun

  • Branch changed from u/gjorgenson/ticket/20848 to 3427412f972f676039d7e9a6075f4855e999945f
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.