Skip to main content
added 320 characters in body; added 51 characters in body
Source Link
Sandro Lovnički
  • 1.2k
  • 1
  • 7
  • 17

Is it too strong?
The concern should not be that a Turing machine is a too strong model because of the way we construct a Turing machine. Turing machine is essentially a framework for defining a notion of algorithm in its basic, simple steps. Every algorithm executed on a Turing machine can be executed by hand, meaning it is effectively calculable (one direction of Church-Turing thesis). The real question is - is there an effectively calculable function whose computation cannot be encoded in a Turing machine. This all seems that it must hold (and therefore many computer scientists accept Church-Turing thesis as true), but cannot formally be proven just because the term "effectively calculable" is not formally defined.

Why not bound it?
I am not sure if this satisfies your quest for "deep inherent reason why unboundness is a requirement", but think about it this way: What if we bound the tape? Say, a Turing machine must have tape of length at most $M$, for some $M \in \mathbb{N}$. Let's look at $2$ examples:

  1. We can choose/construct a Turing machine $T_M$ that uses exactly $M$ distinct positions on a tape. Then, we can construct a Turing machine $T_{M+1}$ that runs exactly as $T_M$ with additional step - that it writes a symbol after the last symbol on its tape, once it finishes all the running steps of $T_M$.
    This Turing machine (algorithm) $T_{M+1}$ therefore could not exists if we bounded the tape at $M$, but obviously - this algorithm is effectively computable.

  2. Say you want to construct a Turing machine that adds two numbers. What if the length of numbers is more than $M$? We could not add them (nor even write them) with a Turing machine, but can obviously add them (say, by hand) via standard known algorithms for addition (that also doesn't have restrictions on length/tape).

Therefore, we must not bound the tape if we want to be able to compute things that we can in theory compute (by hand). The same arguments holds if we would want to bound the number of steps (time).

Computatioal complexity deals with resources required by an algorithm depending on size of the input, so you might want to look at that subject.


So, are there any attempts to capture the notion of computability and what we know to be computable in the physical world in a model that is finite in nature?

Turing machine is a finite model.


Different model
$\lambda$-calculus is a computational model invented by Turing’s doctoral advisor Alonzo Church. It does not resemble Turing machine and it is based on a concept of definition and application of functions. Turing and Church proved that their models are equal in computational power.

Is it too strong?
The concern should not be that a Turing machine is a too strong model because of the way we construct a Turing machine. Turing machine is essentially a framework for defining a notion of algorithm in its basic, simple steps. Every algorithm executed on a Turing machine can be executed by hand, meaning it is effectively calculable (one direction of Church-Turing thesis). The real question is - is there an effectively calculable function whose computation cannot be encoded in a Turing machine. This all seems that it must hold (and therefore many computer scientists accept Church-Turing thesis as true), but cannot formally be proven just because the term "effectively calculable" is not formally defined.

Why not bound it?
I am not sure if this satisfies your quest for "deep inherent reason why unboundness is a requirement", but think about it this way: What if we bound the tape? Say, a Turing machine must have tape of length at most $M$, for some $M \in \mathbb{N}$. Let's look at $2$ examples:

  1. We can choose/construct a Turing machine $T_M$ that uses exactly $M$ distinct positions on a tape. Then, we can construct a Turing machine $T_{M+1}$ that runs exactly as $T_M$ with additional step - that it writes a symbol after the last symbol on its tape, once it finishes all the running steps of $T_M$.
    This Turing machine (algorithm) $T_{M+1}$ therefore could not exists if we bounded the tape at $M$, but obviously - this algorithm is effectively computable.

  2. Say you want to construct a Turing machine that adds two numbers. What if the length of numbers is more than $M$? We could not add them (nor even write them) with a Turing machine, but can obviously add them (say, by hand) via standard known algorithms for addition (that also doesn't have restrictions on length/tape).

Therefore, we must not bound the tape if we want to be able to compute things that we can in theory compute (by hand). The same arguments holds if we would want to bound the number of steps (time).

Computatioal complexity deals with resources required by an algorithm depending on size of the input, so you might want to look at that subject.


So, are there any attempts to capture the notion of computability and what we know to be computable in the physical world in a model that is finite in nature?

Turing machine is a finite model.

Is it too strong?
The concern should not be that a Turing machine is a too strong model because of the way we construct a Turing machine. Turing machine is essentially a framework for defining a notion of algorithm in its basic, simple steps. Every algorithm executed on a Turing machine can be executed by hand, meaning it is effectively calculable (one direction of Church-Turing thesis). The real question is - is there an effectively calculable function whose computation cannot be encoded in a Turing machine. This all seems that it must hold (and therefore many computer scientists accept Church-Turing thesis as true), but cannot formally be proven just because the term "effectively calculable" is not formally defined.

Why not bound it?
I am not sure if this satisfies your quest for "deep inherent reason why unboundness is a requirement", but think about it this way: What if we bound the tape? Say, a Turing machine must have tape of length at most $M$, for some $M \in \mathbb{N}$. Let's look at $2$ examples:

  1. We can choose/construct a Turing machine $T_M$ that uses exactly $M$ distinct positions on a tape. Then, we can construct a Turing machine $T_{M+1}$ that runs exactly as $T_M$ with additional step - that it writes a symbol after the last symbol on its tape, once it finishes all the running steps of $T_M$.
    This Turing machine (algorithm) $T_{M+1}$ therefore could not exists if we bounded the tape at $M$, but obviously - this algorithm is effectively computable.

  2. Say you want to construct a Turing machine that adds two numbers. What if the length of numbers is more than $M$? We could not add them (nor even write them) with a Turing machine, but can obviously add them (say, by hand) via standard known algorithms for addition (that also doesn't have restrictions on length/tape).

Therefore, we must not bound the tape if we want to be able to compute things that we can in theory compute (by hand). The same arguments holds if we would want to bound the number of steps (time).

Computatioal complexity deals with resources required by an algorithm depending on size of the input, so you might want to look at that subject.


So, are there any attempts to capture the notion of computability and what we know to be computable in the physical world in a model that is finite in nature?

Turing machine is a finite model.


Different model
$\lambda$-calculus is a computational model invented by Turing’s doctoral advisor Alonzo Church. It does not resemble Turing machine and it is based on a concept of definition and application of functions. Turing and Church proved that their models are equal in computational power.

deleted 14 characters in body; added 1 character in body
Source Link
Sandro Lovnički
  • 1.2k
  • 1
  • 7
  • 17

Is it too strong?
The concern should not be that a Turing machine is a too strong model because of the way we construct a Turing machine. Turing machine is essentially a framework for defining a notion of algorithm in its basic, simple steps. Every algorithm executed on a Turing machine can be executed by hand, meaning it is effectively calculable (the $\Rightarrow$one direction of Church-Turing thesis). The real question is - is there an effectively calculable function whose computation cannot be encoded in a Turing machine. This all seems that it must hold (and therefore many computer scientists accept Church-Turing thesis as true), but cannot formally be proven just because the term "effectively calculable" is not formally defined.

Why not bound it?
I am not sure if this satisfies your quest for "deep inherent reason why unboundness is a requirement", but think about it this way: What if we bound the tape? Say, a Turing machine must have tape of length at most $M$, for some $M \in \mathbb{N}$. Let's look at $2$ examples:

  1. We can choose/construct a Turing machine $T_M$ that uses exactly $M$ distinct positions on a tape. Then, we can construct a Turing machine $T_{M+1}$ that runs exactly as $T_M$ with additional step - that it writes a symbol after the last symbol on its tape, once it finishes all the running steps of $T_M$.
    This Turing machine (algorithm) $T_{M+1}$ therefore could not exists if we bounded the tape at $M$, but obviously - this algorithm is effectively computable.

  2. Say you want to construct a Turing machine that adds two numbers. What if the length of numbers is more than $M$? We could not add them (nor even write them) with a Turing machine, but can obviously add them (say, by hand) via standard known algorithms for addition (that also doesn't have restrictions on length/tape).

Therefore, we must not bound the tape if we want to be able to compute things that we can in theory compute (by hand). The same arguments holdholds if we would want to bound the number of steps (time).

Computatioal complexity deals with resources required by an algorithm depending on size of the input, so you might want to look at that subject.


So, are there any attempts to capture the notion of computability and what we know to be computable in the physical world in a model that is finite in nature?

Turing machine is a finite model.

Is it too strong?
The concern should not be that a Turing machine is a too strong model because of the way we construct a Turing machine. Turing machine is essentially a framework for defining a notion of algorithm in its basic, simple steps. Every algorithm executed on a Turing machine can be executed by hand, meaning it is effectively calculable (the $\Rightarrow$ direction of Church-Turing thesis). The real question is - is there an effectively calculable function whose computation cannot be encoded in a Turing machine. This all seems that it must hold (and therefore many computer scientists accept Church-Turing thesis as true), but cannot formally be proven just because the term "effectively calculable" is not formally defined.

Why not bound it?
I am not sure if this satisfies your quest for "deep inherent reason why unboundness is a requirement", but think about it this way: What if we bound the tape? Say, a Turing machine must have tape of length at most $M$, for some $M \in \mathbb{N}$. Let's look at $2$ examples:

  1. We can choose/construct a Turing machine $T_M$ that uses exactly $M$ distinct positions on a tape. Then, we can construct a Turing machine $T_{M+1}$ that runs exactly as $T_M$ with additional step - that it writes a symbol after the last symbol on its tape, once it finishes all the running steps of $T_M$.
    This Turing machine (algorithm) $T_{M+1}$ therefore could not exists if we bounded the tape at $M$, but obviously - this algorithm is effectively computable.

  2. Say you want to construct a Turing machine that adds two numbers. What if the length of numbers is more than $M$? We could not add them (nor even write them) with a Turing machine, but can obviously add them (say, by hand) via standard known algorithms for addition (that also doesn't have restrictions on length/tape).

Therefore, we must not bound the tape if we want to be able to compute things that we can in theory compute (by hand). The same arguments hold if we would want to bound the number of steps (time).

Computatioal complexity deals with resources required by an algorithm depending on size of the input, so you might want to look at that subject.


So, are there any attempts to capture the notion of computability and what we know to be computable in the physical world in a model that is finite in nature?

Turing machine is a finite model.

Is it too strong?
The concern should not be that a Turing machine is a too strong model because of the way we construct a Turing machine. Turing machine is essentially a framework for defining a notion of algorithm in its basic, simple steps. Every algorithm executed on a Turing machine can be executed by hand, meaning it is effectively calculable (one direction of Church-Turing thesis). The real question is - is there an effectively calculable function whose computation cannot be encoded in a Turing machine. This all seems that it must hold (and therefore many computer scientists accept Church-Turing thesis as true), but cannot formally be proven just because the term "effectively calculable" is not formally defined.

Why not bound it?
I am not sure if this satisfies your quest for "deep inherent reason why unboundness is a requirement", but think about it this way: What if we bound the tape? Say, a Turing machine must have tape of length at most $M$, for some $M \in \mathbb{N}$. Let's look at $2$ examples:

  1. We can choose/construct a Turing machine $T_M$ that uses exactly $M$ distinct positions on a tape. Then, we can construct a Turing machine $T_{M+1}$ that runs exactly as $T_M$ with additional step - that it writes a symbol after the last symbol on its tape, once it finishes all the running steps of $T_M$.
    This Turing machine (algorithm) $T_{M+1}$ therefore could not exists if we bounded the tape at $M$, but obviously - this algorithm is effectively computable.

  2. Say you want to construct a Turing machine that adds two numbers. What if the length of numbers is more than $M$? We could not add them (nor even write them) with a Turing machine, but can obviously add them (say, by hand) via standard known algorithms for addition (that also doesn't have restrictions on length/tape).

Therefore, we must not bound the tape if we want to be able to compute things that we can in theory compute (by hand). The same arguments holds if we would want to bound the number of steps (time).

Computatioal complexity deals with resources required by an algorithm depending on size of the input, so you might want to look at that subject.


So, are there any attempts to capture the notion of computability and what we know to be computable in the physical world in a model that is finite in nature?

Turing machine is a finite model.

added 777 characters in body
Source Link
Sandro Lovnički
  • 1.2k
  • 1
  • 7
  • 17

IIs it too strong?
The concern should not be that a Turing machine is a too strong model because of the way we construct a Turing machine. Turing machine is essentially a framework for defining a notion of algorithm in its basic, simple steps. Every algorithm executed on a Turing machine can be executed by hand, meaning it is effectively calculable (the $\Rightarrow$ direction of Church-Turing thesis). The real question is - is there an effectively calculable function whose computation cannot be encoded in a Turing machine. This all seems that it must hold (and therefore many computer scientists accept Church-Turing thesis as true), but cannot formally be proven just because the term "effectively calculable" is not formally defined.

Why not bound it?
I am not sure if this satisfies your quest for "deep inherent reason why unboundness is a requirement", but think about it this way: What if we bound the tape? Say, a Turing machine must have tape of length at most $M$, for some $M \in \mathbb{N}$. Let's look at $2$ examples:

  1. We can choose/construct a Turing machine $T_M$ that uses exactly $M$ distinct positions on a tape. Then, we can construct a Turing machine $T_{M+1}$ that runs exactly as $T_M$ with additional step - that it writes a symbol after the last symbol on its tape, once it finishes all the running steps of $T_M$.
    This Turing machine (algorithm) $T_{M+1}$ therefore could not exists if we bounded the tape at $M$, but obviously - this algorithm is effectively computable.

  2. Say you want to construct a Turing machine that adds two numbers. What if the length of numbers is more than $M$? We could not add them (nor even write them) with a Turing machine, but can obviously add them (say, by hand) via standard known algorithms for addition (that also doesn't have restrictions on length/tape).

Therefore, we must not bound the tape if we want to be able to compute things that we can in theory compute (by hand). The same arguments hold if we would want to bound the number of steps (time).

Computatioal complexity deals with resources required by an algorithm depending on size of the input, so you might want to look at that subject.


So, are there any attempts to capture the notion of computability and what we know to be computable in the physical world in a model that is finite in nature?

Turing machine is a finite model.

I am not sure if this satisfies your quest for "deep inherent reason why unboundness is a requirement", but think about it this way: What if we bound the tape? Say, a Turing machine must have tape of length at most $M$, for some $M \in \mathbb{N}$. Let's look at $2$ examples:

  1. We can choose/construct a Turing machine $T_M$ that uses exactly $M$ distinct positions on a tape. Then, we can construct a Turing machine $T_{M+1}$ that runs exactly as $T_M$ with additional step - that it writes a symbol after the last symbol on its tape, once it finishes all the running steps of $T_M$.
    This Turing machine (algorithm) $T_{M+1}$ therefore could not exists if we bounded the tape at $M$, but obviously - this algorithm is effectively computable.

  2. Say you want to construct a Turing machine that adds two numbers. What if the length of numbers is more than $M$? We could not add them (nor even write them) with a Turing machine, but can obviously add them (say, by hand) via standard known algorithms for addition (that also doesn't have restrictions on length/tape).

Therefore, we must not bound the tape if we want to be able to compute things that we can in theory compute (by hand). The same arguments hold if we would want to bound the number of steps (time).

Computatioal complexity deals with resources required by an algorithm depending on size of the input, so you might want to look at that subject.


So, are there any attempts to capture the notion of computability and what we know to be computable in the physical world in a model that is finite in nature?

Turing machine is a finite model.

Is it too strong?
The concern should not be that a Turing machine is a too strong model because of the way we construct a Turing machine. Turing machine is essentially a framework for defining a notion of algorithm in its basic, simple steps. Every algorithm executed on a Turing machine can be executed by hand, meaning it is effectively calculable (the $\Rightarrow$ direction of Church-Turing thesis). The real question is - is there an effectively calculable function whose computation cannot be encoded in a Turing machine. This all seems that it must hold (and therefore many computer scientists accept Church-Turing thesis as true), but cannot formally be proven just because the term "effectively calculable" is not formally defined.

Why not bound it?
I am not sure if this satisfies your quest for "deep inherent reason why unboundness is a requirement", but think about it this way: What if we bound the tape? Say, a Turing machine must have tape of length at most $M$, for some $M \in \mathbb{N}$. Let's look at $2$ examples:

  1. We can choose/construct a Turing machine $T_M$ that uses exactly $M$ distinct positions on a tape. Then, we can construct a Turing machine $T_{M+1}$ that runs exactly as $T_M$ with additional step - that it writes a symbol after the last symbol on its tape, once it finishes all the running steps of $T_M$.
    This Turing machine (algorithm) $T_{M+1}$ therefore could not exists if we bounded the tape at $M$, but obviously - this algorithm is effectively computable.

  2. Say you want to construct a Turing machine that adds two numbers. What if the length of numbers is more than $M$? We could not add them (nor even write them) with a Turing machine, but can obviously add them (say, by hand) via standard known algorithms for addition (that also doesn't have restrictions on length/tape).

Therefore, we must not bound the tape if we want to be able to compute things that we can in theory compute (by hand). The same arguments hold if we would want to bound the number of steps (time).

Computatioal complexity deals with resources required by an algorithm depending on size of the input, so you might want to look at that subject.


So, are there any attempts to capture the notion of computability and what we know to be computable in the physical world in a model that is finite in nature?

Turing machine is a finite model.

added 4 characters in body
Source Link
Sandro Lovnički
  • 1.2k
  • 1
  • 7
  • 17
Loading
added 206 characters in body
Source Link
Sandro Lovnički
  • 1.2k
  • 1
  • 7
  • 17
Loading
Source Link
Sandro Lovnički
  • 1.2k
  • 1
  • 7
  • 17
Loading