This report describes the design of a distributed program that searched for peaks in certain measures related to the 3x+1 problem. The searches for peaks in the number of steps taken, the maximum value reached, and the number of steps before the values of the iterates fall below the starting value exhibit a great deal of parallelism, but there is also some small amount of synchronization necessary. The design of a reliable and long-lived distributed system that searched for such peaks is discussed from the partitioning of the search to more detailed design issues such as ways to limit the search. The search was implemented in the distributed programming language Argus, and a few observations about Argus programming are included. An appendix includes tables of various results from the three years that the search program was running on six or more computers. c Gary T. Leavens, 1989. All rights reserved. Department of Computer Science Iowa State University Ames, Iowa 50011-1040, USA
[1]
Maurice Herlihy,et al.
ARGUS REFERENCE MANUAL
,
1987
.
[2]
Butler W. Lampson,et al.
Atomic Transactions
,
1980,
Advanced Course: Distributed Systems.
[3]
Jeffrey C. Lagarias,et al.
The 3x + 1 Problem and its Generalizations
,
1985
.
[4]
W. Daniel Hillis,et al.
Data parallel algorithms
,
1986,
CACM.
[5]
M. S. Day.
REPLICATION AND RECONFIGURATION IN A DISTRIBUTED MAIL REPOSITORY
,
1987
.
[6]
Barbara Liskov,et al.
Guardians and Actions: Linguistic Support for Robust, Distributed Programs
,
1983,
TOPL.