#20930 closed enhancement (fixed)

Generalize multiplicity() and intersection_multiplicity() for subschemes

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: 7801dcc (Commits) Commit: 7801dcc6598fae3ef8cbbf20f7d07b78430a108a
Dependencies: Stopgaps:

Description (last modified by gjorgenson)

Currently there is a multiplicity() function for algebraic curves which computes the multiplicity of a point on a curve as the multiplicity of the maximal ideal in the local ring of the curve corresponding to that point. This definition still works for arbitrary projective/affine subschemes and it would be good to implement it in the more general case.

Also, by using affine patches, it is possible to compute multiplicities and intersection multiplicities of points of subschemes of products of projective spaces, so it would be good to implement that here as well.

These implementations should be made available to both the subscheme classes and corresponding point classes.

Change History (9)

comment:1 Changed 17 months ago by gjorgenson

  • Branch set to u/gjorgenson/ticket/20930

comment:2 Changed 17 months ago by git

  • Commit set to 2ca3713691a83889f9ecbd23382cf2e89ffede24

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

2ca371320930: function implementations.

comment:3 Changed 17 months ago by git

  • Commit changed from 2ca3713691a83889f9ecbd23382cf2e89ffede24 to a655e09cec3ca127364d471d3c71ffab04122eea

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

1a00e8420930: merge with 7.3 beta7
a655e0920930: added is ambient space check for point functions

comment:4 Changed 17 months ago by gjorgenson

  • Description modified (diff)
  • Status changed from new to needs_review

I had forgotten that intersection_multiplicity functions were already implemented for points in #20811. I merged with 7.3 beta7 and added checks to give nicer errors if multiplicity or intersection_multiplicity are called for an ambient space point.

comment:5 Changed 16 months ago by bhutz

  • Reviewers set to Ben Hutz
  • Status changed from needs_review to needs_work

I see just a couple minor things here.

In the descriptions: It is the multiplicity of the point, not the subscheme. For example 'Return the multiplicity of the codomain of this point at this point.' would be better as 'Return the multiplicity of this point in its codomain.' This occurs in a number of places.

Also, the example I tried in 20811 which you used here was actually not quite what I had in mind. It is better with

G = PP.subscheme([(x^2 - 2*y^2)*v - y^2*u])

then you can (and should) describe it as finding the fixed points of z^2-2.

comment:6 Changed 16 months ago by git

  • Commit changed from a655e09cec3ca127364d471d3c71ffab04122eea to 7801dcc6598fae3ef8cbbf20f7d07b78430a108a

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

7801dcc20930: doc fixes

comment:7 Changed 16 months ago by gjorgenson

  • Status changed from needs_work to needs_review

Thanks, made the changes. I also modified the example slightly to use the map z^2 + 1/4 to test what happens for a double fixed point.

comment:8 Changed 16 months ago by bhutz

  • Status changed from needs_review to positive_review

comment:9 Changed 16 months ago by vbraun

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