In complexity theory, a time-constructible function is a function f from natural numbers to natural numbers with the property that f(n) can be constructed from n by a Turing machine in the time of order f(n). The purpose of such a definition is to exclude functions that do not provide an upper bound on the runtime of some Turing machine.[1]

Time-constructible

edit

Let the Turing machine be defined in the standard way, with an alphabet that includes the symbols . It has a standard input tape containing zeros except for an input string. Let denote a string composed of ones. That is, it's the unary representation of . Let be the binary representation.

A function is called time-constructible if there exists a Turing machine such that the computation halts in steps with value .

This definition may use instead, since the two can be interconverted in steps.[1]

Fully time-constructable

edit

There is also a notion of a fully time-constructible function.

A function is called fully time-constructible if there exists a Turing machine , such that for all but finitely many , halts in exactly steps.[2] This definition is slightly less general than the first, but for most applications, either definition can be used.[3] The following equivalence theorem shows that these two concepts are equivalent for most functions used in practice:

Theorem.[3]: Theorem 2.6  If is a function such that there exists such that, for all but finitely many , (that is, if ), then is time-constructible if and only if it is fully time-constructible.

Space-constructible

edit

A function is called space-constructible if there exists a Turing machine such that halts with value (or equivalently ), while using space.[1]

Equivalently, is called space-constructible if there exists a Turing machine , such that for all but finitely many , the computation halts in a configuration in which exactly cells are not blank, and no other cell has been written to during its operation.[3]: Definition 2.4  This is sometimes called "fully space-constructible". However, the two definitions are equivalent.[3]: Theorem 2.7 

Properties

edit

All the commonly used functions (such as ) are time- and space-constructible, as long as . The construction is straightforward. For example, is constructed by one nested for-loop, while is constructed by two nested for-loops, etc.

If is time-constructible, then it is eventually constant, since otherwise there is insufficient time to read the entire input.

is space-constructible even though .

For every computable function , there is a computable function that is time constructible and .[3]: Lemma 2.3 

Applications

edit

Time-constructible functions are used in results from complexity theory such as the time hierarchy theorem. They are important because the time hierarchy theorem relies on Turing machines that must determine in O(f(n)) time whether an algorithm has taken more than f(n) steps. This is, of course, impossible without being able to calculate f(n) in that time. Such results are typically true for all natural functions f but not necessarily true for artificially constructed f. To formulate them precisely, it is necessary to have a precise definition for a natural function f for which the theorem is true. Time-constructible functions are often used to provide such a definition.

Space-constructible functions are used similarly, for example in the space hierarchy theorem.

References

edit

This article incorporates material from constructible on PlanetMath, which is licensed under the Creative Commons Attribution/Share-Alike License.

  1. ^ a b c Goldreich, Oded (2008). Computational Complexity: A Conceptual Perspective. Cambridge University Press. pp. 130, 139. ISBN 978-0-521-88473-0.
  2. ^ Homer, Steven; Selman, Alan L. (2011). Computability and Complexity Theory (Second ed.). Springer. ISBN 978-1-4614-0681-5.
  3. ^ a b c d e Balcázar, José Luis; Díaz, Josep; Gabarró, Joaquim (1988). Structural Complexity I. Springer-Verlag. ISBN 3-540-18622-0.

📚 Artikel Terkait di Wikipedia

Time hierarchy theorem

More precisely, the time hierarchy theorem for deterministic Turing machines states that for all time-constructible functions f(n), D T I M E ( o (

NTIME

NTIME is also related to DSPACE in the following way. For any time constructible function t(n), we have N T I M E ( t ( n ) ) ⊆ D S P A C E ( t ( n ) )

Proper complexity function

include honest functions, space-constructible functions, and time-constructible functions. Myashnikov, Alexei; Shpilrain, Vladimir; Ushakov, Vladimir (2008)

Time

Ultimate Theory of Time. Penguin. ISBN 978-0-452-29654-1. As human beings we 'feel' the passage of time. Lehar, Steve. (2000). The Function of Conscious Experience:

DSPACE

)}.} NTIME is related to DSPACE in the following way. For any time constructible function t(n), we have N T I M E ( t ( n ) ) ⊆ D S P A C E ( t ( n ) )

The Wheel of Time

sa'angreal being the most potent, and ter'angreal limited to specific functions. A matriarchal order called the Aes Sedai, made up of female channelers

Perfect hash function

injective function. Perfect hash functions may be used to implement a lookup table with constant worst-case access time. A perfect hash function can, as

Function (mathematics)

depends on another quantity. For example, the position of a planet is a function of time. Historically, the concept was elaborated with the infinitesimal calculus