### D.5.11 paraplanecurves_lib

Library:
  paraplanecurves.lib
Purpose:
  Rational parametrization of rational plane curves

Authors:
  J. Boehm, boehm at mathematik.uni-kl.de
  W. Decker, decker at mathematik.uni-kl.de
  S. Laplagne, slaplagn at dm.uba.ar
  F. Seelisch, seelisch at mathematik.uni-kl.de

Overview:
  Suppose C = {f(x,y,z)=0} is a rational plane curve, where f is homogeneous of degree n with coefficients in Q and absolutely irreducible (these conditions are checked automatically.)
  After a first step, realized by a projective automorphism in the procedure adjointIdeal, C satisfies:
  - C does not have singularities at infinity z=0.
  - C does not contain the point (0:1:0) (that is, the dehomogenization of f with respect to z is monic as a polynomial in y).
  Considering C in the chart z<>0, the algorithm regards x as transcendental and y as algebraic and computes an integral basis in C(x)[y] of the integral closure of C[x] in C(x,y) using the normalization algorithm from normal_lib: see integralbasis_lib. In a future edition of the library, also van Hoeij's algorithm for computing the integral basis will be available.
  From the integral basis, the adjoint ideal is obtained by linear algebra. Alternatively, the algorithm starts with a local analysis of the singular locus of C. Then, for each primary component of the singular locus which does not correspond to ordinary multiple points or cusps, the integral basis algorithm is applied separately. The ordinary multiple points and cusps, in turn, are addressed by a straightforward direct algorithm. The adjoint ideal is obtained by intersecting all ideals obtained locally. The local variant of the algorithm is used by default.
  The linear system corresponding to the adjoint ideal maps the curve birationally to a rational normal curve in P^(n-2).
  Iterating the anticanonical map, the algorithm projects the rational normal curve to PP1 for n odd resp. to a conic C2 in PP2 for n even.
  In case n is even, the algorithm tests whether there is a rational point on C2 and if so gives a parametrization of C2 which is defined over Q. Otherwise, the parametrization given is defined over a quadratic field extension of Q.
  By inverting the birational map of C to PP1 resp. to C2, a parametrization of C is obtained (defined over Q or the quadratic field extension).

References:
  Janko Boehm: Parametrisierung rationaler Kurven, Diploma Thesis, http://www.math.uni-sb.de/ag/schreyer/jb/diplom%20janko%20boehm.pdf

  Janko Boehm, Wolfram Decker, Santiago Laplagne, Gerhard Pfister: Local to global algorithms for the Gorenstein adjoint ideal of a curve, Algorithmic and Experimental Methods in Algebra, Geometry, and Number Theory, Springer 2018

  Theo de Jong: An algorithm for computing the integral closure, Journal of Symbolic Computation 26 (3) (1998), p. 273-277

  Gert-Martin Greuel, Santiago Laplagne, Frank Seelisch: Normalization of Rings, Journal of Symbolic Computation 9 (2010), p. 887-901

  Mark van Hoeij: An Algorithm for Computing an Integral Basis in an Algebraic Function Field, Journal of Symbolic Computation 18 (1994), p. 353-363, http://www.math.fsu.edu/~hoeij/papers/comments/jsc1994.html

Procedures:

> D.5.11.1 adjointIdeal |  | Adjoint ideal of a plane curve
> D.5.11.2 invertBirMap |  | Invert a birational map of algebraic varieties
> D.5.11.3 paraPlaneCurve |  | Compute a rational parametrization of a rational plane curve
> D.5.11.4 rncAntiCanonicalMap |  | Anticanonical map of a rational normal curve
> D.5.11.5 rationalPointConic |  | Finds a point on the conic. This point has either coefficients in Q or in a quadratic extension field of Q
> D.5.11.6 mapToRatNormCurve |  | Map a plane rational curve to a rational normal curve (RNC)
> D.5.11.7 rncItProjOdd |  | Map a RNC via successive anticanonical maps to PP1
> D.5.11.8 rncItProjEven |  | Map a RNC via successive anticanonical maps to a conic in PP2
> D.5.11.9 paraConic |  | Compute a rational parametrization of a conic
> D.5.11.10 testParametrization |  | Checks whether a given curve is parametrized by a given rational map (defined in the given ring)
> D.5.11.11 testPointConic |  | Checks whether a given point (defined in the given ring) lies on the given conic.

User manual for Singular version 4.4.1, 2025, generated by texi2html.