Computer-Simulation Model Theory (P= NP is not provable)
aa r X i v : . [ c s . CC ] J un Computer-Simulation Model Theory ( P = NP is not provable)
Rasoul RamezanianMashhad, Iran Abstract
The simulation hypothesis says that all the materials and events in the reality (includingthe universe, our body, our thinking, walking and etc) are computations, and the realityis 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 thesimulation 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 ModelTheory”, CSMT.Computer-Simulation Model Theory is an extension of Mathematical Model Theorywhere instead of mathematical-structures, computer-simulations are replaced, and theactivity of reasoning and computing of the reasoner is also simulated in the model.(CSMT) argues that: for a formula φ , construct a computer simulation model S such that1- φ does not hold in S , and the reasoner I ( human being, the one who lives inside the reality ) cannotdistinguish S from the reality ( R ) ,then I cannot prove φ in reality. Although CSMT is inspired by the simulation hypothesis, but this reasoning method isindependent of the acceptance of this hypothesis. As we argue in this part, one may donot accept the simulation hypothesis, but knows CSMT a valid reasoning method.As an application of Computer-Simulation Model Theory, we study the famousproblem P vs NP. We let φ ≡ [P = NP] and construct a computer simulation model E such that P = NP does not hold in E . Human’s worldview changes with the times. At the time of Omar Khayyam, the industrywas limited to the Pottery, and Omar Khayyam (inspired by the pottery) assumed theuniverse as a water vessel and asked ”hey you! where is the potter?”Our worldview changes as our industry changes and our current industry are artificialintelligence, virtual reality, robotics, and video games. Using artificial intelligence, we aregoing to make new creatures even more intelligent than us. Sophia Robot is one of thesecreatures.So Nick Bostrom (inspired by the computer industry) asks ”Are you living in a computersimulation?” (see [1]); we might be all creatures in a video game developed by a programmer. [email protected], [email protected] https : //en.wikipedia.org/wiki/Sophia ( robot )
1e almost are going to believe this new worldview as Elon Musk says that he feels ”We’reProbably Living in a Simulation”.Briefly, the simulation hypothesis is the following sentencewe 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 toyour PC or your laptop) which we call it universe-computer (UC).Regarding reality as a computer simulation means that all we (human beings) do (think-ing, walking, reasoning, talking, jumping, and etc) are computations and procedures per-formed by the ”Universe-Computer” (UC). When I think, it is UC that computes, when Iprove 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/herthinking, breathing, walking and etc are all computations done by UC.In the next section, we discuss our proposed reasoning method CSMT. For justificationof our reasoning method, we do not need the simulation hypothesis to be ”True”, we justneed it to be ”Possible”. So one may do not accept the simulation hypothesis, but acceptsthe CSMT as a valid reasoning method.
Computer-Simulation Model Theory is an extension of the Model Theory [2], where thereasoner also lives inside the model and is an inhabitant of the model.Model theory is a branch of mathematical logic that studies that mathematical-structuressatisfy which formulas. Given a set of formulas Γ, and a formula φ , a way to reason that φ isnot logically derivable from Γ is simply by constructing a mathematical-structure M , suchthat all formulas in Γ holds in M ( M | = Γ) but φ does not hold in the world M ( M = φ ).This reasoning is true, because of the soundness of deduction system .In Computer-Simulation Model Theory, instead of mathematical-structure, we deal withcomputer-simulations. In model theory, the reasoner (the one who thinks and reasons) is outof 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 thecomputer-simulation but not provable for the computist. But we assume soundness, that isif 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 thereality ( R ), construct a computer simulation S such that(1) the reasoner (computist) cannot distinguish S from the reality ( R ), and(2) φ does not hold in S . For example, suppose that we want to show that a formula φ is not True for all graphs. We only needto construct a graph structure which does not satisfy φ .
2f our deduction system is sound then all we prove must hold in reality. So, if S is acomputer simulation that we cannot say whether we live in S or in the reality, then if wecan prove φ in the reality, the statement φ must also be true at S .Note that our activity of proving and reasoning are computations performed by the UCof reality. This property differs CSMT from model theory.The activity of the reasoning and computing of the computist is also performed by thesimulation, and this activity can affect the model.We are in the age of artificial intelligence, and constructing a computer simulation exactlysimilar to the reality is completely plausible. Using artificial intelligence, we can simulatePhysics, Biology, our thinking, our reasoning and etc.The mathematical Model theory considers the reasoner outside of the model. Modeltheory is not a complete and real reasoning method since in reality, we (the reasoner) areinhabitant 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 otherparts of the model. A computer-simulation model S consists of the three following partsi. The UC of S .ii. The Computist.iii. A set of instruction IN ST that the computist (the inhabitants in S ) interacts withUC through them. [when we walk, reason, breathe, and etc, we are asking UC toperform the computation of walking, reasoning, breathing, and etc].All we do (walking, reasoning, and etc) are procedures performed by UC of the simula-tion. 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 S is a tuple U = ( T BOX, SBOX, IN ST, CON F ) where IN ST is a nonempty set (the set of all instructions) , and
IN ST ⊆ IN ST is anonempty subset called the set of starting instructions. CON F is a nonempty set called the set of configurations such that to each x ∈ { , } ∗ , – a unique configuration C ,x ∈ CON F is associated as the start configuration,and to each C ∈ CON F , a unique string y C ∈ { , } ∗ is associated.
3. The transition box , T BOX , is a total function from
CON F × IN ST to CON F ∪{⊥ } .The function T BOX is executable by a computer device .
4. The successful box , SBOX , is a total function from
CON F to { Y ES, N O } . Thefunction SBOX is executable by a computer device.
Note that when we say a computer-simulation model, then the simulation program of themodel must be executable by a computer device and because of this, two functions
SBOX and
T BOX must be executable by a computer device.
Definition 2.2 i. A procedure (an algorithm) is a finite set M ⊆ IN ST (a finite set of instructions) ,satisfying the following condition
The determination condition : for every C ∈ CON F either for all ι ∈ M , T BOX ( C, ι ) = ⊥ , or at most there exists one instruction τ ∈ M such that T BOX ( C, ι ) ∈ CON F .We refer to the set of all procedures by the symbol Ξ .ii. We let υ : Ξ × CON F → IN ST ∪ {⊥} be a total function such that for each procedure M and C ∈ CON F , if υ ( M, C ) ∈ IN ST then – υ ( M, C ) ∈ M , and – T BOX ( C, υ ( M, C )) ∈ CON F .The function υ controls that which instruction of a procedure M must apply on a givenconfiguration C . Definition 2.3
For every computer-simulation model S , we consider the followings to betrue: c . Free will of Inhabitants:
The computist is free to do the following things in any orderthat he wants: − he can freely choose an arbitrary instruction ι ∈ IN ST and an arbitrary config-uration C ∈ CON F to apply the
T BOX on ( C, ι ) , and − he can freely choose an arbitrary configuration C ∈ CON F to apply the
SBOX on. c . Computable Languages:
A string x ∈ Σ ∗ , Σ = { , } , is in the language of a procedure M , denoted by L ( M ) , whenever the computist can construct a sequence C C , ..., C n of configurations in CON F such that undefined symbol. We assume that the computer device is equipped and extended with memory cards as much as neededand we never face the shortage of memory, and thus Turing machines are also executable by computerdevices. C = C ,x , – each C i , i ≥ , is obtained by applying T BOX on ( C i − , υ ( M, C i − )) , – the SBOX outputs
Y ES for C n , – and either υ ( M, C n ) = ⊥ or T BOX ( C n , υ ( M, C n )) = ⊥ .The computist calls C C , ..., C n the successful computation path of M on x . Thelength of a computation path is the number of configurations appeared in. c . Computable Functions:
A partial function f : Σ ∗ → Σ ∗ , Σ = { , } , is computed bya procedure M ∈ Ξ , whenever for x ∈ Σ ∗ , the computist can construct a sequence C C , ..., C n of configurations in CON F such that – C = C ,x , – each C i , i ≥ , is obtained by applying T BOX on ( C i − , υ ( M, C i − )) , – the SBOX outputs
Y ES for C n , – and either υ ( M, C n ) = ⊥ or T BOX ( C n , υ ( M, C n )) = ⊥ , – y C n = f ( x ) . c . Parallel use of UC:
The computist may start to apply the UC on a procedure M anda string x , however, he does not have to keep on the computation until the successfulbox outputs Y es . The computist can leave the computation M on x at any stage ofhis activity and choose freely any other procedure M ′ and any other string x ′ to apply UC on them. c . Time Complexity:
The time complexity of computing a procedure M on an inputstring x , denoted by time M ( x ) , is n , for some n ∈ N , whenever the computist con-structs a successful computation path of the syntax-procedure M on x with length n . c . Time Complexity:
Let f : N → N and L ⊆ Σ ∗ . The computist says that the timecomplexity of the computation of the language L is less than f whenever there exists aprocedure M ∈ Ξ such that the language defined by the computist via M , i.e., L ( M ) ,is equal to L , and for all x ∈ L , time M ( x ) < f ( | x | ) . c . Complexity Classes:
The computist defines the time complexity class P ⊆ Σ ∗ to bethe set of all languages that he/she can computes in polynomial time. He/She alsodefines the complexity class NP ⊆ Σ ∗ as follows: L ∈ NP iff there exists J ∈ P and a polynomial function q such that for all x ∈ Σ ∗ , x ∈ L ⇔ ∃ y ∈ Σ ∗ ( | y | ≤ q ( | x | ) ∧ ( x, y ) ∈ J ) . c . Turing Computability:
The UC of the simulation is sufficiently powerful such thatthe computist can compute all partial recursive (Turing computable) function usingthe UC . That is, for every Turning machine T , there exists a procedure M ∈ Ξ thatis L ( M ) = L ( T ) . . Black Box:
The computist lives inside the simulation S and does not access to thestructure of T BOX and
SBOX . For the computist,
T BOX and
SBOX are blackboxes. c . Deduction System:
There exist a procedure G ∈ Ξ such that for every proof z , andevery formula ψ , G ( h z, ψ ′ i ) = 1 means z is the proof of ψ . The computist using theprocedure G does his logical reasoning. Note that the procedure G is also computed bythe universe-computer UC. c . Soundness:
If the computist can prove a sentence φ , then φ is True in the simulation. c . The universe-computer of the simulation,
U C , works in linear time. Also, the com-putist knows that the UC works in linear time. There exists a universal clock in thesimulation S , shown by Clock S , such that the computist uses it and measures passingtime. That is when the computist insert a configuration C to SBOX ( T BOX ) thenumber of clocks of
Clock S that the computist waits to receive the output is linear withrespect to the length of C . In c10, we insist on proof procedure G , we could similarly talk about ”walking pro-cedure”, ”breathing procedure” and etc, but we disregard them as we aim to construct acounter-model for [P = NP]. As an example of a computer-simulation model, one may seethe example 7.1. In the following definitions, we formally describe ”indistinguishability” between computer-simulation models.
Definition 2.4
Suppose S is a simulation and M is a procedure in S . The experience ofthe computist on the procedure M , denoted by EXP S ( M ) , is defined to be the set of allpairs ( x, y ) where the computist ran procedure M on input x and received output y . Notethat always, EXP S ( M ) is a finite set (although new pairs are always added to it) since, ateach stage of time, the computist could only run the procedure on only finite inputs. Definition 2.5
Suppose S and S ′ are two computer-simulation model where UC is theuniverse-computer of S and U C ′ is the universe-computer of S ′ . We say that the computist A who is an inhabitant in S cannot say if he lives inside S or S ′ , S ∼ A S ′ , whenever1- IN ST S = IN ST S ′ ,2- At each stage of time, the computist A based on his experiences of the procedurescannot say that the universe-computer of S is UC or U C ′ . We formally defined what we mean by a computer-simulation model and indistinguisha-bility 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 studythe famous problem P vs NP. Using CSMT, in the following of this paper, we show thatthere exists no proof for P = NP. 6
We introduce two notions: non-predetermined functions and persistently evolutionaryTuring machines. • We construct a computer simulation world, named E , which P = NP in this world.The UC of E is a persistently evolutionary Turing machine. • We discuss that the reality is not distinguishable from a persistently evolutionarymodel.
References [1] N. Bostrom,
Are you living in a computer simulation , Philosophical Quarterly, Vol. 53,2003.[2] D. Marker,
Model Theory: an introudction , Springer, 2002.
The most important and fundamental notion of mathematics is function. A function is aprocess associating each element x of a set X , to a single element f ( x ) of another set Y .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 eventuallydetermined through the way we start to associate f ( x ) for every element x ∈ X .We introduce Persistently Evolutionary Turing machines that compute non-predeterminedfunctions.We also discuss that if the UC of our reality persistently evolves then our reality will havealternate (alternate realities are worlds that could exist next to, in parallel of, or in placeof our own, if we interacted with the world differently).Let f be a process that associates elements of a set X to the elements of another set Y .If the process f works well-defined then we know f as a mathematical function. But beingwell-defined does not force the process f to be predetermined.Suppose that x and x are two different elements of X . I want to use the process f todetermine the value of f for x and x . It is up to me to first perform the process f on x or x .If f is predetermined the it does not matter to perform the process on ordering x x orordering x x . But if f 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 inter-acted with different ordering of inputs, those alternate could happen).For example, consider the following process g : • W is a set which is initially empty. • for a given natural number n , if there exists a pair ( n, z ) ∈ W then output g ( n ) = z ,else update W = W ∪ { ( n, | W | + 1) } and output g ( n ) = | W | + 1 . g is a non-predetermined function over natural numbers. I input 7 , , , g (7) = 1, g (9) = 2, g (1) = 3, and g (11) = 4.The value of other numbers are yet non-predetermined and as soon as I perform process g on each number the value is determined.- The function g is not predetermined. It is determined eventually, but it is alwaysundetermined for some numbers.- The function g is well-defined, and associates to each input a single output.- For every natural number, the function g is definable.- If I inputted 9 , , ,
11, I would have an alternate g which would associate: g (9) = 1, g (1) = 2, g (7) = 3, and g (11) = 4. Persistently Evolutionary Turing machines are an extension of the notion of Turing machinesin which the structure of the machine can evolve through each computation.A Turing machine consists of a set of states Q , and a table of transitions δ which bothare fixed and remain unchanged forever. In Persistently Evolutionary Turing machines, weallow the set of states and the table of transitions changes through each computation.As a Persistently Evolutionary Turing Machine P T computes on an input string x ,the machine P T can add or remove some of its states and transitions, and thus after thecomputation on the input x is completed, the sets Q and δ changed.However these changes are persistent, that is, if we already input a string x and themachine outputs y , then whenever we again input x the machine outputs the same y , andthe 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 withsome rules of adding and removing of states and transitions. Then, We input strings tothe BOX and for each string, the BOX outputs a single string. The machine in the BOXchanges 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 nondeterministicfinite automate [2]. Example 4.1 (In the sequel of the paper, we will refer to the persistently evolutionarymachine introduced in this example by
P T ). Define
Evolve : NFA × Σ ∗ → NFA as follows :Let M ∈ NFA , M = h Q, q , Σ = { , } , δ : Q × Σ → Q, F ⊆ Q i , and x ∈ Σ ∗ . Suppose x = a a · · · a k where a i ∈ Σ . Applying the automata M on x , one of the three followingcases may happen: NFA is the class of all nondeterministic finite automata M = h Q, Σ = { , } , δ, q , F i , where for eachstate q ∈ Q , and a ∈ Σ, there exists at most one transition from q with label a . F is the set of accepting states ase1. The automata M reads all a , a · · · , a k successfully and stops in an accepting state.In this case, the structure of the automata does not change and let Evolve(
M, x ) = M .case2. The automata M reads all a , a · · · , a k successfully and stops in a state p which isnot an accepting state. – If the automata M can transit from the state p to an accepting state by reading one alphabet, then let Evolve(
M, x ) = M . – If it cannot transit (from p to an accepting state) then let Evolve(
M, x ) to be anew automata M ′ = h Q, q ′ , Σ = { , } , δ ′ : Q ′ × Σ → Q ′ , F ′ ⊆ Q ′ i , where Q ′ = Q , δ ′ = δ , F ′ = F ∪ { p } .case3. The automata M cannot read all a , a · · · , a k successfully,and after reading a part of x , say a a · · · a i , ≤ i ≤ k , it crashes in a state q that δ ( q, a i +1 ) is not defined. In thiscase, we let Evolve(
M, x ) be a new automata M ′ = h Q, q ′ , Σ = { , } , δ ′ : Q ′ × Σ → Q ′ , F ′ ⊆ Q ′ i , where Q ′ = Q ∪ { s i +1 , s i +2 , · · · , s k } (all s i +1 , s i +2 , · · · , s k are new statesthat does not belong to Q ), δ ′ = δ ∪{ ( q, a i +1 , s i +1 ) , ( s i +1 , a i +2 , s i +2 ) , · · · , ( s k − , a k , s k ) } ,and F ′ = F ∪ { s k } . The machine
P T persistently evolve, that is, if it (rejected) accepted a string x already,then it would (reject) accept the string x for any future trials as well. The language L ( M )is not predetermined and it eventually is determined.For example, assume that initially M is Q = { q } , F = ∅ , δ = ∅ . Now I input the string101 and according to case 3, the machine M evolves and new states q , q , q and transitions( q , , q ) , ( q , , q ) , ( q , , q ) are added and also F = F ∪ { q } . Now if I input the string10 then according to case 2, M rejects it. However, If at first I inputted 10 to the machinethen it would accept it. The time-complexity [1] of Persistent Evolutionary Turing Machines is defined similar tothe time-complexity of Turing machines except that for each (adding) removing of statesor transitions, we count one extra clock.
Proposition 4.2
The time complexity of the machine
P T in example 4.1 is linear. Proof.
It is straightforward. ⊣ Persistently Evolutionary Turing machines (similar to Turing machines) are executable bycomputer devices if as soon as the device needed extra memory resources, we are ready toadd memory cards to the motherboard of the device.Two simulations V and E introduced in example 7.1, and in definition 7.4 are computersimulations. The SBOX and
T BOX of the V are Turing computable and the SBOX and
T BOX od E are Persistently Evolutionary Turing computable.9 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 thismorning, I first had breakfast and then washed my hands, I would be in another alternatereality, but since I first washed my hands and then had breakfast, I am in the alternateworld which we call it ”reality”.Although there are lots of alternate realities, only one of them is actualized. UC evolvesas human beings (the one who lives in this simulation) interact with it. The future is notpredetermined and via our interactions, we always are moving to new alternate realities.
References [1] S. Arora, B. Barak,
Computational Complexity, a modern approach . CambridgeUniversity Press, 2007.[2] A. Meduna,
Automata and Languages: Theory and Applications , Springer,2000. P = NP
Contradicts with Non-predeterminism
In following, I construct a computer simulation and show that in this simulation P is notequal to NP.As, we discussed the first section, assuming that the reality is a computer simulationthen 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 computationalprocess which UC performs. So, we may name human beings (the one who lives in) to bethe computist as his/her thinking, breathing, walking and etc are all computations done byUC.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 evolvesand it is not predetermined that what alternate realities happen as we move to the future.We show that P = NP contradicts with non-predeterminism and thus in this simulation Pis not equal to NP.
P = NP does not hold in
According to the reasoning method CSMT, If we want to show that P = NP is not provable,we need to construct a simulation such that1. we (as the one who lives in) cannot distinguish the simulation from the reality.10. P = NP does not hold in the simulationWe first, in example 7.1, introduce a computer-simulation model named V . Then indefinition 7.4, we slightly change the UC of V and construct a computer-simulation modelnamed E which its UC persistently evolves. Then in theorem 7.9, we prove that P = NPin E . Example 7.1
We introduce a computer-simulation model V as follows:Let Q T = { h } ∪ { q i | i ∈ N ∪ { }} , Σ , Γ be two finite set with Σ ⊆ Γ and Γ has a symbol △ ∈ Γ − Σ .The UC of the simulation V , U v = ( T BOX v , SBOX v , IN ST v , CON F v ) is defined asfollows:1) IN ST v = { [( q, a ) → ( p, b, D )] | p, q ∈ Q T , a, b ∈ Γ , D ∈ { R, L }} , ( IN ST v ) = { [( q, a ) → ( p, b, D )] ∈ IN ST s | q = q } , and2) CON F v = { ( q, xaz ) | q ∈ Q T , x, z ∈ Γ ∗ , a ∈ Γ } , for each x ∈ Σ ∗ , C ,x = ( q , △ x ) ,and for each C = ( q, xaz ) ∈ CON F s , y C = xaz .Note that the programming language of U v is exactly the standard syntax of configurationsand transition functions of Turing machines.3) Let C = ( q, xb ab y ) be an arbitrary configuration then – T BOX v ( C, [( q, a ) → ( p, c, R )]) is defined to be C ′ = ( p, xb cb y ) , – T BOX v ( C, [( q, a ) → ( p, c, L )]) is defined to be C ′ = ( p, xb cb y ) , and – for other cases T BOX v is defined to be ⊥ .4- Let C ∈ CON F v be arbitrary – if C = ( h, △ x ) then SBOX v ( C ) is defined to be Y ES , – if C = ( h, x △ ) then SBOX v ( C ) is defined to be Y ES , and – otherwise SBOX v ( C ) is defined to be N O .5- For each M ∈ Ξ v , and C = ( q, xay ) ∈ CON F v , if there exists [( q, a ) → ( p, b, D )] ∈ M for some p ∈ Q T , b ∈ Γ , and D ∈ { R, L } , then υ ( M, C ) is defined to be [( q, a ) → ( p, b, D )] else it is defined to be ⊥ . Theorem 7.2
Accepting the Church-Turing thesis, the computist in the simulation V , cancompute all the procedures that we (human beings) can compute in reality . If we accept Church-Turing thesis, all the procedures in the reality are Turing computable. - For each procedure M ∈ Ξ v , there exists a Turing machine T such that for every x ∈ Σ ∗ , x ∈ L ( M ) and time M ( x ) = n iff x ∈ L ( T ) and time T ( x ) = n .2- For each Turing machine T , there exists a procedure M ∈ Ξ s , such that for every x ∈ Σ ∗ , x ∈ L ( T ) and time T ( x ) = n iff x ∈ L ( M ) and time M ( x ) = n . Proof.
It is straightforward for us not for the computist who lives inside the simulation V . ⊣ We as the one who creates the simulation V can prove the above theorem since we knowthe inner structure of T BOX v and SBOX v . The computist who lives inside the simulationcannot be aware of the above theorem as he does not have access to the inner structure ofthe 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 . Definition 7.3 A UC , U = ( T BOX, SBOX, IN ST, CON F ) is called to be static, when-ever the inner structure of two boxes T BOX and
SBOX does not change due to interactionwith the computist. It is called persistently evolutionary whenever the inner structure of atleast 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 E which the UC of E , U e = ( T BOX e , SBOX e , IN ST e , CON F e ) is defined as follows.Two sets IN ST e and CON F e are defined to be the same IN ST s and CON F s inexample 7.1 respectively, and consequently the set of procedures of the U e , i.e., Ξ e isthe same Ξ s .The transition box T BOX e is also defined similar to the transition box T BOX s inexample 7.1.The successful box SBOX e is defined as follows: let C ∈ CON F e be arbitrary – if C = ( h, △ x ) then SBOX s ( C ) = Y ES , – if C = ( h, x △ ) then the SBOX e works exactly similar to the the persistentlyevolutionary machine P T introduced in example 4.1. On input x , if P T outputs , the successful box outputs Y ES , and – otherwise SBOX e ( C ) = N O . Proposition 7.5
Computer-simulations E and V satisfies conditions c − c of defini-tion 2.3. Note that we (the human beings) do not have access to the inner structure of the reality, we call theChurch Turing statement to be a thesis. roof. We only need to discuss c
12 for the simulation E . By proposition 4.2, the UC of E works in linear time. ⊣ Note that the
SBOX e of the U e is a persistently evolutionary machine. For the com-putist the set of procedures (algorithms) in the simulation E is the same set of proceduresin the simulation V , i.e Ξ v = Ξ e . However for some procedures, say M , the language L ( M )is the simulation E could be different from the language L ( M ) in V . For some M ∈ Ξ e ,we have L ( M ) is a non-predetermined language. The procedure M is fixed and does notchange through time, but since the structure of UC ( SBOX e ) changes through time.The computist in the simulation E thinks that everything is static since the structure ofthe procedure does not change and the computist also does not have access to the structureof the UC of the simulation. Theorem 7.6
Every recursively enumerable language can be computed in the environment E e . That is, for every recursively enumerable language L , there exists M ∈ Ξ e such that L = L ( M ) . Proof.
It is straightforward. For each Turing machine T , one may construct a procedure M ∈ Ξ e such that L ( T ) = L ( M ). ⊣ Proposition 7.7
The complexity class P is a subset of P E . Proof.
It is straightforward. ⊣ The converse of Theorems 7.6, and 7.7 do not hold true. In the simulation E , thecomputist 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/herinteractions with the UC. In the simulation E , the UC is a persistently evolutionary machineand based on different orderings of the interactions of the computist, we would have differentalternate futures. Definition 7.8
We say a function f : N → N is sub-exponential, whenever there exists t ∈ N such that for all n > t , f ( n ) < n . Theorem 7.9
In the simulation E , NP E = P E .That is, there exists a procedure M ∈ Ξ e such that • the language L ( M ) that the computist computes through M is not predetermined, • the language L ( M ) belongs to the class P E , • there exists no procedure M ′ ∈ Ξ e , such that L ( M ′ ) is equal to L ′ = { x ∈ Σ ∗ | ∃ y ( | y | = | x | ∧ y ∈ L ( M )) } , and for some k ∈ N , for all x ∈ L ( M ′ ) , if | x | > k then ime M ( x ) ≤ f ( | x | ) where f : N → N is a sub-exponential function. In other world, L ′ is in NP E but notin P E . Proof.
Consider the following procedure M ∈ Ξ e Σ = { , } , Γ = { , , △} ,M = { [( q , △ ) → ( h, △ , R )] , [( h, → ( h, , R )] , [( h, → ( h, , R )] } .The language of the procedure M , L ( M ), is not predetermined in simulation E . That is, asthe computist chooses a string x ∈ Σ ∗ to check whether x is an element of L ( M ), the innerstructure of the universe-computer, U e evolves. Depending on the ordering of the strings,says x , x , ... , that the computist chooses to check whether x i ∈ L ( M ) the language L ( M )eventually is determined.It is obvious that the language L ( M ) belongs to P E (due to the definition of timecomplexity in definition 2.3).Let L ′ = { x ∈ Σ ∗ | ∃ y ( | y | = | x | ∧ y ∈ L ( M )) } . It is again obvious that L ′ belongs toNP E .Suppose there exists a procedure M ′ ∈ Ξ e that the computist can compute L ′ by M ′ in time complexity less than a sub-exponential function f . Then for some k ∈ N , for all x with length greater than k , x belongs to L ′ wheneverthe computist constructs a successful computation path C ,x C ,x , ..., C n,x of the pro-cedure M ′ on x , for some n ≤ f ( | x | ).Let m ∈ N be the maximum length of those strings y ∈ Σ ∗ that until now are acceptedby the persistently evolutionary machine P T (see example 4.1) which is inside the SBOX e of U e . Define m = max( m , k ).For every y ∈ Σ ∗ , let path ( y ) := C ,y C ,y , ..., C f ( | y | ) ,y be the computational path of theprocedure M ′ on the string y . The path ( y ) is generated by the transition box of U e . Let S ( y ) = { C j,y | C j,y ∈ path ( y ) ∧ ∃ x ∈ Σ ∗ ( C i,y = ( h, x △ )) } and H ( y ) = { x ∈ Σ ∗ | ∃ C j,y ∈ path ( y )( C j,y = ( h, x △ )) } We refer by | H ( y ) | to the number of elements of H ( y ), we have | H ( y ) | ≤ f ( | y | ) if | y | > k .Also let E ( y ) = H ( y ) ∩ { x ∈ Σ ∗ | | x | = | y |} , and D ( y ) = H ( y ) ∩ { x ∈ Σ ∗ | | x | = | y | + 2 } .Let w ∈ Σ ∗ with | w | > m be arbitrary. Two cases are possible: either S ( w ) = ∅ or S ( w ) = ∅ .Consider the first case. S ( w ) = ∅ .The computist wants to check if the string w is in L ( M ′ ), and the UC of the simulation E , that is U e , works on (the procedure M ′ and the string w ), to compute whether w is in L ( M ′ ) or not. Since the set S ( w ) is empty, the execution of M ′ on w does not make the SBOX e to evolve, and it remains unchanged.14 If the computist in the simulation E , computes that w ∈ L ( M ′ ) then it means thatthere exists a string v ∈ Σ ∗ such that | v | = | w | and v ∈ L ( M ) ( ∗ ).(i) Since the computist has the free will (see c1 of definition 2.3), he first starts tocomputes procedure M on all strings in Σ ∗ with length | v | + 1 sequentially. Asthe length of v is greater than m , all strings with length | v | + 1 are accepted bythe persistently evolutionary Turing machine P T (see item-3 of example 4.1)which is inside SBOX e .(ii) Then the computist checks that whether v is L ( M ). But because of the evolutionof SBOX e happened in part (i), the UC on the computation of M on v outputs N O , and thus v is not an element of L ( M ) in the simulation E (see the item-2of example 4.1). So v L ( M ), and it contradicts with ( ∗ ). • If the computist in the simulation E , computes that w L ( M ′ ) then it means thatfor all strings v ∈ Σ ∗ , | v | = | w | , we have v L ( M ). But it contradicts with the freewill of the computist again. As the length w is greater than m , the computist maychoose a string z with | z | = | w | and by the item-3 of example 4.1, we have z ∈ L ( M ),contradiction.Consider the second case. S ( w ) = ∅ .Suppose that the computist, before computing M ′ on w , starts to compute the procedure M on all strings v v ∈ E ( w ), and then computes procedure M on all strings v v ∈ D ( w ) respectively.Since | w | > m , the computist have u ∈ L ( M ) for all u ∈ E ( w ) ∪ D ( w ), and SBOX e of U e evolves through computing M on u SBOX e outputs N o for all configuration in { C i,w ∈ S ( w ) | ∃ x ∈ E ( w ) ∪ D ( w )( C i,w = ( h, x △ )) } . After that, the computist starts to compute M ′ on w . Either the computist finds w ∈ L ( M ′ ) or w L ( M ′ ). • Suppose the first case happens and w ∈ L ( M ′ ). It contradicts with the free will ofthe computist. The computist computes M on all strings v | v | = | w | sequentially,and would make { v ∈ Σ ∗ | | v | = | w |} ⊆ L ( M ). Then the SBOX e evolves in the waythat, it will output N o for all configurations ( h, v △ ), | v | = | w | , and thus there wouldexist no v ∈ L ( M ) ∩ { x ∈ Σ ∗ | | x | = | w |} which implies w L ( M ′ ), contradiction. • Suppose the second case happens and w L ( M ′ ). Since | H ( w ) | < f ( | w | ) < | w | ,during the computation of M ′ on w , only f ( | w | ) numbers of configurations of theform ( h, x △ ), x ∈ { v | | v | = | w |} ∪ { v | | v | = | w |} are given as input to the SBOX e . Therefore there exists a string z ∈ { x ∈ Σ ∗ | | x | = | w |} such that none ofits successors have been input to the persistently evolutionary Turing machine P T ,and if the computist chooses z and computes M on it, then z ∈ L ( M ) which implies w ∈ L ′ . Contradiction. 15e showed that L ′ cannot be computed by any M ′ that its time complexity is less thata sub-exponential function. Thus L ′ does not belong to the class P. But because of theprocedure M , we have L ′ belongs to NP and therefore in the simulation E ,P = NP. ⊣ Note that the proof of Theorem 7.9 cannot be carried by the computist who lives inthe environment. The above proof is done by us (the creator of the simulation E ). Thetheorem simply says that if L ′ belongs to NP E then it forces the computist to interactswith the U C of the simulation E in some certain orders, which conflicts with the item c1of definition 2.3. We, inhabitants of reality, can never find out whether the reality persistently evolves ornot. We can never discover that whether the UC of the reality is a Turing machine or aPersistently Evolutionary Turing machine.In previous sections, we introduce two computer simulations E and V which the setof their procedures are the same, i.e., Ξ v = Ξ e . The UC of V is static and the UC of E persistently evolves, though the computist cannot be aware that whether the UC of V ( E )is static or persistently evolves.Procedures in the simulation E (procedures in the set Ξ e ) are fixed and do not change,but for some M ∈ Ξ e , we have L ( M ) is non-predetermined due to the evolution of the UCof E (see 7.9). We as the creator of the simulation E , we know that the language of theprocedure M in the proof of 7.9 is non-predetermined but the computist who lives inside E cannot be sure that L ( M ) is not predetermined and he/she may think that L ( M ) 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 (videogame) is a black box for its inhabitants.The set of the procedures of the reality is the set of all Turing machines, i.e. Ξ reality isthe set of all Turing machines.The structure of Turing machines is fixed and does not change through computations(similar to the procedures of simulations V and E ), but we (human beings, inhabitants ofthe 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 isstatic or persistently evolves. Definition 8.1 (BLACK BOX) . Let X and Y be two sets, • an input-output black box B , for an observer, is a box that – The observer does not see the inner instruction of the box, and the observer chooses elements in X , and input them to the box, and receiveselements in Y as output. • We say an input-output black box B behaves well-defined whenever if the observerinputs x to the black box, and the black box outputs y at a stage of time, thenwhenever in future if the observer inputs the same x again, the black box outputs thesame y . • We say a well-defined black box is static (not order-sensitive) whenever for all n ∈ N ,for every x , x , ..., x n ∈ X , for every permutation σ on { , , ..., n } , if the observerinputs x , x , ..., x n respectively to B once, and receives y = B x , y = B x , ..., y n = B x n , and then we reset the black box. After resetting, if the observer inputs x σ (1) , x σ (2) ,..., x σ ( n ) respectively to B , then the outputs of B for each x i would be the same already output y i , before reset. • If an observer cannot reset a black box B , then he/she can never discover whether theblack box is static or order-sensitive. Proposition 8.2 • For every finite sets of pairs S = { ( i k , o k ) | ≤ k ≤ n, n ∈ N , i k , o k ∈ Σ ∗ } , there existsa Turing machine T such that for all ( i k , o k ) ∈ S , if we give i k as an input to T , theTuring machine T outputs o k . • For every finite sets of pairs S = { ( i k , o k ) | ≤ k ≤ n, n ∈ N , i k , o k ∈ Σ ∗ } , there existsa Persistent evolutionary Turing machine N such that for all ( i k , o k ) ∈ S , if we give i k as an input to N , the Persistent evolutionary machine N outputs o k . Proof.
It is straightforward. ⊣ Corollary 8.3
Let B 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 B .2- There exists a Persistent evolutionary Turing machine inside the black Box B . Therefore, We (which do not have access to the UC of the reality) can never discoverthat whether the UC of the reality is static or order-sensitive and persistently evolves.The UC of the simulation E ( SOBX e and T BOX e ) works in linear time. As we do nothave access to the inner side of the UC of reality, we cannot say whether the ”successfulbox” of the reality evolves or not. The universe-computer, UC, of the reality is a linear-timeoracle for us (as the computist), and a linear-time oracle does not affect complexity classes.We can never distinguish the reality from E .17 Conclusion