Ivo Dntsch
Rechenzentrum &
Institut fr semantische Informationsverarbeitung
Universit„t Osnabrck
40976 Osnabrck
Germany
Bitnet: duentsch@dosuni1
Internet: duentsch@dosuni1.rz.uni-osnabrueck.de
Date: April 20, 1994
Aliquot
Summary:
Aliquot is a tool to compute aliquot chains with small starting
numbers and keep a record of the results. It works on any PC with
DOS 2.0 or greater.
_________________________________________________________________
Definitions:
For a positive natural number n > 1, s(n) denotes the sum of its
proper divisors. The sequence obtained by iterating s for some
n is called an aliquot sequence or, sometimes, a chain.
Various things can happen:
1. The sequence is constant from some point onwards;
the constant term will be 1 or a perfect number.
2. The sequence becomes periodic with period > 1 by moving
into a ring of amicable numbers.
3. It is an open problem whether an aliquot sequence can have
infinitely many different terms.
The target of an aliquot sequence is a member which is either
a perfect number or a prime or the smallest member of an amicable
ring.
A record file consists of 32 bit long integers. Record n contains
the target of n if it has been found, 0 if the sequence starting
with n has not been resolved, -1 if n has not yet been looked at.
The record file is, in a way, a skeleton for results to be written
into. It is initialized with record 0 = number of records, record
1 = last number processed, and all other entries set to -1.
__________________________________________________________________
Algorithm:
The program uses Pollard-Brent factoring, the pseudorandom poly-
nomial being x^2 + s, where s is the shift.
__________________________________________________________________
Options:
[a] Computes an aliquot chain; the result can be written to a
text file. Press to quit during a long calculation.
[c] Given a record file, the option counts all occurrences of a
target within a specified range.
[e] Extends the number of records of a record file.
[f] Finds a number and its target.
(Enter 0 to find the largest possible number of records
for this file, enter 1 to find the largest processed starting
number.)
[h] A short help screen.
[p] Several parameters can be changed:
The starting value and shift of the polynomial,
The maximum number of shifts to do before aborting in
option [r],
The start of numbering (0 or 1) in option [a],
When a partial chain is first saved in [c] and in which
intervals; the filename will be the first 8 digits of the
starting number.
[q] Quit the program.
[r] Create or fill in a record file systematically.
[u] Update a record file with a chain; the program needs a text
file created with ALIQUOT, NUMBERS or a generic file of the
following form:
1. The first line contains the target.
2. The following lines contain the numbers to which the
target is to be added.
3. Blank lines or lines starting with # are ignored.
Example: A file starting with the lines
601
840
2040
4440
9240
will cause the target 601 to be added to 840, 2040,
4440, 9240.
[s] Counts the number of occurences of all targets in a specified
range. Primes are not included, e.g. 7 is not included
among all numbers with target 7. At present, the program
can do the statistics for at most 10,000 different targets.
This is sufficient for a range 1 - 300,000. The procedure
can also output a list of primes in the chosen range which
do not appear as targets.
[t] Finds all numbers with a given target in a specified range.
The output can be written to a file.
[x] Extracts a specified range of a record file to text.
__________________________________________________________________
Limitations:
The record file can only contain Turbo Pascals LongInts. Thus,
targets greater than TP's maxint are not recorded.
Input checking is hardly performed. Please report any errors.
__________________________________________________________________
Known bugs:
Sometimes the program will try to write past the end of the chain
file and terminate with an error message. I have not been able to
find or systematically reproduce the error.
__________________________________________________________________
Included is a record file chain.rec with starters up to 300,000;
the targets have been obtained by running the Pollard Rho
algorithm on f(x) = x^2 + s with 1 <= s <= 5 and start value x_0 = 3.
15% of the numbers have not yet been resolved. Please let me
know if you find any new entries.
__________________________________________________________________
Contributions:
J. Gerved (gerved@inet.uni-c.dk) has kindly supplied the chains
with the starters 840,1248,1848,2580,2850,4488,4830,6792,7752,
8262,8862,9540.
The chains with starters 840 and 4488 were independently found by
W. Creyaufmller.
__________________________________________________________________
Enjoy,
Ivo.
__________________________________________________________________
Disclaimer:
Extensive care has been taken to assure that the program runs
properly; however, I disclaim all reliability to the user for
any direct, indirect or consequential loss arising from the use
of, or inability to use, this program.
No warranty is given that the program will work under all
circumstances, or that it does what it claims it does.
__________________________________________________________________
Licence:
The program may be freely used for educational or research purposes.
If you use its results in publications, I should appreciate if you
included the following reference:
Ivo Dntsch, "Aliquot - a utility to compute aliquot chains",
Universit„t Osnabrck (1992)
__________________________________________________________________
Changes:
Jul 06, 1992: Fixed a bug which in rare circumstances might cause
the computer to hang.
Sep 14, 1992: Added the utilities [s], included updated record file.
Jan 04, 1993: Included updated record file.
Oct 06, 1993: Included ability to read generic chain files.
Removed some minor inconsistencies.
Included updated record file.
Jan 21, 1994: Removed a memory problem in the [s] option.
Added negative list of primes to [s].
Added option [t].
Apr 20, 1994: Added chains to chain.rec supplied by J. Gerved and
W. Creyaufmller