{'fraction_non_alphanumeric': 0.04285485421339314, 'fraction_numerical': 0.004565844280679269, 'mean_word_length': 4.32409381663113, 'pattern_counts': {'":': 0, '<': 2, '<?xml version=': 0, '>': 1, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Simulation model of spacetime with the Minkowski metric

In this paper, we propose a simulation model of spacetime as a discrete model of physical space. The model is based on the ideas of Stephen Wolfram and uses non-numerical modelling. The simulation model is described as an ontology. We use object-oriented simulation (OOS), but the model is also suitable for agent-based simulation (ABS). We use UML2 SP (UML Scientific Profile), an object-oriented simulation language used in scientific fields. This paper describes several experiments that demonstrate time dilation and dynamic relativistic effects. The reproducibility of experimental results can be verified. We provide a link to the repository in this paper. The model is implemented in Python.


Introduction
The use of simulation in such innovative fields such as nanotechnology is of great practical and scientific interest. However, today, as a rule, numerical modelling is used. This is due to the problem of the simulation of relativistic and quantum effects.
In this paper, we propose a simulation model of spacetime with the Minkowski metric. We use object-oriented simulation (OOS), but the model is also suitable for agent-based simulation (ABS).
The idea that spacetime is a computational process was first put forward by Konrad Zuse in the book [1] in 1967.
Stephen Wolfram [2,3] suggested that fundamental physical laws could be derived from cellular automata, and, in particular, the properties of spacetime. In his opinion, space is a network, i.e. graph. The well-known properties of space appear in the same way as statistical physics transforms into thermodynamics. That is, this is a result of the appearance of a large number of nodes and links. Time appears as a result of a change in the state of state machines, but not as a spacetime network.
Gerard't Hooft is of a similar opinion. His point of view is outlined in the book [4]. Superdeterminism allows us to consider nature as the result of the operation of cellular automatons. Quantum effects arise from the use of templates in macroscopic measurements. Gerard't Hooft does not directly consider spacetime, but he demonstrates how one can arrive at classical physics.
Our approach is different in that we consider spacetime as an object of simulation. The simulation model is described in language UML2 SP. We also use a spacetime discrete model, but it is the result of describing the model as a semantic net. We do not assert that spacetime is discrete. This paper is organised as follows: Section 2 contains a brief description of the UML2 SP language. Section 3 formulates the model of spacetime. The main experiments on the simulation of relativistic effects are presented in Section 4. Finally, Section 5 presents the paper's conclusions.

About UML2 SP
The base conception of UML2 SP [5] is a communicative paradigm: any object of reality can be described as a system of elementary communicative acts.
In the UML2 SP, UML-diagrams have a double semantic. In the computational semantic, the class diagram is a model of the program. In the problem domain semantic, the class diagram is ontology. Class is considered as a frame as per Marvin Minsky. The name of the class is the name of the frame. The tagged value 'Concept' defines a notion from the problem domain. Attributes of the class are slots of the frame. Operations are procedures of the frame. Attributes and operations also define concepts.
The base method of UML2 SP is the decomposition principle, as in the IDEF0 methodology. That is, UML2 SP is an object-oriented variant IDEF0. The syntax of UML2 SP consists of fifteen stereotypes for the execution of decomposition.
The basic idea of the usage of UML2 SP is description of the object of study as a semantic net. The semantic net is the non-numeric model. Thus, UML2 SP models may be used for modelling objects with absent mathematical models.

Ontology of Special Relativity Theory
The model described in UML2 SP is an ontology.
The ontology of the Special Relativity Theory (SRT) is depicted in Fig.1. We use the C++ syntactic. The 'Composite' frame defines the concept of 'Physical spacetime'. The 'tmp' attribute defines laboratory time. It is a linked list from the 'Temp' nodes. The 'lst' attribute defines one-dimension physical space. It is a linked list from the 'ListItem' nodes. The 'Leaf' frame defines the 'Point particle' concept. A particle may move in the space. The particle moves from one cell to another cell in 'lst'. The simulation is run by the 'Run()' operation of the 'ConcreteComposite' class.
Concepts in relativistic mechanics are similar to the concepts of classical mechanics, but there are differences. This is a synchronization rule of time of a mechanical system and local time of physical space cells.

Synchronization
The main concept in the STR-model is synchronization. We introduce two notions of time. Laboratory time is the time of the rest frame (attribute 'tmp' of the 'Composite' class, see Fig.1). Local time is time in each cell of physical space (attribute 'tmp' of the class 'ListItem', see Fig. 1). We must synchronize local time in each cell with laboratory time.
We define the 'Synchronization' concept through two notions: a synchronization mechanism and a synchronization rule.
The synchronization mechanism is depicted in Fig. 2. Laboratory time is a 'tmp' linked list. The progress of the time is a node shift of the linked list. It is a main loop in the 'Run()' operation. The 'cc' object sends the message 'itemRun' to all 'item' objects. The message argues 't'. It is the current node of the 'tmp' linked list. The local time shift if 't' equals the 'marked' pointer.
We introduce also two new notions. If node t has t.lb = true, then it is called a 'bearing' time moment. All nodes of the 'tmp' linked list in 'ListItem' are 'bearing' moments. Nodes of the 'tmp' linked list in 'Composite' may be 'bearing' or 'ordinary' moments. Let T w be the number of ticks of model time. The numbers of nodes between 'bearing' moments is called the resolution of the tick of time ( R ).
The synchronization rule defines an assignment rule of a pointer for the 'marked' attribute in each cell of space. The synchronization rule is the following. We introduce the attributes 't' (type int) for Temp and 'x' (type int) for 'ListItem' for the measurement of time and coordinates. Let  be a value of the variable 't',  be value of the variable 'x', and  =  R T w ; then the synchronisation rule has the form of the invariant interval  2 =  2 +  2 (ν t /ν l ) 2 , where ν t , ν l are the coefficients of the conversion. We search for a node with number  in the 'tmp' list. The node found is assigned the attribute 'marked'. This may be implemented with different algorithms. The natural algorithm for generating the temporal network is a separate problem.
Thus, 'Temp' and 'ListItem' instances form a network. The network is a simulation of spacetime with the Minkowski metric.
If time has shifted in a cell, then some activity in the cell is possibly.

Mechanical motion and interaction
In this section, we will define kinematic and dynamic concepts: the concept of 'mechanical motion' and 'interaction' concept.
We introduce two statements.
 A particle can move or interact.  Interaction is possible if motion is completed.
The attributes 'headOfJump' and 'currentOfJump' define the 'Momentum' concept (for a single mass). The semantic net for the concept is depicted in Fig.3. The 'Mechanical motion' concept is defined through the mechanism of motion. If a particle in the cell and 'currentOfJump' is not NULL, then 'currentOfJump' has shift (message Run), and the particle moves to a neighbouring cell. If 'currentOfJump' is NULL, then the motion is completed. If the 'tmp' node is 'bearing' then the mechanical system sends the message 'reset' to the particle and the particle able to move again (currentOfJump is assigned the value headOfJump).
By c denote light speed. Let  be time, ρ be distance, and μ be mass in natural units. Then, time t, distance d, and mass m in standard units are calculated as where ν t , ν l , ν m are the coefficients of the conversion of time, distance, and mass.

Relative velocity is:
where  -travel distance,  = T w  R , T w -number of bearing nodes.
The 'Interaction' concept is defined as 'doImpact' process. The operation has an argument of 'Carrier' type. The operation increases or reduces the 'headOfJump' linked list.

Let  i be the number of interaction acts in tick i (interaction intensity). Force f i is
The output of the formula may be found in documentation [6].
Let j be the length of the 'headOfJump' list, j c is segment length of the 'currentOfJump'. The particle may not have a velocity of more than light speed as the j c is not more than  R even if j >  R . The particle receives the message 'reset' if 'tmp' is bearing node. If j =  R , then particle time stops and interaction is impossible. If j = 0, then time and interaction are as in classical mechanics. If 0 < j <  R then particle time is slows down and intensity of interaction falls.

Time dilation
Let us consider a motion with velocity of  = 0.5. In the table, the result of the simulation is depicted (units are metres and metres of light time). 2

1
. Column Tw is the number of tick of model time. Column x -is the coordinate of the particle in moment Tw. Column tp is the time of the particle. We can observe dilation of time. In the particle, tp units of time elapse, but, in the laboratory frame of reference, t units of time are registered. The world line of the particle is depicted in Fig.4.

Velocity, momentum, and energy
Let us consider the following characteristic experiment. Let a constant electric field act on a charged particle . f dp qE dt  We introduce new variables: p  pm 0 c, E  Em 0 c 2 , where c is the light speed, p is the momentum, E is the energy, and m 0 is the rest mass. We put qE f /(m 0 c) = 0.1 (one-act interaction), the rest mass of the particle is m 0 = 1 ('Skip' list is NULL), the particle initially rests at the origin of the laboratory reference frame. The results of the experiment are presented in Table 2. The following notation is introduced in this table: Tw is the system time step number, p is the measured momentum, v is the measured velocity, va is the exact value of the velocity, v, err% is the relative error of the speed measurement in %, E is the measured energy, Ea is the exact value of energy, E, err% -is the relative error of the energy measurement in %.
Motion start has delay  d =  R (/). It is caused by the appearance of energy of rest.
The plot of the dependence of velocity on momentum is presented in Fig. 5. These and other experiments may be found in our repository [6]. The repository contents code of the software (Python) and documentation.

Simulation and numerical modelling
We will explain our point of view on simulation and numerical modelling. Simulation models are used in science on occasion; for example, cellular automata are widely used. However, as a rule, a simulation model is supplemented by numerical methods. In particular, this happens when it is necessary to model relativistic and quantum effects.
We consider a semantic network to be an alternative method (regarding mathematical modelling) to represent the model of the object being studied. The use of numerical methods in simulation models destroys the integrity of the simulation model. Thus, the use of numerical methods can lead to modelling mistakes.
However, if we take the semantic network as a basis and replace some fragments of the model with calculations, we will have a more reliable method. Numerical methods can significantly reduce the dimensions of the problem. Therefore, we consider it important to create non-numerical models.

Conclusion
This study, has presented a simulation model of spacetime. The simulation (OOS, ABS) model of spacetime for SRT may be built as a special network. The network consists of time and space nodes. The main concept of the model is the synchronization of laboratory time and of the local time of cells of physical space.
Experiments that demonstrate kinematic and dynamic relativistic effects have been presented.
We represent simulation software and software documentation in the repository [6] as an open-source project. The reproducibility of experimental results can be verified. The repository will be updated with new experiments.