Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Tomcat42
perl-Math-Prime-Util
perl-Math-Prime-Util.changes
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File perl-Math-Prime-Util.changes of Package perl-Math-Prime-Util
------------------------------------------------------------------- Wed Apr 3 07:13:11 UTC 2019 - Stephan Kulow <coolo@suse.com> - updated to 0.73 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes 0.73 2018-11-15 [ADDED] - inverse_totient(n) the image of euler_phi(n) [FIXES] - Try to work around 32-bit platforms in semiprime approximations. Cannot reproduce on any of my 32-bit test platforms. - Fix RT 127605, memory use in for... iterators. 0.72 2018-11-08 [ADDED] - nth_semiprime(n) the nth semiprime - nth_semiprime_approx(n) fast approximate nth semiprime - semiprime_count_approx(n) fast approximate semiprime count - semi_primes as primes but for semiprimes - forsetproduct {...} \@a,\@b,... Cartesian product of list refs [FIXES] - Some platforms are extremely slow for is_pillai. Speed up tests. - Ensure random_factored_integer factor list is sorted min->max. - forcomposites didn't check lastfor on every callback. - Sun's compilers, in a valid interpretation of the code, generated divide by zero code for pillai testing. [FUNCTIONALITY AND PERFORMANCE] - chebyshev_theta and chebyshev_psi redone and uses a table. Large inputs are significantly faster. - Convert some FP functions to use quadmath if possible. Without quadmath there should be no change. With quadmath functions like LogarithmicIntegral and LambertW will be slower but more accurate. - semiprime_count for non-trivial inputs uses a segmented sieve and precalculates primes for larger values so can run 2-3x faster. - forsemiprimes uses a sieve so large ranges are much faster. - ranged moebius more efficient for small intervals. - Thanks to GRAY for his module Set::Product which has clean and clever XS code, which I used to improve my code. - forfactored uses multicall. Up to 2x faster. - forperm, forcomb, forderange uses multicall. 2-3x faster. - Frobenius-Khashin algorithm changed from 2013 version to 2016/2018. 0.71 2018-08-28 [ADDED] - forfactored { ... } a,b loop n=a..b setting $_=n, @_=factor(n) - forsquarefree { ... } a,b as forfactored, but only square-free n - forsemiprimes { ... } a,b as forcomposites, but only semiprimes - random_factored_integer(n) random [1..n] w/ array ref of factors - semiprime_count([lo],hi) counts semiprimes in range [FIXES] - Monolithic sieves beyond 30*2^32 (~ 1.2 * 10^11) overflowed. - is_semiprime was wrong for five small values since 0.69. Fixed. [FUNCTIONALITY AND PERFORMANCE] - is_primitive_root much faster (doesn't need to calulate totient, and faster rejection when n has no primitive root). - znprimroot and znorder use Montgomery, 1.2x to 2x faster. - slightly faster sieve_range for native size inputs (use factor_one). - bin/primes.pl faster for palindromic primes and works for 10^17 [OTHER] - Added ability to use -DBENCH_SEG for benchmarking sieves using prime_count and ntheory::_segment_pi without table optimizations. - Reorg of main factor loop. Should be identical from external view. - Internal change to is_semiprime and is_catalan_pseudoprime. 0.70 2017-12-02 [FIXES] - prime_count(a,b) incorrect for a={3..7} and b < 66000000. First appeared in v0.65 (May 2017). Reported by Trizen. Fixed. - Also impacted were nth_ramanujan_prime and _lower/_upper for small input values. [FUNCTIONALITY AND PERFORMANCE] - Some utility functions used prime counts. Unlink for more isolation. - prime_count_approx uses full precision for bigint or string input. - LogarithmicIntegral and ExponentialIntegral will try to use our GMP backend if possible. - Work around old Math::BigInt::FastCalc (as_int() doesn't work right). - prime_memfree also calls GMP's memfree function. This will clear the cached constants (e.g. Pi, Euler). - Calling srand or csrand will also result in the GMP backend CSPRNG functions being called. This gives more consistent behavior. [OTHER] - Turned off threads testing unless release or extended testing is used. A few smokers seem to have threads lib that die before we event start. - Removed all Math::MPFR code and references. The latest GMP backend has everything we need. - The MPU_NO_XS and MPU_NO_GMP environment variables are documented. 0.69 2017-11-08 [ADDED] - is_totient(n) true if euler_phi(x) == n for some x [FUNCTIONALITY AND PERFORMANCE] - is_square_free uses abs(n), like Pari and moebius. - is_primitive_root could be wrong with even n on some platforms. - euler_phi and moebius with negative range inputs weren't consistent. - factorialmod given a large n and m where m was a composite with large square factors was incorrect. Fixed. - numtoperm will accept negative k values (k is always mod n!) - Split XS mapping of many primality tests. Makes more sense and improves performance for some calls. - Split final test in PP cluster sieve. - Support some new Math::Prime::Util::GMP functions from 0.47. - C spigot Pi is 30-60% faster on x86_64 by using 32-bit types. - Reworked some factoring code. - Remove ISAAC (Perl and C) since we use ChaCha. - Each thread allocs a new const array again instead of sharing. 0.68 2017-10-19 [API Changes] - forcomb with one argument iterates over the power set, so k=0..n instead of k=n. The previous behavior was undocumented. The new behavior matches Pari/GP (forsubset) and Perl6 (combinations). [ADDED] - factorialmod(n,m) n! mod m calculated efficiently - is_fundamental(d) true if d a fundamental discriminant [FUNCTIONALITY AND PERFORMANCE] - Unknown bigint classes no longer return two values after objectify. Thanks to Daniel Șuteu for finding this. - Using lastfor inside a formultiperm works correctly now. - randperm a little faster for k < n cases, and can handle big n values without running out of memory as long as k << n. E.g. 5000 random native ints without dups: @r = randperm(~0,5000); - forpart with primes pulls min/max values in for a small speedup. - forderange 10-20% faster. - hammingweight for bigints 3-8x faster. - Add Math::GMPq and Math::AnyNum as possible bigint classes. Inputs of these types will be relied on to stringify correctly, and if this results in an integer string, to intify correctly. This should give a large speedup for these types. - Factoring native integers is 1.2x - 2x faster. This is due to a number of changes. - Add Lehman factoring core. Since this is not exported or used by default, the API for factor_lehman may change. - All new Montgomery math. Uses mulredc asm from Ben Buhrow. Faster and smaller. Most primality and factoring code 10% faster. - Speedup for factoring by running more Pollard-Rho-Brent, revising SQUFOF, updating HOLF, updating recipe. 0.67 2017-09-23 [ADDED] - lastfor stops forprimes (etc.) iterations - is_square(n) returns 1 if n is a perfect square - is_polygonal(n,k) returns 1 if n is a k-gonal number [FUNCTIONALITY AND PERFORMANCE] - shuffle prototype is @ instead of ;@, so matches List::Util. - On Perl 5.8 and earlier we will call PP instead of trying direct-to-GMP. Works around a bug in XS trying to turn the result into an object where 5.8.7 and earlier gets lost. - We create more const integers, which speeds up common uses of permutations. - CSPRNG now stores context per-thread rather than using a single mutex-protected context. This speeds up anything using random numbers a fair amount, especially with threaded Perls. - With the above two optimizations, randperm(144) is 2.5x faster. - threading test has threaded srand/irand test added back in, showing context is per-thread. Each thread gets its own sequence and calls to srand/csrand and using randomness doesn't impact other threads. ------------------------------------------------------------------- Wed Sep 13 05:46:06 UTC 2017 - coolo@suse.com - updated to 0.66 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes 0.66 2017-09-12 [ADDED] - random_semiprime random n-bit semiprime (even split) - random_unrestricted_semiprime random n-bit semiprime - forderange { ... } n derangements iterator - numtoperm(n,k) returns kth permutation of n elems - permtonum([...]) returns rank of permutation array ref - randperm(n[,k]) random permutation of n elements - shuffle(...) random permutation of an array [FUNCTIONALITY AND PERFORMANCE] - Rewrite sieve marking based on Kim Walisch's new simple mod-30 sieve. Similar in many ways to my old code, but this is simpler and faster. - is_pseudoprime, is_euler_pseudoprime, is_strong_pseudoprime changed to better handle the unusual case of base >= n. - Speedup for is_carmichael. - is_frobenius_underwood_pseudoprime checks for jacobi == 0. Faster. - Updated Montgomery inverse from Robert Gerbicz. - Tighter nth prime bounds for large inputs from Axler 2017-06. Redo Ramanujan bounds since they're based on nth prime bounds. - chinese objectifies result (i.e. big results are bigints). - Internal support for Baillie-Wagstaff (pg 1402) extra Lucas tests. - More standardized Lucas parameter selection. Like other tests and the 1980 paper, checks jacobi(D) in the loop, not gcd(D). - entropy_bytes, srand, and csrand moved to XS. - Add -secure import to disallow all manual seeding. ------------------------------------------------------------------- Tue Sep 12 05:46:29 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Sep 11 05:49:10 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Sep 10 05:48:46 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Sep 9 05:53:38 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Sep 8 05:45:09 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Sep 7 05:47:49 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Sep 6 05:52:22 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Sep 5 05:47:30 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Sep 4 05:44:41 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Sep 3 05:53:27 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Sep 2 05:52:34 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Sep 1 05:52:33 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Aug 31 05:50:32 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Aug 30 05:53:40 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Aug 29 05:51:03 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Aug 28 07:05:17 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Aug 27 05:52:04 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Aug 26 05:50:35 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Aug 25 05:50:23 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Aug 24 05:57:00 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Aug 23 05:48:47 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Aug 22 05:52:18 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Aug 21 05:48:35 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Aug 20 05:49:02 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Aug 19 05:48:09 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Aug 18 05:46:17 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Aug 16 05:48:10 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Aug 15 05:47:30 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Aug 14 05:52:38 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Aug 13 05:52:39 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Aug 12 05:51:42 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Aug 11 05:53:47 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Aug 10 06:01:07 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Aug 9 05:55:59 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Aug 8 05:51:28 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Aug 7 05:54:27 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Aug 6 05:50:31 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Aug 5 05:52:39 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Aug 4 05:53:38 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Aug 3 05:48:05 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Aug 2 05:54:20 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Aug 1 05:53:57 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Jul 31 05:53:05 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Jul 29 05:52:03 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Jul 28 05:51:12 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Jul 27 05:49:15 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Jul 26 05:51:26 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Jul 25 05:49:22 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Jul 24 05:50:57 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Jul 23 05:50:54 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Jul 22 05:55:03 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Jul 21 05:47:19 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Jul 19 05:52:22 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Jul 17 05:47:34 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Jul 16 05:45:21 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Jul 15 05:46:44 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Jul 14 05:45:52 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Jul 13 05:44:59 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Jul 12 05:45:06 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Jul 11 05:53:48 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Jul 10 05:55:21 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Jul 9 05:50:43 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Jul 8 05:50:07 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Jul 7 05:50:13 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Jul 6 05:51:25 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Jul 5 05:48:55 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Jul 4 05:51:12 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Jul 3 05:49:53 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Jul 2 05:47:17 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Jul 1 05:50:00 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Jun 30 05:48:33 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Jun 29 05:53:39 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Jun 28 05:50:11 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Jun 27 05:47:28 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Jun 26 05:45:09 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Jun 25 05:55:06 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Jun 24 05:54:39 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Jun 23 05:52:28 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Jun 22 05:51:22 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Jun 21 05:58:29 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue Jun 20 05:58:32 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon Jun 19 05:51:36 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun Jun 18 05:52:33 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat Jun 17 05:52:27 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Jun 16 05:52:52 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Jun 15 05:51:09 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed Jun 14 05:52:02 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Jun 9 05:59:24 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri Jun 2 06:08:16 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu Jun 1 06:04:03 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Wed May 31 06:05:29 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Tue May 30 06:08:20 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Mon May 29 06:03:35 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sun May 28 06:05:02 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Sat May 27 06:04:52 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Fri May 26 06:04:51 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes ------------------------------------------------------------------- Thu May 25 08:33:09 UTC 2017 - coolo@suse.com - updated to 0.65 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes 0.65 2017-05-03 [API Changes] - Config options irand and primeinc are deprecated. They will carp if set. [FUNCTIONALITY AND PERFORMANCE] - Add Math::BigInt::Lite to list of known bigint objects. - sum_primes fix for certain ranges with results near 2^64. - is_prime, next_prime, prev_prime do a lock-free check for a find-in-cache optimization. This is a big help on on some platforms with many threads. - C versions of LogarithmicIntegral and inverse_li rewritten. inverse_li honors the documentation promise within FP representation. Thanks to Kim Walisch for motivation and discussion. - Slightly faster XS nth_prime_approx. - PP nth_prime_approx uses inverse_li past 1e12, which should run at a reasonable speed now. - Adjusted crossover points for segment vs. LMO interval prime_count. - Slightly tighter prime_count_lower, nth_prime_upper, and Ramanujan bounds. 0.64 2017-04-17 [FUNCTIONALITY AND PERFORMANCE] - inverse_li switched to Halley instead of binary search. Faster. - Don't call pre-0.46 GMP backend directly for miller_rabin_random. 0.63 2017-04-16 [FUNCTIONALITY AND PERFORMANCE] - Moved miller_rabin_random to separate interface. Make catching of negative bases more explicit. 0.62 2017-04-16 [API Changes] - The 'irand' config option is removed, as we now use our own CSPRNG. It can be seeded with csrand() or srand(). The latter is not exported. - The 'primeinc' config option is deprecated and will go away soon. [ADDED] - irand() Returns uniform random 32-bit integer - irand64() Returns uniform random 64-bit integer - drand([fmax]) Returns uniform random NV (floating point) - urandomb(n) Returns uniform random integer less than 2^n - urandomm(n) Returns uniform random integer in [0, n-1] - random_bytes(nbytes) Return a string of CSPRNG bytes - csrand(data) Seed the CSPRNG - srand([UV]) Insecure seed for the CSPRNG (not exported) - entropy_bytes(nbytes) Returns data from our entropy source - :rand Exports srand, rand, irand, irand64 - nth_ramanujan_prime_upper(n) Upper limit of nth Ramanujan prime - nth_ramanujan_prime_lower(n) Lower limit of nth Ramanujan prime - nth_ramanujan_prime_approx(n) Approximate nth Ramanujan prime - ramanujan_prime_count_upper(n) Upper limit of Ramanujan prime count - ramanujan_prime_count_lower(n) Lower limit of Ramanujan prime count - ramanujan_prime_count_approx(n) Approximate Ramanujan prime count [FUNCTIONALITY AND PERFORMANCE] - vecsum is faster when returning a bigint from native inputs (we construct the 128-bit string in C, then call _to_bigint). - Add a simple Legendre prime sum using uint128_t, which means only for modern 64-bit compilers. It allows reasonably fast prime sums for larger inputs, e.g. 10^12 in 10 seconds. Kim Walisch's primesum is much more sophisticated and over 100x faster. - is_pillai about 10x faster for composites. - Much faster Ramanujan prime count and nth prime. These also now use vastly less memory even with large inputs. - small speed ups for cluster sieve. - faster PP is_semiprime. - Add prime option to forpart restrictions for all prime / non-prime. - is_primitive_root needs two args, as documented. - We do random seeding ourselves now, so remove dependency. - Random primes functions moved to XS / GMP, 3-10x faster. 0.61 2017-03-12 [ADDED] - is_semiprime(n) Returns 1 if n has exactly 2 prime factors - is_pillai(p) Returns 0 or v wherev v! % n == n-1 and n % v != 1 - inverse_li(n) Integer inverse of Logarithmic Integral [FUNCTIONALITY AND PERFORMANCE] - is_power(-1,k) now returns true for odd k. - RiemannZeta with GMP was not subtracting 1 from results > 9. - PP Bernoulli algorithm changed to Seidel from Brent-Harvey. 2x speedup. Math::BigNum is 10x faster, and our GMP code is 2000x faster. - LambertW changes in C and PP. Much better initial approximation, and switch iteration from Halley to Fritsch. 2 to 10x faster. - Try to use GMP LambertW for bignums if it is available. - Use Montgomery math in more places: = sqrtmod. 1.2-1.7x faster. = is_primitive_root. Up to 2x faster for some inputs. = p-1 factoring stage 1. - Tune AKS r/s selection above 32-bit. - primes.pl uses twin_primes function for ~3x speedup. - native chinese can handle some cases that used to overflow. Use Shell sort on moduli to prevent pathological-but-reasonable test case. - chinese directly to GMP - Switch to Bytes::Random::Secure::Tiny -- fewer dependencies. - PP nth_prime_approx has better MSE and uses inverse_li above 10^12. - All random prime functions will use GMP versions if possible and if a custom irand has not been configured. They are much faster than the PP versions at smaller bit sizes. - is_carmichael and is_pillai small speedups. 0.60 2016-10-09 [ADDED] - vecfirstidx { expr } @n returns first index with expr true [FUNCTIONALITY AND PERFORMANCE] - Expanded and modified prime count sparse tables. Prime counts from 30k to 90M are 1.2x to 2.5x faster. It has no appreciable effect on the speed of prime counts larger than this size. - fromdigits works with bigint first arg, no need to stringify. Slightly faster for bigints, but slower than desired. - Various speedups and changes for fromdigits, todigits, todigitstring. - vecprod in PP for negative high-bit would return double not bigint. - Lah numbers added as Stirling numbers of the third kind. They've been in the GMP code for almost 2 years now. Also for big results, directly call the GMP code and objectify the result. - Small performance change to AKS (r,s) selection tuning. - On x86_64, use Montgomery math for Pollard/Brent Rho. This speeds up factoring significantly for large native inputs (e.g. 10-20 digits). - Use new GMP zeta and riemannr functions if possible, making some of our operations much faster without Math::MPFR. - print_primes with large args will try GMP sieve for big speedup. E.g. use bigint; print_primes(2e19,2e19+1e7); goes from 37 minutes to 7 seconds. This also removes a mistaken blank line at the end for certain ranges. - PP primes tries to use GMP. Only for calls from other PP code. - Slightly more accuracy in native ExponentialIntegral. - Slightly more accuracy in twin_prime_count_approx. - nth_twin_prime_approx was incorrect over 1e10 and over 2e16 would infinite loop due to Perl double conversion. - nth_twin_prime_approx a little faster and more accurate. 0.59 2016-08-03 [ADDED] - is_prime_power Returns k if n=p^k for p a prime. - logint(n,b) Integer logarithm. Largest e s.t. b^e <= n. - rootint(n,k) Integer k-th root. - ramanujan_sum(k,n) Ramanujan's sum [FUNCTIONALITY AND PERFORMANCE] - Fixes for quadmath: + Fix "infinity" in t/11-primes.t. + Fix native Pi to use quads. + Trim some threading tests. - Fix fromdigits memory error with large string. - Remove 3 threading tests that were causing issues with Perl -DDEBUGGING. - foroddcomposites with some odd start values could index incorrectly. - is_primitive_root(1,0) returns 0 instead of fp exception. - mertens() uses a little less memory. - 2x speedup for znlog with bigint values. - is_pseudoprime() and is_euler_pseudoprime() use Montgomery math so are much faster. They seem to be ~5% faster than Miller-Rabin now. - is_catalan_pseudoprime 1.1x to 1.4x faster. - is_perrin_pseudoprime over 10x faster. Uses Adams/Shanks doubling and Montgomery math. Single core, odd composites: ~8M range/s. - Add restricted Perrin pseudoprimes using an optional argument. - Add bloom filters to reject non-perfect cubes, fifths, and sevenths. is_power about 2-3x faster for native inputs. - forcomposites / foroddcomposites about 1.2x faster past 64-bit. - exp_mangoldt rewritten to use is_prime_power. - Integer root code rewritten and now exported. - We've been hacking around the problem of older Perls autovivifying functions at compile time. This makes functions that don't exist return true when asked if they're defined, which causes us distress. Store the available GMP functions before loading the PP code. XS code knows MPU::GMP version and calls as appropriate. This works around the auto-vivication, and lets us choose to call the GMP function based on version instead of just existence. E.g. GMP's is_power was added in 0.19, but didn't support negative powers until 0.28. ------------------------------------------------------------------- Mon Jun 13 07:19:00 UTC 2016 - coolo@suse.com - updated to 0.58 see /usr/share/doc/packages/perl-Math-Prime-Util/Changes 0.58 2016-05-21 [API Changes] - prev_prime($n) where $n <= 2 now returns undef instead of 0. This may enable catching range errors, and is technically more correct. - nth_prime(0) now returns undef instead of 0. This should help catch cases where the base wasn't understood. The change is similar for all the nth_* functions (e.g. nth_twin_prime). - sumdigits(n,base) will interpret n as a number in the given base, rather than the Pari/GP method of converting decimal n to that base then summing. This allows sumdigits to easily sum hex strings. The old behavior is easily done with vecsum(todigits(n, base)). - binary() was not intended to be released (todigits and todigitstring are supersets), but the documentation got left in. Remove docs. [ADDED] - addmod(a, b, n) a + b mod n - mulmod(a, b, n) a * b mod n - divmod(a, b, n) a / b mod n - powmod(a, b, n) a ^ b mod n - sqrtmod(a, n) modular square root - is_euler_pseudoprime(n,a[...]) Euler test to given bases - is_primitive_root(r, n) is r a primitive root mod n - is_quasi_carmichael(n) is n a Quasi-Carmichael number - hclassno(n) Hurwitz class number H(n) * 12 - sieve_range(n, width, depth) sieve to given depth, return offsets [FUNCTIONALITY AND PERFORMANCE] - Fixed incorrect table entries for 2^16th Ramanujan prime count and nth_ramanujan_prime(23744). - foroddcomposites with certain arguments would start with 10 instead of 9. - lucasu and lucasv should return bigint types. - vecsum will handle 128-bit sums internally (performance increase). - Speedup is_carmichael. - Speedup znprimroot, 10% for small inputs, 10x for large composites. - Speedup znlog ~2x. It is now Rho racing an interleaved BSGS. - Change AKS to Bernstein 2003 theorem 4.1. 5-20x faster than Bornemann, 20000+x faster than V6. - sum_primes now uses tables for native sizes (performance increase). - ramanujan_tau uses Cohen's hclassno method instead of the sigma calculation. This is 3-4x faster than the GMP code for inputs > 300k, and much faster than the older PP code. - fromdigits much faster for large base-10 arrays. Timing is better than split plus join when output is a bigint. 0.57 2016-01-03 [ADDED] - formultiperm { ... } \@n loop over multiset permutations - todigits(n[,base[,len]]) convert n to digit array - todigitstring(n[,base[,len]]) convert n to string - fromdigits(\@d[,base]) convert digit array ref to number - fromdigits(str[,base]) convert string to number - ramanujan_prime_count counts Ramanujan primes in range - vecany { expr } @n true if any expr is true - vecall { expr } @n true if all expr are true - vecnone { expr } @n true if no expr are true - vecnotall { expr } @n true if not all expr are true - vecfirst { expr } @n returns first element with expr true [FUNCTIONALITY AND PERFORMANCE] - nth_ramanujan_prime(997) was wrong. Fixed. - Tighten Ramanujan prime bounds. Big speedups for large nth Rp. 0.56 2015-12-13 [ADDED] - is_carmichael(n) Returns 1 if n is a Carmichael number - forcomp { ... } n[,{...}] loop over compositions [FUNCTIONALITY AND PERFORMANCE] - Faster, nonrecursive divisors_from_factors routine. - gcdext(0,0) returns (0,0,0) to match GMP and Pari/GP. - Use better prime count lower/upper bounds from Büthe 2015. - forpart and forcomp both use lexicographic order (was anti-lexico). 0.55 2015-10-19 - Fixed test that was using a 64-bit number on 32-bit machines. [FUNCTIONALITY AND PERFORMANCE] - Speed up PP versions of sieve_prime_cluster, twin_primes, twin_prime_count, nth_twin_prime, primes. 0.54 2015-10-14 [ADDED] - sieve_prime_cluster(low,high[,...]) find prime clusters [Misc] - Certain small primes used to return false with Frobenius and AES Lucas tests when given extra arguments. Both are unusual cases never used by the main system. Fixed. 0.53 2015-09-05 [ADDED] - ramanujan_tau(n) Ramanujan's Tau function - sumdigits(n[,base]) sum digits of n [FUNCTIONALITY AND PERFORMANCE] - Don't use Math::MPFR unless underlying MPFR library is at least 3.x. - Use new Math::Prime::Util::GMP::sigma function for divisor_sum. - Use new Math::Prime::Util::GMP::sieve_twin_primes(a,b). ------------------------------------------------------------------- Sun Sep 20 17:01:37 UTC 2015 - coolo@suse.com - initial package 0.52 * created by cpanspec 1.78.08
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor