Computer-Simulation Model Theory (P= NP is not provable)
Rasoul Ramezanian

TL;DR
The paper introduces Computer-Simulation Model Theory (CSMT), a new logical reasoning framework inspired by the simulation hypothesis, to analyze the P vs NP problem by constructing models where P=NP does not hold.
Contribution
It proposes CSMT as an independent reasoning method based on computer simulations, extending mathematical model theory to include computational and simulation aspects.
Findings
Constructed a simulation model where P≠NP holds.
Demonstrated CSMT's applicability to the P vs NP problem.
Provides a new perspective on logical reasoning independent of the simulation hypothesis.
Abstract
The simulation hypothesis says that all the materials and events in the reality (including the universe, our body, our thinking, walking and etc) are computations, and the reality is a computer simulation program like a video game. All works we do (talking, reasoning, seeing and etc) are computations performed by the universe-computer which runs the simulation program. Inspired by the view of the simulation hypothesis (but independent of this hypothesis), we propose a new method of logical reasoning named "Computer-Simulation Model Theory", CSMT. Computer-Simulation Model Theory is an extension of Mathematical Model Theory where instead of mathematical-structures, computer-simulations are replaced, and the activity of reasoning and computing of the reasoner is also simulated in the model. (CSMT) argues that: For a formula , construct a computer simulation model , such that…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsComputability, Logic, AI Algorithms · Graph Theory and Algorithms · Complexity and Algorithms in Graphs
Computer-Simulation Model Theory
( is not provable)
**Rasoul Ramezanian
Mashhad, Iran** [email protected], [email protected]
Abstract
The simulation hypothesis says that all the materials and events in the reality (including the universe, our body, our thinking, walking and etc) are computations, and the reality is a computer simulation program like a video game. All works we do (talking, reasoning, seeing and etc) are computations performed by the universe-computer which runs the simulation program.
Inspired by the view of the simulation hypothesis (but independent of this hypothesis), we propose a new method of logical reasoning named ”Computer-Simulation Model Theory”, CSMT.
Computer-Simulation Model Theory is an extension of Mathematical Model Theory where instead of mathematical-structures, computer-simulations are replaced, and the activity of reasoning and computing of the reasoner is also simulated in the model. (CSMT) argues that:
for a formula , construct a computer simulation model such that
- 1-
* does not hold in , and*
- 2-
*the reasoner human being, the one who lives inside the reality cannot distinguish from the reality , *
then
* cannot prove in reality.*
Although is inspired by the simulation hypothesis, but this reasoning method is independent of the acceptance of this hypothesis. As we argue in this part, one may do not accept the simulation hypothesis, but knows a valid reasoning method.
As an application of Computer-Simulation Model Theory, we study the famous problem P vs NP. We let and construct a computer simulation model such that does not hold in .
1 Simulation Hypothesis
Human’s worldview changes with the times. At the time of Omar Khayyam, the industry was limited to the Pottery, and Omar Khayyam (inspired by the pottery) assumed the universe as a water vessel and asked ”hey you! where is the potter?”
Our worldview changes as our industry changes and our current industry are artificial intelligence, virtual reality, robotics, and video games. Using artificial intelligence, we are going to make new creatures even more intelligent than us. Sophia Robot 222 is one of these creatures.
So Nick Bostrom (inspired by the computer industry) asks ”Are you living in a computer simulation?” (see [1]); we might be all creatures in a video game developed by a programmer. We almost are going to believe this new worldview as Elon Musk says that he feels ”We’re Probably Living in a Simulation”.
Briefly, the simulation hypothesis is the following sentence
we are living in a simulation program (a video game) which we, inhabitants, call it Reality. This simulation program is run on a computer device (similar to your PC or your laptop) which we call it universe-computer (UC).
Regarding reality as a computer simulation means that all we (human beings) do (thinking, walking, reasoning, talking, jumping, and etc) are computations and procedures performed by the ”Universe-Computer” (UC). When I think, it is UC that computes, when I prove a theorem, it is UC that computes, when I breathe, it is again UC, and etc. Physics, Biology, Logic and etc are all computational process which UC performs.
So, we may name human beings (the one who lives in) to be the computist as his/her thinking, breathing, walking and etc are all computations done by UC.
In the next section, we discuss our proposed reasoning method . For justification of our reasoning method, we do not need the simulation hypothesis to be ”True”, we just need it to be ”Possible”. So one may do not accept the simulation hypothesis, but accepts the as a valid reasoning method.
2 Computer-Simulation Model Theory
Computer-Simulation Model Theory is an extension of the Model Theory [2], where the reasoner also lives inside the model and is an inhabitant of the model.
Model theory is a branch of mathematical logic that studies that mathematical-structures satisfy which formulas. Given a set of formulas , and a formula , a way to reason that is not logically derivable from is simply by constructing a mathematical-structure , such that all formulas in holds in () but does not hold in the world (). This reasoning is true, because of the soundness of deduction system 333For example, suppose that we want to show that a formula is not True for all graphs. We only need to construct a graph structure which does not satisfy ..
In Computer-Simulation Model Theory, instead of mathematical-structure, we deal with computer-simulations. In model theory, the reasoner (the one who thinks and reasons) is out of the mathematical-structure, while In CSMT, the reasoner (the one who thinks, computes, and …) lives and simulated inside the computer-simulation.
In a computer-simulation model, a formula could be provable for the creator of the computer-simulation but not provable for the computist. But we assume soundness, that is if the computist proves a formula then the formula is true in the computer-simulation.
The Computer-Simulation Model Theory argues that:
to show that the reasoner (the computist) cannot prove a sentence in the reality (), construct a computer simulation such that
- (1)
the reasoner (computist) cannot distinguish from the reality , and
- (2)
does not hold in .
If our deduction system is sound then all we prove must hold in reality. So, if is a computer simulation that we cannot say whether we live in or in the reality, then if we can prove in the reality, the statement must also be true at .
Note that our activity of proving and reasoning are computations performed by the UC of reality. This property differs CSMT from model theory.
The activity of the reasoning and computing of the computist is also performed by the simulation, and this activity can affect the model.
We are in the age of artificial intelligence, and constructing a computer simulation exactly similar to the reality is completely plausible. Using artificial intelligence, we can simulate Physics, Biology, our thinking, our reasoning and etc.
The mathematical Model theory considers the reasoner outside of the model. Model theory is not a complete and real reasoning method since in reality, we (the reasoner) are inhabitant and inside the model. In CSMT, an extension of the mathematical model theory, the process of reasoning is also considered in the model, and this process may affect other parts of the model.
2.1 Computer-Simulation Model
A computer-simulation model consists of the three following parts
- i.
The UC of .
- ii.
The Computist.
- iii.
A set of instruction that the computist (the inhabitants in ) interacts with UC through them. [when we walk, reason, breathe, and etc, we are asking UC to perform the computation of walking, reasoning, breathing, and etc].
All we do (walking, reasoning, and etc) are procedures performed by UC of the simulation. So, to formally describe a computer-simulation model, we just need to define
- •
what a procedure is?
- •
how the computist using the procedures interacts with the UC of the computer-simulation model?
In the next definitions 2.1, 2.2, and 2.3, we clarify these notions.
Definition 2.1
The UC of a computer-simulation model is a tuple
[TABLE]
where
- 1.
* is a nonempty set (the set of all instructions), and is a nonempty subset called the set of starting instructions.*
- 2.
* is a nonempty set called the set of configurations such that to each ,*
- –
a unique configuration is associated as the start configuration, and
- –
to each , a unique string is associated.
- 3.
The transition box*, , is a total function from to 444undefined symbol.. The function is executable by a computer device 555We assume that the computer device is equipped and extended with memory cards as much as needed and we never face the shortage of memory, and thus Turing machines are also executable by computer devices..*
- 4.
The successful box*, , is a total function from to . The function is executable by a computer device.*
Note that when we say a computer-simulation model, then the simulation program of the model must be executable by a computer device and because of this, two functions and must be executable by a computer device.
Definition 2.2
- i.
A procedure (an algorithm) is a finite set (a finite set of instructions), satisfying the following condition
- The determination condition*: for every either for all , , or at most there exists one instruction such that .*
We refer to the set of all procedures by the symbol .
- ii.
We let be a total function such that for each procedure and , if then
- –
, and
- –
.
The function controls that which instruction of a procedure must apply on a given configuration .
Definition 2.3
For every computer-simulation model , we consider the followings to be true:
Free will of Inhabitants:* The computist is free to do the following things in any order that he wants:*
he can freely choose an arbitrary instruction and an arbitrary configuration to apply the on , and
he can freely choose an arbitrary configuration to apply the on.
Computable Languages:* A string , , is in the language of a procedure , denoted by , whenever the computist can construct a sequence of configurations in such that*
- –
,
- –
each , , is obtained by applying on ,
- –
the outputs for ,
- –
and either or .
The computist calls the successful computation path of on . The length of a computation path is the number of configurations appeared in.
Computable Functions:* A partial function , , is computed by a procedure , whenever for , the computist can construct a sequence of configurations in such that*
- –
,
- –
each , , is obtained by applying on ,
- –
the outputs for ,
- –
and either or ,
- –
.
Parallel use of UC:* The computist may start to apply the UC on a procedure and a string , however, he does not have to keep on the computation until the successful box outputs . The computist can leave the computation on at any stage of his activity and choose freely any other procedure and any other string to apply UC on them.*
Time Complexity:* The time complexity of computing a procedure on an input string , denoted by , is , for some , whenever the computist constructs a successful computation path of the syntax-procedure on with length .*
Time Complexity:* Let and . The computist says that the time complexity of the computation of the language is less than whenever there exists a procedure such that the language defined by the computist via , i.e., , is equal to , and for all , .*
Complexity Classes:* The computist defines the time complexity class to be the set of all languages that he/she can computes in polynomial time. He/She also defines the complexity class as follows:*
- * iff there exists and a polynomial function such that for all ,*
.
Turing Computability:* The UC of the simulation is sufficiently powerful such that the computist can compute all partial recursive (Turing computable) function using the UC. That is, for every Turning machine , there exists a procedure that is .*
Black Box:* The computist lives inside the simulation and does not access to the structure of and . For the computist, and are black boxes.*
Deduction System:* There exist a procedure such that for every proof , and every formula , means is the proof of . The computist using the procedure does his logical reasoning. Note that the procedure is also computed by the universe-computer UC.*
Soundness:* If the computist can prove a sentence , then is True in the simulation.*
The universe-computer of the simulation, , works in linear time. Also, the computist knows that the UC works in linear time. There exists a universal clock in the simulation , shown by , such that the computist uses it and measures passing time. That is when the computist insert a configuration to () the number of clocks of that the computist waits to receive the output is linear with respect to the length of .
In c10, we insist on proof procedure , we could similarly talk about ”walking procedure”, ”breathing procedure” and etc, but we disregard them as we aim to construct a counter-model for . As an example of a computer-simulation model, one may see the example 7.1.
2.2 Indistinguishability
In the following definitions, we formally describe ”indistinguishability” between computer-simulation models.
Definition 2.4
Suppose is a simulation and is a procedure in . The experience of the computist on the procedure , denoted by , is defined to be the set of all pairs where the computist ran procedure on input and received output . Note that always, is a finite set (although new pairs are always added to it) since, at each stage of time, the computist could only run the procedure on only finite inputs.
Definition 2.5
Suppose and are two computer-simulation model where UC is the universe-computer of and is the universe-computer of . We say that the computist who is an inhabitant in cannot say if he lives inside or , , whenever
- 1-
* = ,*
- 2-
At each stage of time, the computist based on his experiences of the procedures cannot say that the universe-computer of is UC or .
We formally defined what we mean by a computer-simulation model and indistinguishability of models. In computer-simulation model theory, CSMT, the reasoner (the computist) is also involved in the model. To show the usefulness and importance of CSMT, we study the famous problem P vs NP. Using CSMT, in the following of this paper, we show that there exists no proof for .
- •
We introduce two notions: non-predetermined functions and persistently evolutionary Turing machines.
- •
We construct a computer simulation world, named , which in this world. The UC of is a persistently evolutionary Turing machine.
- •
We discuss that the reality is not distinguishable from a persistently evolutionary model.
3 Non-predetermined functions
The most important and fundamental notion of mathematics is function. A function is a process associating each element of a set , to a single element of another set . Classically, we assumed that all functions in mathematics are pre-determined.
In this section, we discuss functions that are not pre-determined and they are eventually determined through the way we start to associate for every element .
We introduce Persistently Evolutionary Turing machines that compute non-predetermined functions.
We also discuss that if the UC of our reality persistently evolves then our reality will have alternate (alternate realities are worlds that could exist next to, in parallel of, or in place of our own, if we interacted with the world differently).
Let be a process that associates elements of a set to the elements of another set . If the process works well-defined then we know as a mathematical function. But being well-defined does not force the process to be predetermined.
Suppose that and are two different elements of . I want to use the process to determine the value of for and . It is up to me to first perform the process on or .
If is predetermined the it does not matter to perform the process on ordering or ordering . But if is non-predetermined then different order of inputs causes different alternate functions which one of them is the function that we are constructing.
Alternate functions are functions that could exist in place of our function (if we interacted with different ordering of inputs, those alternate could happen).
For example, consider the following process :
- •
* is a set which is initially empty.*
- •
for a given natural number , if there exists a pair then output , else update and output .
The function is a non-predetermined function over natural numbers. I input and the process will associates the following: , , , and . The value of other numbers are yet non-predetermined and as soon as I perform process on each number the value is determined.
The function is not predetermined. It is determined eventually, but it is always undetermined for some numbers.
- -
The function is well-defined, and associates to each input a single output.
- -
For every natural number, the function is definable.
- -
If I inputted , I would have an alternate which would associate: , , , and .
4 Persistently Evolutionary Turing machines
Persistently Evolutionary Turing machines are an extension of the notion of Turing machines in which the structure of the machine can evolve through each computation.
A Turing machine consists of a set of states , and a table of transitions which both are fixed and remain unchanged forever. In Persistently Evolutionary Turing machines, we allow the set of states and the table of transitions changes through each computation.
As a Persistently Evolutionary Turing Machine computes on an input string , the machine can add or remove some of its states and transitions, and thus after the computation on the input is completed, the sets and changed.
However these changes are persistent, that is, if we already input a string and the machine outputs , then whenever we again input the machine outputs the same , and the changes of states and transitions does not violate well-definedness.
One may consider that we have a BOX and we set a Turing machine in the box with some rules of adding and removing of states and transitions. Then, We input strings to the BOX and for each string, the BOX outputs a single string. The machine in the BOX changes itself but the behavior of the BOX is well-defined.
Persistently Evolutionary Turing Machines computes non-predetermined functions.
In the following example, we introduce a persistently evolutionary nondeterministic finite automate [2].
Example 4.1
*(In the sequel of the paper, we will refer to the persistently evolutionary machine introduced in this example by ). ***
Define as follows666 is the class of all nondeterministic finite automata , where for each state , and , there exists at most one transition from with label .:
Let , 777F is the set of accepting states, and . Suppose where . Applying the automata on , one of the three following cases may happen:
- case1.
The automata reads all successfully and stops in an accepting state. In this case, the structure of the automata does not change and let .
- case2.
The automata reads all successfully and stops in a state which is not an accepting state.
- –
*If the automata can transit from the state to an accepting state by reading *one ** alphabet, then let .
- –
If it cannot transit (from to an accepting state) then let to be a new automata , where , , .
- case3.
The automata cannot read all successfully,and after reading a part of , say , , it crashes in a state that is not defined. In this case, we let be a new automata , where (all are new states that does not belong to ), , and .
The machine persistently evolve, that is, if it (rejected) accepted a string already, then it would (reject) accept the string for any future trials as well. The language is not predetermined and it eventually is determined.
For example, assume that initially is , , . Now I input the string and according to case 3, the machine evolves and new states and transitions are added and also . Now if I input the string then according to case 2, rejects it. However, If at first I inputted to the machine then it would accept it.
4.1 Time complexity of Evolutionary Turing machines
The time-complexity [1] of Persistent Evolutionary Turing Machines is defined similar to the time-complexity of Turing machines except that for each (adding) removing of states or transitions, we count one extra clock.
Proposition 4.2
The time complexity of the machine in example 4.1 is linear.
Proof. It is straightforward.
4.2 Executable By Computer Devices
Persistently Evolutionary Turing machines (similar to Turing machines) are executable by computer devices if as soon as the device needed extra memory resources, we are ready to add memory cards to the motherboard of the device.
Two simulations and introduced in example 7.1, and in definition 7.4 are computer simulations. The and of the are Turing computable and the and od are Persistently Evolutionary Turing computable.
5 Alternate Reality
Alternate realities are worlds that could exist next to, in parallel of, or in place of our own, if we interacted with the world differently.
If the UC of our reality persistently evolves then we have alternate realities. If this morning, I first had breakfast and then washed my hands, I would be in another alternate reality, but since I first washed my hands and then had breakfast, I am in the alternate world which we call it ”reality”.
Although there are lots of alternate realities, only one of them is actualized. UC evolves as human beings (the one who lives in this simulation) interact with it. The future is not predetermined and via our interactions, we always are moving to new alternate realities.
References
- [1] S. Arora, B. Barak, Computational Complexity, a modern approach. Cambridge University Press, 2007.
- [2] A. Meduna, Automata and Languages: Theory and Applications, Springer, 2000.
6 Contradicts with Non-predeterminism
In following, I construct a computer simulation and show that in this simulation is not equal to .
As, we discussed the first section, assuming that the reality is a computer simulation then all we (human beings) do (thinking, walking, reasoning, talking, jumping, and etc) are procedures performed by a computer, which we called it ”Universe-Computer” (UC). When I think, it is UC that computes, when I prove a theorem, it is UC that computes, when I breathe, it is UC, and etc. Physics, Biology, Logic and etc are all computational process which UC performs. So, we may name human beings (the one who lives in) to be the computist as his/her thinking, breathing, walking and etc are all computations done by UC.
What if UC persistently evolves? Then multiverse and alternate realities are possible (see section 5), and it is not predetermined that we are moving to which alternate realities, and future alternate realities are eventually determined by our interaction with UC.
In the next section, we construct a computer simulation that its UC persistently evolves and it is not predetermined that what alternate realities happen as we move to the future. We show that contradicts with non-predeterminism and thus in this simulation is not equal to .
7 A Computer Simulation which does not hold in
According to the reasoning method , If we want to show that is not provable, we need to construct a simulation such that
we (as the one who lives in) cannot distinguish the simulation from the reality.
- 2.
does not hold in the simulation
We first, in example 7.1, introduce a computer-simulation model named . Then in definition 7.4, we slightly change the UC of and construct a computer-simulation model named which its UC persistently evolves. Then in theorem 7.9, we prove that in .
Example 7.1
We introduce a computer-simulation model as follows:
Let
- ,
- * be two finite set with and*
- * has a symbol .*
The UC of the simulation , is defined as follows:
,
, and
- 2)
, for each , , and for each , .
Note that the programming language of is exactly the standard syntax of configurations and transition functions of Turing machines.
Let be an arbitrary configuration then
- –
* is defined to be ,*
- –
* is defined to be , and*
- –
for other cases is defined to be .
- 4-
Let be arbitrary
- –
if then is defined to be ,
- –
if then is defined to be , and
- –
otherwise is defined to be .
- 5-
For each , and , if there exists for some , and , then is defined to be else it is defined to be .
Theorem 7.2
Accepting the Church-Turing thesis, the computist in the simulation , can compute all the procedures that we (human beings) can compute in reality 888If we accept Church-Turing thesis, all the procedures in the reality are Turing computable..
- 1-
For each procedure , there exists a Turing machine such that for every , and iff and .
- 2-
For each Turing machine , there exists a procedure , such that for every , and iff and .
Proof. It is straightforward for us not for the computist who lives inside the simulation .
We as the one who creates the simulation can prove the above theorem since we know the inner structure of and . The computist who lives inside the simulation cannot be aware of the above theorem as he does not have access to the inner structure of the UV. However, he/she is always free to propose a thesis about his/her world (simulation) similar to what we did, and named it Church-Turing thesis 999 Note that we (the human beings) do not have access to the inner structure of the reality, we call the Church Turing statement to be a thesis..
Definition 7.3
A UC, is called to be static, whenever the inner structure of two boxes and does not change due to interaction with the computist. It is called persistently evolutionary whenever the inner structure of at least one boxes changes but persistently, i.e., in the way that the boxes work well-defined.
The UC defined in the example 7.1 is static.
Definition 7.4
We introduce a computer simulation which the UC of ,
[TABLE]
is defined as follows.
-
Two sets and are defined to be the same and in example 7.1 respectively, and consequently the set of procedures of the , i.e., is the same .
-
The transition box is also defined similar to the transition box in example 7.1.
-
The successful box is defined as follows: let be arbitrary
-
–
if then ,
- –
if then the works exactly similar to the the persistently evolutionary machine introduced in example 4.1. On input , if outputs , the successful box outputs , and
- –
otherwise .
Proposition 7.5
Computer-simulations and satisfies conditions of definition 2.3.
Proof. We only need to discuss for the simulation . By proposition 4.2, the UC of works in linear time.
Note that the of the is a persistently evolutionary machine. For the computist the set of procedures (algorithms) in the simulation is the same set of procedures in the simulation , i.e . However for some procedures, say , the language is the simulation could be different from the language in . For some , we have is a non-predetermined language. The procedure is fixed and does not change through time, but since the structure of UC () changes through time.
The computist in the simulation thinks that everything is static since the structure of the procedure does not change and the computist also does not have access to the structure of the UC of the simulation.
Theorem 7.6
Every recursively enumerable language can be computed in the environment . That is, for every recursively enumerable language , there exists such that .
Proof. It is straightforward. For each Turing machine , one may construct a procedure such that .
Proposition 7.7
The complexity class is a subset of .
Proof. It is straightforward.
The converse of Theorems 7.6, and 7.7 do not hold true. In the simulation , the computist can compute some languages in polynomial time which are not predetermined (see the proof of theorem 7.9).
The item c1 of definition 2.3 says that the computist is free in the way of his/her interactions with the UC. In the simulation , the UC is a persistently evolutionary machine and based on different orderings of the interactions of the computist, we would have different alternate futures.
Definition 7.8
We say a function is sub-exponential, whenever there exists such that for all , .
Theorem 7.9
In the simulation ,
.
That is, there exists a procedure such that
- •
the language that the computist computes through is not predetermined,
- •
the language belongs to the class ,
- •
there exists no procedure , such that is equal to , and for some , for all , if then
**
where is a sub-exponential function. In other world, is in but not in .
Proof. Consider the following procedure
- .
The language of the procedure , , is not predetermined in simulation . That is, as the computist chooses a string to check whether is an element of , the inner structure of the universe-computer, evolves. Depending on the ordering of the strings, says , that the computist chooses to check whether the language eventually is determined.
It is obvious that the language belongs to (due to the definition of time complexity in definition 2.3).
Let . It is again obvious that belongs to .
Suppose there exists a procedure that the computist can compute by in time complexity less than a sub-exponential function . Then for some , for all with length greater than , belongs to whenever
- the computist constructs a successful computation path of the procedure on , for some .
Let be the maximum length of those strings that until now are accepted by the persistently evolutionary machine (see example 4.1) which is inside the of . Define .
For every , let be the computational path of the procedure on the string . The is generated by the transition box of . Let
and
We refer by to the number of elements of , we have if . Also let , and .
Let with be arbitrary. Two cases are possible: either or .
Consider the first case. .
The computist wants to check if the string is in , and the UC of the simulation , that is , works on (the procedure and the string ), to compute whether is in or not. Since the set is empty, the execution of on does not make the to evolve, and it remains unchanged.
- •
If the computist in the simulation , computes that then it means that there exists a string such that
and .
- (i)
Since the computist has the free will (see c1 of definition 2.3), he first starts to computes procedure on all strings in with length sequentially. As the length of is greater than , all strings with length are accepted by the persistently evolutionary Turing machine (see item-3 of example 4.1) which is inside .
- (ii)
Then the computist checks that whether is . But because of the evolution of happened in part (i), the UC on the computation of on outputs , and thus is not an element of in the simulation (see the item-2 of example 4.1). So , and it contradicts with .
- •
If the computist in the simulation , computes that then it means that for all strings , , we have . But it contradicts with the free will of the computist again. As the length is greater than , the computist may choose a string with and by the item-3 of example 4.1, we have , contradiction.
Consider the second case. .
Suppose that the computist, before computing on , starts to compute the procedure on all strings ’s, for all , and then computes procedure on all strings ’s, for all respectively.
Since , the computist have for all , and of evolves through computing on ’s. The UC evolves in the way that outputs for all configuration in
[TABLE]
After that, the computist starts to compute on . Either the computist finds or .
- •
Suppose the first case happens and . It contradicts with the free will of the computist. The computist computes on all strings , sequentially, and would make . Then the evolves in the way that, it will output for all configurations , , and thus there would exist no which implies , contradiction.
- •
Suppose the second case happens and . Since , during the computation of on , only numbers of configurations of the form , are given as input to the . Therefore there exists a string such that none of its successors have been input to the persistently evolutionary Turing machine , and if the computist chooses and computes on it, then which implies . Contradiction.
We showed that cannot be computed by any that its time complexity is less that a sub-exponential function. Thus does not belong to the class . But because of the procedure , we have belongs to and therefore in the simulation ,
.
Note that the proof of Theorem 7.9 cannot be carried by the computist who lives in the environment. The above proof is done by us (the creator of the simulation ). The theorem simply says that if belongs to then it forces the computist to interacts with the of the simulation in some certain orders, which conflicts with the item c1 of definition 2.3.
8 Reality is not distinguishable from a Persistently Evolutionary Simulation Model
We, inhabitants of reality, can never find out whether the reality persistently evolves or not. We can never discover that whether the UC of the reality is a Turing machine or a Persistently Evolutionary Turing machine.
In previous sections, we introduce two computer simulations and which the set of their procedures are the same, i.e., . The UC of is static and the UC of persistently evolves, though the computist cannot be aware that whether the UC of () is static or persistently evolves.
Procedures in the simulation (procedures in the set ) are fixed and do not change, but for some , we have is non-predetermined due to the evolution of the UC of (see 7.9). We as the creator of the simulation , we know that the language of the procedure in the proof of 7.9 is non-predetermined but the computist who lives inside cannot be sure that is not predetermined and he/she may think that is static.
We are also the computist of reality, and we do not have access to the UC of reality. The UC of reality is a black box for us. Actually, the UC of any computer simulation (video game) is a black box for its inhabitants.
The set of the procedures of the reality is the set of all Turing machines, i.e. is the set of all Turing machines.
The structure of Turing machines is fixed and does not change through computations (similar to the procedures of simulations and ), but we (human beings, inhabitants of the reality) cannot be sure that the language of Turing machines are predetermined.
At any moment of time, we only interact with a finite number of times with the UC, and based on a finite number of interactions, it is not possible to discover that if the UC is static or persistently evolves.
Definition 8.1
(BLACK BOX)**. Let and be two sets,
- •
an input-output black box , for an observer, is a box that
- –
The observer does not see the inner instruction of the box, and
- –
the observer chooses elements in , and input them to the box, and receives elements in as output.
- •
We say an input-output black box behaves well-defined whenever if the observer inputs to the black box, and the black box outputs at a stage of time, then whenever in future if the observer inputs the same again, the black box outputs the same .
- •
We say a well-defined black box is static (not order-sensitive) whenever for all , for every , for every permutation on , if the observer inputs respectively to once, and receives , and then we reset the black box. After resetting, if the observer inputs x_{\sigma(1)},x_{\sigma(2)},$$...,x_{\sigma(n)} respectively to , then the outputs of for each would be the same already output , before reset.
- •
If an observer cannot reset a black box , then he/she can never discover whether the black box is static or order-sensitive.
Proposition 8.2
- •
For every finite sets of pairs , there exists a Turing machine such that for all , if we give as an input to , the Turing machine outputs .
- •
For every finite sets of pairs , there exists a Persistent evolutionary Turing machine such that for all , if we give as an input to , the Persistent evolutionary machine outputs .
Proof. It is straightforward.
Corollary 8.3
Let be an input-output black box for an observer. At each stage of time, the observer has observed only a finite set of input-output pairs. By the previous proposition, at each stage of time, the observer knows both the following cases to be possible:
- 1-
There exists a Turing machine inside the black box .
- 2-
There exists a Persistent evolutionary Turing machine inside the black Box .
Therefore, We (which do not have access to the UC of the reality) can never discover that whether the UC of the reality is static or order-sensitive and persistently evolves.
The UC of the simulation ( and ) works in linear time. As we do not have access to the inner side of the UC of reality, we cannot say whether the ”successful box” of the reality evolves or not. The universe-computer, UC, of the reality is a linear-time oracle for us (as the computist), and a linear-time oracle does not affect complexity classes.
We can never distinguish the reality from .
9 Conclusion
- 1-
We introduced a new method of reasoning named .
- 2-
We constructed a computer simulation which its universe-computer, UC, persistently evolves.
- 3-
We proved, in the computer simulation , is not equal to . The simulation is a counter-model for .
- 4-
We (who lives in the reality) does not have access to the UC of the reality, it is a black box for us, and we can never discover that whether the UC of the reality is static or persistently evolves.
- 5-
We cannot prove , since if we could prove , then we could discover that the UC of the reality does not persistently evolve, it contradicts with item 4.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] N. Bostrom, Are you living in a computer simulation , Philosophical Quarterly, Vol. 53, 2003.
- 2[2] D. Marker, Model Theory: an introudction , Springer, 2002.
- 3[1] S. Arora, B. Barak, Computational Complexity, a modern approach . Cambridge University Press, 2007.
- 4[2] A. Meduna, Automata and Languages: Theory and Applications , Springer, 2000.
