Opened 5 years ago

Closed 5 years ago

#20032 closed enhancement (duplicate)

Add Arb algorithm for Hilbert class polynomial

Reported by: fredrik.johansson Owned by:
Priority: major Milestone: sage-duplicate/invalid/wontfix
Component: number theory Keywords: arb
Cc: Merged in:
Authors: Reviewers: Travis Scrimshaw
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: #19811 Stopgaps:

Status badges

Description (last modified by fredrik.johansson)

This adds "arb" as an algorithm and makes it the default since it is faster (and provably correct modulo bugs).

Timings:

sage: %timeit hilbert_class_polynomial(-103, algorithm="arb");
10000 loops, best of 3: 74.9 µs per loop
sage: %timeit hilbert_class_polynomial(-103, algorithm="sage");
1000 loops, best of 3: 1.13 ms per loop

sage: %time a=hilbert_class_polynomial(-10000003, algorithm="arb");
CPU times: user 24.4 s, sys: 43.9 ms, total: 24.4 s
Wall time: 24.4 s
sage: %time b=hilbert_class_polynomial(-10000003, algorithm="sage");
CPU times: user 5min, sys: 509 ms, total: 5min 1s
Wall time: 5min 1s
sage: a == b
True

Change History (7)

comment:1 Changed 5 years ago by fredrik.johansson

  • Branch set to u/fredrik.johansson/add_arb_algorithm_for_hilbert_class_polynomial

comment:2 Changed 5 years ago by fredrik.johansson

  • Authors set to Fredrik Johansson
  • Commit set to 9bcb10b39c004daf06e949f31bc7d21d47c15f1a
  • Component changed from PLEASE CHANGE to number theory
  • Dependencies set to #19811
  • Description modified (diff)
  • Keywords arb added
  • Status changed from new to needs_review

This branch includes a commit from #20031 since I added acb_modular.pxd there. I guess it would be cleanest to wait for #20031 before merging this.


New commits:

7552190Upgrade arb to version 2.8.1
c57d86fupgrade doctests to reflect precision changes in latest arb
5993a34fix ComplexBallField element raised to negative Python int
68bf6eaCBF.hypergeometric: specialize for 0f0, 1f0, 0f1, 2f1, and support regularized=True
323f571CBF: wrap more Bessel functions
8309437CBF: wrap Jacobi theta functions
9bcb10bAdd Arb as default algorithm in hilbert_class_polynomial

comment:3 Changed 5 years ago by fredrik.johansson

  • Type changed from PLEASE CHANGE to enhancement

comment:4 Changed 5 years ago by git

  • Commit changed from 9bcb10b39c004daf06e949f31bc7d21d47c15f1a to d2ac60df32f91600c48189109bfe4715daa01546

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

d2ac60dCBF: wrap modular and elliptic functions

comment:5 Changed 5 years ago by fredrik.johansson

  • Milestone changed from sage-7.1 to sage-duplicate/invalid/wontfix

Making this part of #20031.

comment:6 Changed 5 years ago by tscrim

  • Authors Fredrik Johansson deleted
  • Branch u/fredrik.johansson/add_arb_algorithm_for_hilbert_class_polynomial deleted
  • Commit d2ac60df32f91600c48189109bfe4715daa01546 deleted
  • Reviewers set to Travis Scrimshaw
  • Status changed from needs_review to positive_review

comment:7 Changed 5 years ago by vbraun

  • Resolution set to duplicate
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.