Next Article in Journal
Analysis of Coupled Thermal and Electromagnetic Processes in Linear Induction Motors Based on a Three-Dimensional Thermal Model
Next Article in Special Issue
Multivalue Collocation Methods for Ordinary and Fractional Differential Equations
Previous Article in Journal
A New Relativistic Model for Polyatomic Gases Interacting with an Electromagnetic Field
Previous Article in Special Issue
Approximation Properties of Chebyshev Polynomials in the Legendre Norm
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Solution of the Problem P = L

by
Sergey Goncharov
*,† and
Andrey Nechesov
*,†
Sobolev Institute of Mathematics, Academician Koptyug Ave., 4, 630090 Novosibirsk, Russia
*
Authors to whom correspondence should be addressed.
These authors contributed equally to this work.
Mathematics 2022, 10(1), 113; https://doi.org/10.3390/math10010113
Submission received: 29 November 2021 / Revised: 21 December 2021 / Accepted: 28 December 2021 / Published: 31 December 2021
(This article belongs to the Special Issue Polynomial Sequences and Their Applications)

Abstract

:
The problems associated with the construction of polynomial complexity computer programs require new techniques and approaches from mathematicians. One of such approaches is representing some class of polynomial algorithms as a certain class of special logical programs. Goncharov and Sviridenko described a logical programming language L 0 , where programs inductively are obtained from the set of Δ 0 -formulas using special terms. In their work, a new idea has been proposed to look at the term as a program. The computational complexity of such programs is polynomial. In the same years, a number of other logical languages with similar properties were created. However, the following question remained: can all polynomial algorithms be described in these languages? It is a long-standing problem, and the method of describing some polynomial algorithm in a not Turing complete logical programming language was not previously clear. In this paper, special types of terms and formulas have been found and added to solve this problem. One of the main contributions is the construction of p-iterative terms that simulate the work of the Turing machine. Using p-iterative terms, the work showed that class P is equal to class L, which extends the programming language L 0 with p-iterative terms. Thus, it is shown that L is quite expressive and has no halting problem, which occurs in high-level programming languages. For these reasons, the logical language L can be used to create fast and reliable programs. The main limitation of the language L is that the implementation of algorithms of complexity is not higher than polynomial.

1. Introduction

In the 1980s–1990s, Ershov, Goncharov, and Sviridenko presented the theory of semantic programming [1]. The concepts of Σ -programs and Σ -specifications were introduced in this work. The hereditary finite list superstructure was chosen as a base mathematical model. The universe of this model is the hereditary finite lists generated by elements of the universe of the base model [2], and some LISP-like functions were added. Special logical Σ -formulas with input and output variables were used as Σ -programs [3]. This gave rise to the study of programming language semantics from a mathematical point of view.
Cenzer and Remmel were among the first to study polynomial structures [4]. They investigated the existence of computable isomorphisms between computable and polynomial structures. Then, Lewis and Papadimitriou explored polynomial-time reductions [5]. Then, for a long time, the open problem was to create a logical programming language, which would have polynomial complexity. Mantsivoda developed a logical programming language based on document models. Documents are the main elements of the model universe. Special functions are defined for working with them. Mantsivoda and Ponomaryov formalized this approach in their work [6]. This language is simple and efficient. All operations and relations are polynomial. After that, another type of logical programming language, semantic domain-specific languages, was developed [7]. This language is based on the ideas of semantic programming where a truth-checking formula on the model replaced computability [1]. All programs also have polynomial complexity, but the question of how well it described the class of polynomial algorithms remained. In the work [8], some interesting results were presented. The authors found that the primitive recursive representation of the algorithm with boundaries of the variables often had a polynomial complexity. Then, Alaev investigated the questions of polynomial representability of various structures in his work [9]. This work gave the key to understanding what polynomiality is. In parallel, Goncharov and Sviridenko developed and presented a new logical programming language in which special terms were used as logical programs [10]. All programs in this language have polynomial computational complexity. However, the main question remains: can all polynomial algorithms be described by this language? The result that will be proved in this work answers this question.
After proving the polynomial analogue of Gandy’s fixed point theorem [11], it became clear that the language L 0 is wide enough. This language is used to construct quite complex constructions. In particular, this concerned the inductive construction of new types of data and computer programs in programming.

2. Preliminaries

Let B be a p-computable model of the signature σ 0 . A p-computable hereditary finite list superstructure H W ( B ) [11] was chosen as a mathematical model of the signature σ . The universe of the model H W ( B ) consists of elements of the model universe B and hereditarily finite lists H W ( B ) . Signature σ extends σ 0 with the next LISP-like list relations ∈ (to be an element of a list), ⊆ (to be an initial segment of a list) and the list operations h e a d , t a i l , c o n s , c o n c , and constant n i l [12]. Define new unary list operations f i r s t , c o n s _ l , t a i l _ l . The first operation f i r s t gets the first list element, the second c o n s _ l adds the element into the beginning of the list and the last operation t a i l _ l removes the first element from the list correspondingly. Define new unary operations s t r L i s t , l i s t S t r . The first operation s t r L i s t based on the input string of the form l 1 l k builds a list of the form < l 1 , , l k > , where l i Σ , i [ 1 , , k ] , the second operation l i s t S t r based on the input list of the form < l 1 , , l k > builds a string l 1 l k , where l i Σ , i [ 1 , , ] . The signature σ is an extension of σ 0 with these new operation symbols. The main operations h e a d , t a i l , c o n s , c o n c , and relations ∈, ⊆ have polynomial complexity [12]. It is easy to see that other operations f i r s t , c o n s _ l , t a i l _ l , s t r L i s t , and l i s t S t r have polynomial complexity.
Define Δ 0 -formulas as first order formulas of the signature σ in which quantification is of the following two types:
  • a restriction onto the list elements x t and x t .
  • a restriction onto the initial segments of list x t and x t .
The set of Δ 0 -formulas of the signature σ has been extended by induction with several types of terms: conditional terms, b-while terms, bounded recursive terms, and etc. [10] These formulas are denoted as Δ 0 ( I ) -formulas and new terms are denoted as Δ 0 ( I ) -terms. Denote the resulting set of Δ 0 ( I ) -terms as a language L 0 .
Definition 1.
Any Δ 0 ( I ) -term from the language L 0 will be referred to as L 0 -program.
Definition 2.
Any Δ 0 ( I ) -formula will be referred to as L 0 -formula.
L 0 -program property:
  • any L 0 -program has a polynomial computation complexity on any p-computable enrichment H W ( B ) * of the model H W ( B ) .
L 0 -formula property:
  • any L 0 -formula has a polynomial truth-checking algorithm on any p-computable enrichment H W ( B ) * of the model H W ( B ) .
In this work, to construct a suitable logical program for a polynomial function, the concept of a conditional term from the work of Goncharov [13] is used. Let t 0 , t 1 , , t n + 1 is L 0 -programs and θ 0 , , θ n is L 0 -formulae [10]. Define the concept of a conditional term t ( v ¯ ) in the next interpretation:
t ( v ¯ ) = t 0 ( v ¯ ) , if H W ( B ) θ 0 ( v ¯ ) t 1 ( v ¯ ) , if H W ( B ) θ 1 ( v ¯ ) & ¬ θ 0 ( v ¯ ) t n ( v ¯ ) , if H W ( B ) θ n ( v ¯ ) & ¬ θ 0 ( v ¯ ) & & ¬ θ n 1 ( v ¯ ) t n + 1 ( v ¯ ) , otherwise
where v ¯ have a form ( v 1 , , v k ) for some k N .
Conditional terms use a construction similar to the operator “if then else” in high-level programming languages. Leave also the other types of terms from [10] for the expressiveness of a new language. However, in the future, to construct a term describing a polynomial function, only conditional terms from work [10] will be used.

3. Polynomial Functions and Turing Machines

Let T f be a deterministic Turing machine over the alphabet Σ representing polynomial function f. Let S be the set of symbols { 1 , B } and Q be the set of states of the Turing machine, where q 1 is the initial state and q 0 is the final state. Let P T f be a Turing machine program that implements the function f. Since any program of the Turing machine is implemented through σ : Q × S Q × S × { R , L } , then all elements of the program P T f will be presented in the form of a list < q i 1 , s j 1 , q i 2 , s j 2 , β > . Sequence of the symbols
c i : s m i s 2 s 1 q k i s 0 s 1 s n i
is called the configuration of the Turing machine at the ith step.
Let β be the symbol from the set { R , L } . Let c i be some configuration of T f and there is a element < q i 1 , s j 1 , q i 2 , s j 2 , β > from the program P T f . Then, with the help of this element, the configuration c i will switch to another configuration c j .
Since the Turing machine T f represents a polynomial function f over the alphabet Σ , the machine will work on any input x Σ * no more than
p ( | x | ) = C p · | x | n p
steps for some fixed C p , n p N . Let r ( f ( x ) ) be the computational complexity of the function f ( x ) . From (3), it follows:
r ( f ( x ) ) p ( | x | )
If the Turing machine T f changes configuration c i on c i + 1 , then:
| c i | 1 | c i + 1 | | c i | + 1
and from (5) the inequality follows for the final configuration c f i n a l :
| c f i n a l | | c 0 | + p ( | x | ) d ( | x | ) , for some polynomial d ( | x | )
It should be noted that if T f reached the final configuration c f i n a l = c j for some jth step and j p ( | x | ) ; then, all the remaining configurations c j + 1 , , c p ( | x | ) would be equal to c f i n a l .
Using the configuration c i of the form (2) define a machine word w c i in the next form:
w c i : < < s m i , , s 1 > , q k i ̲ , < s 0 , , s n i > >
where q k i ̲ is equal to a string q q of the length k i + 1 and s k { B , 1 } , k [ m i , n i ] .
Define w c i , k as the k-th element of the machine word w c i , where k { 1 , 2 , 3 } .
If configuration c i has a form q k i s 0 s n i , then the machine word w c i has a form:
w c i : < n i l , q k i ̲ , < s 0 , , s n i > >
Remark 1.
(1) 
the state q k i ̲ is obtained from w c i and equal h e a d ( t a i l ( w c i ) )
(2) 
monitored symbol s 0 is obtained from w c i and equal f i r s t ( h e a d ( w c i ) ) .
Remark 2.
(1) 
Equality (5) implies that
| w c i | C | w c i + 1 | | w c i | + C , f o r s o m e f i x e d C N
(2) 
Equalities (6) and (9) imply that
| w c f i n a l | | w c 0 | + p ( | x | ) · C r ( | x | ) f o r s o m e p o l y n o m i a l r ( | x | ) .
Define a new binary operation ⊗ using the machine word w c i and the element < q 1 ̲ , s 1 , q 2 ̲ , s 2 , β > from the program P T f :
Case 1: element equal < q 1 ̲ , s 1 , q 2 ̲ , s 2 , R >
w c i < q 1 ̲ , s 1 , q 2 ̲ , s 2 , R > = w c j , if h e a d ( t a i l ( w c i ) ) = q 1 ̲ and f i r s t ( h e a d ( w c i ) ) = s 1 n i l , otherwise
and w c j = < w c j , 1 , w c j , 2 , w c j , 3 > , where
w c j , 1 = c o n s ( f i r s t ( w c i ) , s 2 ) ; w c j , 2 = q 2 ̲ ; w c j , 3 = t a i l _ l ( h e a d ( w c i ) ) ;
Case 2: element equal < q 1 ̲ , s 1 , q 2 ̲ , s 2 , L >
w c i < q 1 ̲ , s 1 , q 2 ̲ , s 2 , L > = w c j , if h e a d ( t a i l ( w c i ) ) = q 1 ̲ and f i r s t ( h e a d ( w c i ) ) = s 1 n i l , otherwise
and w c j = < w c j , 1 , w c j , 2 , w c j , 3 > , where
w c j , 1 = t a i l ( f i r s t ( w c i ) ) ; w c j , 2 = q 2 ̲ ; w c j , 3 = c o n s _ l ( c o n s _ l ( t a i l _ l ( h e a d ( w c i ) ) , s 2 ) , h e a d ( f i r s t ( w c i ) ) ) ;
Remark 3.
Operationis polynomial.

4. p-Iterative Terms

From the previous section, the length of the final machine word w c f i n a l does not exceed the length of the initial machine word w c 0 plus the length of some polynomial r ( | x | ) . The main goal of this section is to construct a p-iterative term so that the length of the final value should not exceed the length of the input value plus the value of some polynomial v ( | x | ) . Furthermore, it will be shown that such extension using p-iterative terms of the language L 0 does not take us beyond the polynomiality.
Let H W ( B ) be a p-computable model of the signature σ , g ( x ) be a L 0 -program, φ ( x ) be a L 0 -formula. Require | g ( x ) | | x | + C g for some C g N . Let u ( | x | ) be a polynomial such that the complexity of checking the truth of the L 0 -formula φ ( x ) on model H W ( B ) should not exceed u ( | x | ) . Let computation complexity r ( g ( x ) ) of L 0 -program g ( x ) be bounded by some polynomial s ( | x | ) = C s · | x | n s . Define a p-iterative term t ( x , n ) using the following iterative construction:
g 0 ( x ) = g ( x ) g i + 1 ( x ) = g ( g i ( x ) )
The p-iterative term has the form:
t ( x , n ) = g i ( x ) , if i n H W ( B ) ( g i ( x ) ) and j < i H W ( B ) φ ( g j ( x ) ) ) n i l , otherwise
Remark 4.
| g i + 1 ( x ) | | g i ( x ) | + C g .
Theorem 1.
Let H W ( B ) be a p-computable model, φ ( x ) be a L 0 -formula, and g ( x ) be a L 0 -program with the condition | g ( x ) | | x | + C g , C g N . Then, p-iterative term from (13) is a p-computable function.
Proof. 
Let t ( x , n ) be a p-iterative term. If the value of the term t ( a , n 0 ) equal g i + 1 ( a ) ; then, H W ( B ) φ ( g i + 1 ( a ) ) for some a H W ( B ) , n 0 N , and i + 1 n 0 . It can be inferred that the length of p-iterative term for i + 1 iteration:
| g i + 1 ( a ) | | g i ( a ) | + C g | g 0 ( a ) | + ( i + 1 ) · C g | a | + ( i + 2 ) · C g
and for any i n 0 :
| g i ( a ) | | g 0 ( a ) | + n 0 · C g | a | + ( n 0 + 1 ) · C g ( | a | + n 0 ) · ( C g + 1 ) + C g z ( | a | + n 0 )
where
z ( | x | ) = ( C g + 1 ) · | x | + C g .
The next step is to calculate the computational complexity r ( t ( x , n ) ) of the p-iterative term. The algorithm is the following for some fixed a and n 0 :
step 0:
Calculate g 0 ( a ) (it is necessary to calculate g ( a ) ) and check the truth of the L 0 -formula φ ( g 0 ( a ) ) on the model H W ( B ) . If L 0 -formula is true, then leave the algorithm running and send value g 0 ( a ) ; otherwise, go to the next step.
step 1:
Calculate g 1 ( a ) (it is necessary to calculate g ( g 0 ( a ) ) ), where g 0 ( a ) is known on step 0 and check the truth of the L 0 -formula φ ( g 1 ( a ) ) on the model H W ( B ) . If L 0 -formula is true, then leave the algorithm running and send value g 1 ( a ) ; otherwise, go to the next step.
step i:
Calculate g i ( a ) (it is necessary to calculate g ( g i 1 ( a ) ) ), where g i 1 ( a ) is known on step i 1 and check the truth of the L 0 -formula φ ( g i ( a ) ) on the model H W ( B ) . If L 0 -formula is true, then leave the algorithm running and send value g i ( a ) , otherwise go to the next step.
step n:
Calculate g n 0 ( a ) (it is necessary to calculate g ( g n 0 1 ( a ) ) ), where g n 0 1 ( a ) is known on step n 1 and check the truth of the L 0 -formula φ ( g n 0 ( a ) ) on the model H W ( B ) . If L 0 -formula is true, then leave the algorithm running and send value g n 0 ( a ) , otherwise send n i l .
Let w be g i ( a ) and | g i ( a ) | z ( | a | + n 0 ) , as r ( g ( w ) ) s ( | w | ) it can be inferred that:
r ( t ( a , n 0 ) ) i = 0 n 0 ( s ( z ( | a | + n 0 ) ) + u ( z ( | a | + n 0 ) ) )
and get inequality:
r ( t ( a , n 0 ) ) ( s ( z ( | a | + n 0 ) ) + u ( z ( | a | + n 0 ) ) ) · ( n 0 + 1 ) d ( | a | + n 0 )
for some polynomial d ( | x | ) and polynomial z ( | x | ) from (14). □
Corollary 1.
Let the conditions of Theorem 1 be satisfied and f ( | x | ) be some polynomial. Then, any p-iterative term of the form t ( x , f ( | x | ) ) is a p-computable function relative to variable x.
Proof. 
The condition of Theorem 1 implies that there exists a polynomial z ( x ) from (14)
r ( t ( x , f ( | x | ) ) ) z ( | x | + f ( | x | ) ) z ( w ( | x | ) ) v ( | x | )
where polynomial w ( | x | ) has a form | x | + f ( | x | ) and polynomial v ( | x | ) has a form z ( w ( | x | ) ) . □
Definition 3.
Define a new language L. Language L extends L 0 by p-iterative terms. Classes L-formulas and L-programs extend the classes of L 0 -formulas and L 0 -programs, respectively.
Theorem 2.
Let H W ( B ) * be a p-computable extension of the p-computable model H W ( B ) of the signature σ * . Then, any L-program has polynomial computational complexity on H W ( B ) * .
Proof. 
To prove this statement, it is nessesary to use induction on the number of distinct p-iterative terms for some L-program t ( x ) :
Base of induction n = 0: t ( x ) does not contain a p-iterative term. Then computation complexity of the t ( x ) is polynomial; this follows immediately from the work [10].
Induction step: Let the statement be true for n = k ; show this for n = k + 1 . Let t ( x ) be a L-program with k + 1 distinct p-iterative terms. Let H W ( B ) * * be enrichment of the model H W ( B ) * of the signature σ * * = σ * { t 1 } , where p-iterative term t 1 is involved in construction t ( x ) . In the new model H W ( B ) * * , L-program t ( x ) has only k distinct p-iterative terms and by induction step, the L-program t ( x ) has a polynomial complexity. □

5. Polynomiality via p-Iterative Terms

Let f ( x ) be a p-computable function, and let h ( | x | ) be a polynomial, such that r ( f ( x ) ) h ( | x | ) .
Let the universe of the model H W ( B ) contain the natural numbers N in the main set. Signature σ contains the constants 0 and 1, Σ alphabet, and R and L, contain multiplication × and addition + operations on N, operation of string concatenation c o n c a t , and operation of string length ( | | ).
Remark 5.
The new operations ×, +, concat, and | | are polynomial.
For any polynomial h ( | x | ) , there is a suitable L-program. Let q i 1 ̲ be a L-program of the form c o n c a t ( c o n c a t ( c o n c a t ( q , q ) ) , q ) , where the function c o n c a t is used i 1 + 1 -times. Then, for each element of the form < q i 1 , s j 1 , q i 2 , s j 2 , β > from the Turing machine program P T f , there is a suitable L-program v ( q i 1 ̲ , s j 1 , q i 2 ̲ , s j 2 , β ) of the form:
v ( q i 1 ̲ , s j 1 , q i 2 ̲ , s j 2 , β ) = c o n s ( c o n s ( c o n s ( c o n s ( c o n s ( n i l , q i 1 ̲ ) , s j 1 ) , q i 2 ̲ ) , s j 2 ) , β )
Theorem 3.
For any p-computable function, there is an L-program defining this function.
Proof. 
Let f be some p-computable function, h ( | x | ) some polynomial such that:
r ( f ( x ) ) h ( | x | )
Consider the Turing machine T f over alphabet Σ with program P T f that realizes the function f. Let us construct a list l f of terms of the form v ( q i 1 , s j 1 , q i 2 , s j 2 , β ) use (16) from the program P T f , where β { R , L } . Then, L-formula φ ( x ) has a form:
φ ( x ) : F i n a l ( x )
where predicate F i n a l ( w ) is true if w is a machine word of the form
< < s m , , s 1 > , q 0 ̲ , < s 1 , , s k > >
It is apparent that the predicate F i n a l ( x ) has a polynomial complexity.
Define t a i l k ( x ) as applying tail operation k times to x . A conditional term g ( x ) [10] will be used for constructing a final L-program:
g ( x ) = x l 1 , where ( l 1 = f i r s t ( l f ) ) & ( x l 1 n i l ) x l i , where ( l i = h e a d ( t a i l k i ( l f ) ) ) & ( x l i n i l ) x l k , where ( l k = h e a d ( l f ) ) & ( x l k n i l ) x , otherwise
Define m w ( x ) as the L-program that transforms a word w to the machine word of the form < n i l , q 1 ̲ , w > . This L-program has a form:
m w ( x ) = c o n s ( c o n s _ l ( c o n s ( n i l , q 1 ̲ ) , n i l ) , s t r L i s t ( x ) )
L-program m w ( x ) transforms the word x to the machine word for the initial configuration c 0 of the Turing machine T f .
Define v a l u e ( x ) as the L-program that transforms a machine word w into the word on the tape of the Turing machine T f . This function is constructed as follows:
v a l u e ( w ) = l i s t S t r ( c o n c ( f i r s t ( w ) , h e a d ( w ) ) )
Define p-iterative term t ( m w ( x ) , h ( | x | ) ) using construction (12) with the L-program g ( x ) of the form (19), the formula φ from (18), the polynomial h ( | x | ) from (17), and L-programs from (20) and (21).
The final L-program representing the function f ( x ) has the form:
v a l u e ( t ( m w ( x ) , h ( | x | ) ) )
Note that the L-program t ( m w ( x ) , h ( | x | ) ) satisfies the conditions of Theorem 1 and, therefore, v a l u e ( t ( m w ( x ) , h ( | x | ) ) ) is a p-computable. □

6. Conclusions

The work shows the equality of classes P and L. The main motivation was to create a not Turing complete logical programming language describing the class of polynomial algorithms. Programs in this language are logical terms and have polynomial complexity. For any polynomial algorithm, there is a program describing it. One of the main contributions of this work is the construction of a new logical language L that is equal to the class P. Another contribution is the construction of a p-iterative term for this. The main limitation is that this language is not Turing complete. Therefore, it is impossible to realize algorithms on it with the complexity being higher than polynomial.
Thus, language L is rich enough to describe any algorithms of polynomial complexity. These results are one more step in the construction of high-level programming languages based on logical language L. Moreover, programs in such languages will remain polynomially computable. It means that programs stop running every time, work quickly, and produce results. It is especially important during the development of blockchain technologies and smart contracts. Since smart contracts are programs in a distributed environment, the correct functioning of the entire blockchain as a whole depends on the result of its execution. Such smart contracts should be executed quickly and should not consume a lot of computing resources.
The work has built a logical language that allows one to create fast and reliable programs. These programs will be used in computer science, robotics, the Internet of things, blockchain technologies, medicine, and artificial intelligence.
High-quality artificial intelligence requires not only just neural networks and machine learning, but also logical rules and their execution. An effective solution is the hybrid technologies of neural networks and logical rules that will make a breakthrough in the future. To construct such logical rules, the semantic programming theory suits perfectly well.

Author Contributions

Conceptualization, S.G. and A.N.; methodology, S.G. and A.N.; formal analysis, S.G.; validation, S.G.; investigation, S.G. and A.N.; writing—original draft preparation, A.N.; writing—review and editing, A.N.; supervision, S.G.; project administration, S.G.; software, A.N. All authors have read and agreed to the published version of the manuscript.

Funding

Goncharov research was funded by the project of Fundamental Research of the Sobolev institute of mathematics SB RAS number 0314-2019-0002.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Ershov, Y.L.; Goncharov, S.S.; Sviridenko, D.I. Semantic programming. In Proceedings of the Information Processing 86: Proceedings of the IFIP 10th World Computer Congress, Dublin, Ireland, 1–5 September 1986; Elsevier Sci.: Dublin, Ireland, 1986; Volume 10, pp. 1113–1120. [Google Scholar]
  2. Goncharov, S.S.; Sviridenko, D.I. Σ-programming. Transl. II Ser. Am. Math. Soc. 1989, 142, 101–121. [Google Scholar]
  3. Ershov, Y.L. Definability and Computability; Springer: Berlin/Heidelberg, Germany, 1996. [Google Scholar]
  4. Cenzer, D.; Remmel, J. Polynomial-time versus recursive models. Ann. Pure Appl. Log. 1991, 54, 17–58. [Google Scholar] [CrossRef] [Green Version]
  5. Lewis, H.; Papadimitriou, C. Elements of the Theory of Computation; Prentice-Hall: Upper Saddle River, NJ, USA, 1998. [Google Scholar]
  6. Mantsivoda, A.; Ponomaryov, D. A Formalization of Document Models with Semantic Modelling; Series Mathematics; The Bulletin of Irkutsk State University: Irkutsk, Russia, 2019; Volume 27, pp. 36–54. [Google Scholar] [CrossRef]
  7. Gumirov, V.; Matyukov, P.; Palchunov, D. Semantic Domain-specific Languages. In Proceedings of the International Multi-Conference on Engineering, Computer and Information Sciences (SIBIRCON), Novosibirsk, Russia, 21–27 October 2019; pp. 955–960. [Google Scholar] [CrossRef]
  8. Kalimullin, I.; Melnikov, A.; Ng, K. Algebraic structures computable without delay. Theor. Comput. Sci. 2017, 674, 73–98. [Google Scholar] [CrossRef]
  9. Alaev, P.E. Structures Computable in Polynomial Time. I. Algebra Log. 2017, 55, 421–435. [Google Scholar] [CrossRef]
  10. Goncharov, S.S.; Sviridenko, D.I. Logical language of description of polynomial computing. Dokl. Math. 2019, 99, 121–124. [Google Scholar] [CrossRef]
  11. Goncharov, S.; Nechesov, A. Polynomial analogue of Gandy’s fixed point theorem. Mathematics 2021, 9, 2102. [Google Scholar] [CrossRef]
  12. Ospichev, S.S.; Ponomaryov, D.K. On the complexity of formulas in semantic programming. Sib. Electron. Math. Rep. 2018, 15, 987–995. [Google Scholar] [CrossRef]
  13. Goncharov, S.S. Conditional Terms in Semantic Programming. Sib. Math. J. 2017, 58, 794–800. [Google Scholar] [CrossRef]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Goncharov, S.; Nechesov, A. Solution of the Problem P = L. Mathematics 2022, 10, 113. https://doi.org/10.3390/math10010113

AMA Style

Goncharov S, Nechesov A. Solution of the Problem P = L. Mathematics. 2022; 10(1):113. https://doi.org/10.3390/math10010113

Chicago/Turabian Style

Goncharov, Sergey, and Andrey Nechesov. 2022. "Solution of the Problem P = L" Mathematics 10, no. 1: 113. https://doi.org/10.3390/math10010113

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop