PointsOfFiniteOrder(R0, F, UP, UPUP, R)
pfo.spad line 259
[edit on github]
This package provides function for testing whether a divisor on a curve is a torsion divisor.
- cmult : List(SparseMultivariatePolynomial(R0, Kernel(F))) -> SparseMultivariatePolynomial(R0, Kernel(F))
cmult(x) should be local but conditional
- handle_imaginary : FiniteDivisor(F, UP, UPUP, R) -> Record(ncurve : UPUP, n_div_numer : Vector(UPUP), n_div_denom : UPUP, need_change : Boolean)
handle_imaginary(d) should be local but conditional.
- order : FiniteDivisor(F, UP, UPUP, R) -> Union(NonNegativeInteger, "failed")
order(fd) returns order of divisor fd or "failed" if fd is not of finite order.
- possibleOrder : FiniteDivisor(F, UP, UPUP, R) -> NonNegativeInteger
possibleOrder(d) returns n such that d is of order n, or of infinite order.
- simplifyCoeffs : (Record(ncurve : UPUP, n_div_numer : Vector(UPUP), n_div_denom : UPUP, need_change : Boolean), List(Kernel(F))) -> NonNegativeInteger if R0 has CharacteristicZero and F has AlgebraicallyClosedField
simplifyCoeffs(d, la) should be local but conditional.
- torsion? : FiniteDivisor(F, UP, UPUP, R) -> Boolean
torsion?(fd) returns true if fd is of finite order, false otherwise.
- torsionIfCan : FiniteDivisor(F, UP, UPUP, R) -> Union(Record(order : NonNegativeInteger, function : R), "failed")
torsionIfCan(fd) returns [n, f] such that n*fd = div(f) when fd is of finite order. torsionIfCan(fd) returns "failed" if fd is not of finite order.