Overview

Primo is a primality proving program based on the ECPP (Elliptic Curve Primality Proving) algorithm. Given positive odd integers, it tests whether these integers are prime, and if they are it produces primality certificates. With Primo, one can check crypto-primes and prove whether they are actually prime... or not.

Executable for Linux 64-bit (Ubuntu/GNOME/x86-64 architecture)
Primo for Linux screenshot

A short description of the ECPP algorithm can be found at Elliptic Curve Primality Proving by Eric Weisstein (from MathWorld — A Wolfram Web Resource).

This alpha version was compiled with Free Pascal and Lazarus.



FAQ
  • Is this Linux version for multicore processors?
    Yes, it is.
     
  • Does it exist a multicore version for Windows?
    No, there is not.
     
  • What does "LG64" stand for?
    Linux GNOME 64-bit.
     
  • Why is this version called "alpha"?
    Because, from the GUI to the file formats, all can still be modified.
     
  • Does the LG64 version run under Linux distributions other than Ubuntu 11.04?
    I do not know.
     

Some timings
The following certification running times were obtained with Primo LG64 (alpha 11) using an Intel i7-2600 3.4GHz processor.

NDigitsSieve boundTasksWall clock time
10999 + 7100022281mn 6s
101999 + 73212000223814mn 15s
102999 + 1887300022481h 34mn
103999 + 477140002258     4h 33mn [*]
104999 + 226695000226813h 18mn
105999 + 293796000227828h 58mn
106999 + 331877000228861h 28mn

[*] This number is the third ECPP record set with Primo. Its certification, ten years ago, took 2856h!



To do
  • Rewrite the whole Phase 2 code.
  • ...
  • Release a beta version.


Changes
v4.0.0 - alpha 13 (February 13, 2012)
  • Added new class invariants.
  • New data files.
  • Modified the backtrack strategy.
  • Sieve upper bound increased up to 231.
v4.0.0 - alpha 12 (November 8, 2011)
  • New data files.
v4.0.0 - alpha 11 (October 10, 2011)
  • Fixed two bugs regarding the backtracking stuff.
  • New data files.
  • Added [Setup, resume:n] sections to .cr files.
v4.0.0 - alpha 10 (August 22, 2011)
  • Fixed a bug regarding the verification stuff. Thanks to Tom Wu who reported it.
  • Minor cosmetic changes.
v4.0.0 - alpha 9 (August 14, 2011)
  • Very first 64-bit version.
  • No more Confirm to abort button (clicking on the Abort button immediately terminates the certifications/verifications).
  • The .t<n> and .s<n> binary files are not compatible with the 32-bit versions (it is impossible to resume a certification started with a 32-bit version).
  • New help file.
v4.0.0 - alpha 8 (July 9, 2011)
  • New data files.
  • Modified the numbering of the backtracked tests (.cr files).
v4.0.0 - alpha 7 (June 8, 2011)
  • Fixed a bug that was sleeping since 10 years: some very particular numbers could be rejected (with the message The candidate is presumably a square) whereas they might be prime. Thanks to David Harrison who reported it.
  • Fixed a bug regarding the backtracking indicator. Thanks to Tom Wu who reported it.
  • Number of possible concurrent tasks increased up to 16.
  • Miscellaneous cosmetic and naming changes.
v4.0.0 - alpha 6 (May 25, 2011)
  • N±1 and EC tests fully parallelized.
  • Range of the Sieve upper bound increased from (221..228) to (220..230).
v4.0.0 - alpha 5 (May 9, 2011)
  • Fixed a bug regarding the primo.xd15 data file. Thanks to Tom Wu who reported it.
v4.0.0 - alpha 4 (May 9, 2011)
  • Better parallelization of the so-called Phase 1.
  • New data files.
  • Added a Certification reports option.
v4.0.0 - alpha 3 (April 24, 2011)
  • Fixed cosmetic bugs.
  • Slightly better tuning (hopefully).
v4.0.0 - alpha 2 (April 14, 2011)
  • First release.


Download

The software Primo may be used free of charge but you should read the End-User License Agreement before downloading and using it.

  primo-lg64-13.zip   16.2 MiB   Executables  (binary files)

The SHA-1 fingerprint is

  primo-lg64-13.zip :  bbd8befe1944eaacf4e1cb58e786105064d7d4b5


Stop Software Patents Petition

Valid XHTML 1.0 Strict