Opened 12 years ago

Closed 12 years ago

#9206 closed enhancement (fixed)

faster finite field creation with proof=False, done right (via proof architecture)

Reported by: was Owned by: AlexGhitza
Priority: major Milestone: sage-4.5.2
Component: basic arithmetic Keywords:
Cc: Merged in: sage-4.5.2.alpha0
Authors: William Stein Reviewers: Robert Bradshaw
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description


Attachments (1)

trac_9206.patch (8.2 KB) - added by was 12 years ago.

Download all attachments as: .zip

Change History (5)

comment:1 Changed 12 years ago by was

This example illustrates the effect of this patch:

sage: time GF(next_prime(10^40)^5,'a')
CPU times: user 0.51 s, sys: 0.00 s, total: 0.52 s
Wall time: 0.52 s
Finite Field in a of size 10000000000000000000000000000000000000121^5
sage: proof.arithmetic(False)
sage: time GF(next_prime(10^40)^5,'a')
CPU times: user 0.07 s, sys: 0.00 s, total: 0.07 s
Wall time: 0.07 s
Finite Field in a of size 10000000000000000000000000000000000000121^5

Unfortunately, it does *not* address this problem that David Harvey mentioned. However, it has a similar "flavor":

sage: R.<x> = PolynomialRing(Integers(16219299585*2^16612 - 1))

David Harvey: "Maybe not literally forever, but I got sick of waiting. Should be instantaneous."

Changed 12 years ago by was

comment:2 Changed 12 years ago by was

  • Status changed from new to needs_review

I didn't write the attached patch, but I polished it up, so it would be good if somebody else could sign off on this. I'm OK with it, as is.

comment:3 Changed 12 years ago by robertwb

  • Status changed from needs_review to positive_review

Looks good to me.

comment:4 Changed 12 years ago by mpatel

  • Authors set to William Stein
  • Merged in set to sage-4.5.2.alpha0
  • Resolution set to fixed
  • Reviewers set to Robert Bradshaw
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.