s to the complexity of the task, the corresponding computing algorithm and the amount of data to be processed. Finally, a universal Turing 7 See http://en.wikipedia.org/wiki/Central_processing_unit. Reversible computation machine (UTM) belongs to a class of TMs, which, through a minimal set of action table instructions, are able to emulate any other TM, which is achieved by means of a tape program. The most important conclusion about TMs (and for that matter, UTMs) is that they can compute "anything that a real computer can compute." Namely, any problem that can be solved through some form of computing process or algorithm devised by a mathematician can be solved by a TM. This stunning statement is referred to as the Church-Turing thesis. Thus, TMs, and more SO UTMs, represent the most elementary form of computing machine ever conceivable. In this view, why are modern computers based on VN architecture instead of that of a TM? As discussed in Chapter 7, the TM implementation is comparatively impractical, for two main reasons. First, as we have seen, the TM requires an infinite memory space, which is not physically possible. Second, the finite size of a realistic computer memory puts a constraint on the management of the memory space, which in turn impacts on the program structure and algorithms. The TM algorithms may be more general or universal, but their implementation in a computing machine of finite memory size may in some cases be intractable, if not physically impossible. We can now see some key differences and similarities between TM and VN computers. While the UTM represents the most universal and elementary computer architecture, the VN machine represents its conceptual approximation in the real world. Both have programs based on man-thought algorithms, and physical input- output interfaces. We may think of the ALU as a TM that uses parts of its memory as an input-output tape, and the other part as the place where the action table is located. But this does not resolve the problem of memory finiteness. Fi