Blum–Shub–Smale machine
In computation theory, the Blum–Shub–Smale machine, or BSS machine, is a model of computation introduced by Lenore Blum, Michael Shub and Stephen Smale, intended to describe computations over the real numbers. Essentially, a BSS machine is a Random Access Machine with registers that can store arbitrary real numbers and that can compute rational functions over reals at unit cost.
[edit] Definition
A BSS machine M is given by the set
of
instructions, indexed
. A configuration of M is a tuple
, where k is the number of the instruction currently executed, r and w are copy registers and x stores the content of all registers of M. The computation begins with configuration
and ends whenever
– the content of x is said to be the output of the machine.
The instructions of M can be of the following types:
- Computation
: a substitution
is performed, where
is an arbitrary rational function; copy registers r and w may be changed, either by
or
and similarly for w. - Branch
: if
then goto l else goto k+1. - Copy(
): the content of the "read" register
is copied into the "write" register
; the next instruction is k+1
[edit] See also
[edit] Further reading
- Grädel, E. (2007). "Finite Model Theory and Descriptive Complexity". Finite Model Theory and Its Applications. Springer-Verlag. pp. 125–230. http://www.logic.rwth-aachen.de/pub/graedel/FMTbook-Chapter3.pdf.
- L. Blum, M. Shub, and S. Smale (1989). "On a Theory of Computation and Complexity over the Real Numbers: NP-completeness, Recursive Functions and Universal Machines". Bulletin of the American Mathematical Society 21 (1). http://www.ams.org/bull/1989-21-01/S0273-0979-1989-15750-9/S0273-0979-1989-15750-9.pdf.
: a substitution
is performed, where
is an arbitrary rational function; copy registers r and w may be changed, either by
or
and similarly for w.
: if
then goto l else goto k+1.
): the content of the "read" register
is copied into the "write" register
; the next instruction is k+1