Loading ...
Sorry, an error occurred while loading the content.

16059Re: Sieving primo-factorials

Expand Messages
  • jim_fougeron
    Feb 9, 2005
      --- In primenumbers@yahoogroups.com, "Jens Kruse Andersen"
      <jens.k.a@g...> wrote:
      >D├ęcio wrote:
      >>I should grab that version -- I was running the latest compiled
      >>binary for Linux that was available in the files area of the
      >>openpfgw group.
      >
      >Note that development versions at openpfgw are often less tested
      >than released versions at primeform group.
      >Factors can be trivially verified so a possibility is:
      >Factor with development, verify factors, prp with release.

      The point Jens is making, can not be stressed enough. While I am
      very "partial" to the current "experimental" developement version
      of PFGW, and that is where I focus all of my developement time adding
      new things, and enhancing performance, keep in mind that it IS
      experimental code. The current dev version is so experimental that
      it will not even build under Linux (due to running with 2 versions
      of the Woltman FFT libraries while porting all of code over to use
      the newest version of that library).

      Also keep in mind, that the factoring code has been pretty much
      re-written (as you see by the 10x speed improvement). However, just
      a few days ago, I did fix a fatal bug in that code, which you can
      demonstrate on your December Linux build, by simply doing a:
      pfgw -f 5000#
      That will crash, due to a division by zero problem (i.e. the WHOLE
      tree was a factor of the number, and thus the whole tree's modulus
      was zero). Thus, even though the tree-factorize code has been in
      the dev version since day one (since the first "stable" 1.2 was
      released, and the dev branch started off), it still has some nits
      in it (thus, that is WHY it is not in the stable release, even
      though it was running prior to the stable cut-off).

      Also, the exponenation code, which was scattered throughout many
      places in the source (but pretty well tested at each of those), is
      now in a singlular function, and all of those "locations" in the
      code call a common expmod() function. The exponentation code also
      seems to be "pretty stable", and with only one set of code (vs a hand
      full before), when there is a bug, fixing it is easier, due to
      all processing filtering down into that single function. However,
      just as was seen in the "pretty stable" tree factorize code, there
      simply has not been enough testing to fully validate that everything
      is correct.

      Also, the N-1 proof has been totally re-written (porting the existing
      stable N-1 test code was just too much of a nightmare into the v24
      FFT library, so it was re-written). This code is WAY too fresh to
      rely on. At the same time, the N+1 and "combined" (-tc) testing
      code is also being re-written. Then about 20% of the "core" pfgw
      code will be stripped out (all of the support code for the v23 FFT,
      along with the older proving code which was integrated into the
      expression engine).

      That is why Jens made a "blanket" statement about when to use the
      dev version, and when NOT to use it (or at least do not FULLY rely
      on it). It is an experimental version. It may not work right, may
      crash, may cause your computer to make a loud screeching sound and
      catch fire, or might cause your TV to only receive re-runs of the
      "Teli-Tubbies" (well, I am pretty sure the last 2 warnings can be
      ignored :) However, many of the "recent" requests (such as faster
      factoring, IBDWT, enhanced script features), are only available in
      that version. Just use the version with caution, and keep me
      informed of problems with it, and again, it should NOT be used
      for testing at this time, without additional validation of anouther
      application (including an older "stable" PFGW version).

      Jim.
    • Show all 9 messages in this topic