The busy beaver problem is a well-known example of a non-computable function. In order to determine a particular value of this function, it is necessary to generate and classify a large number of Turing machines. The advent of cloud computing provides unparallelled opportunities to explore this problem, but also to develop infrastructures that support distributed investigations and relevant computational evidence for all results obtained, such as a list of all machines of a given size together with their classifications. This list can then be used for variants of the problem or related ones such as the placid platypus problem. We investigate how to generate classes of machines to be considered for the busy beaver problem, which involves separating the generation of machines from their analysis. We discuss the relationship between quadruple and quintuple variants of Turing machines, and show that the latter are more general than the former. We give some formal results to justify our strategy for minimising the number of machines generated, and define a process reflecting this strategy for generating machines. We describe our implementation, and the results of generating various classes of machines with up to 5 states or up to 5 symbols, all of which (together with our code) are available on the author's website.
Read full abstract