Networks of Picture Processors with Filtering Based on Evaluation Sets as Solvers for Cryptographic Puzzles Based on Random Multivariate Quadratic Equations

: Networks of picture processors is a massively distributed and parallel computational model inspired by the evolutionary cellular processes, which offers efﬁcient solutions for NP-complete problems. This bio-inspired model computes two-dimensional strings (pictures) using simple rewriting rules (evolutionary operations). The functioning of this model mimics a community of cells (pictures) that are evolving according to these bio-operations via a selection process that ﬁlters valid surviving cells. In this paper, we propose an extension of this model that empowers it with a ﬂexible method that selects the processed pictures based on a quantitative evaluation of its content. In order to show the versatility of this extension, we introduce a solver for a cryptographic proof-of-work based on the hardness of ﬁnding a solution to a set of random quadratic equations over the ﬁnite ﬁeld F 2 . This problem is demonstrated to be NP-hard, even with quadratic polynomials over the ﬁeld F 2 , when the number of equations and the number of variables are of roughly the same size. The proposed solution runs in O ( n 2 ) computational steps for any size ( n , m ) of the input pictures. In this context, this paper opens up a wide ﬁeld of research that looks for theoretical and practical solutions of cryptographic problems via software/hardware implementations based on bio-inspired computational models.


Introduction
Networks of bio-inspired processors (NBP) is a family of computational models facing NP-complete problems by mimicking, from a syntactical perspective, the manner by which cell communities evolve via gene mutations in DNA molecules. Each cell is represented by a word that describes their DNA sequences. Mutation and cellular division are defined by operations based on string rewritings. Cells form colonies, which belongs to specific species, and a colony can be interpreted as an evolutionary system that evolves according to these operations. This dynamic abstracts the natural process of evolution and it is defined A generalization of the polarization concept using evaluation sets to enhance the valuation mapping to calculate the exact value (not only the sign of this value) was proposed in [14] and was used to empower the network of splicing processors [15] and the networks of evolutionary processors [16] models. In these works, the valuation mapping is used to give the precise numerical value of a string. In addition, the polarization is redefined to provide a filtering strategy able to allow the communication between two nodes, simulating the movement of molecules or particles from an area to other along a concentration gradient in a solution. Finally, it is demonstrated that this kind of communication protocol is more flexible and is able to deal with hard optimization problems with integer restrictions in an efficient way.
In this context, we propose an extension of the NPEPP model proposed in [11], enhancing this model with the evaluation sets as filtering strategy for improving the communication protocol. In particular, we adapted the communication protocol working over strings proposed in [14,15] to work over pictures.
With this proposal, we enhanced the general NPP model with a more versatile protocol to include some quantitative features in a simple way, keeping rules for pictures processing. To show the computational power of our proposed model as well as its flexibility, we show how to leverage it to solve systems of quadratic polynomial equations over finite fields, e.g., the so called multivariate quadratic (MQ) problem.
Based on the hardness of the MQ problem (or variants of it), several cryptographic primitives have been constructed over the years. For instance, it is the security underpinning of the multivariate public key cryptosystems, a new family of post-quantum cryptographic schemes that withstand the action or effect of quantum computer attacks. In general terms, the hardness of solving the MQ problem over F 2 is directly connected to the security of these cryptographic schemes [17]. Recently, the authors of [18] proposed a proof-of-work (PoW) based on random multivariate quadratic equations for a post-quantum blockchain [19], which requests a solver (miner) to solve a set of random multivariate quadratic equations (RMQE) over the finite field F 2 .
The main aim of this research paper was to provide a solver for the MQ problem over F 2 using our extended and adapted model from NPP, named network of picture processors with evaluation sets (NPPES). As far as we know, this is the first occasion in which a bio-inspired computational model, such as the NBP model, was used to deal with solving systems of random quadratic equations (SRQE/RMQE) and therefore this paper proposes a unconventional solver for the PoW proposed in [18] running in O(n 2 ) computational (processing and communication) steps, where n is the number of indeterminates. We remark that some results reported in the literature solving SRQE/RMQE problem require exponential time [20][21][22][23] for specific n, m input values. Therefore, our results suggest that the NPPES model faces such problems adequately and that the proposed network might be potentially deployed into a massively distributed and highly parallel platform without any modification, extension or adaptation. This paper is structured as follows. In Section 2, we introduce the background concepts as well as the formal definition for the NPPES model. Section 3 discusses the capability of NPPES to solve the RMQE problem. We designed an NPEPP algorithm that works in O(n 2 ) time. In addition, in Section 4.6, we discuss the obtained results, the reasons we believe our solution is more suitable for such problems and how the proposed algorithm may be transformed to be deploy into an ultra-scalable computational platform without any modification, extension or adaptation. Finally, conclusions and forthcoming works are presented in Section 5.

Networks Picture Processors with Filtering by Evaluation Sets
In this section, we introduce the network of picture processors with evaluation sets (NPPES) proposed model. First, we start off by summarizing the notions used throughout this paper, which were previously introduced in [7]. This is the theoretical background underlying our proposed model. We later introduce the formal definitions for the NPPES model.

Preliminary Concepts
We define an alphabet as a set of non-empty symbols. The number of elements of a finite set S is denoted by card(S) (this is also known as the cardinality of S). Also, we define a picture as a two-dimensional array of symbols taken from an alphabet V. The set V * * denotes the set of all pictures over V and ε denotes the empty picture. The pair (π, |π|) defines the size of the picture π, where π denotes the number of rows and |π| denotes the number of columns of π. The size of the empty picture ε is given by (n, m) with nm = 0. The notation π(i, j) denotes the symbol placed at the intersection of the i th row with the j th column of the picture π.
Let π be a picture of size (m, n) over V, is a sub-picture of π that consist of all symbols π(k i , k j ) with i ≤ k i ≤ k and j ≤ k j ≤ l. Following this definition, π is [1,1] π [m,n] . The minimal alphabet containing all visible symbols appearing in a picture π is denoted by al ph(π). Also, we define a valuation of V * in Z as a homomorphism from the monoid V * to the monoid of additive integers Z. For any alphabet V and a symbol a ∈ V, ¡ a denotes the invisible copy of a and [k,l] are from V and all the other elements of π are from V. In this case, the maximal visible subpicture of π is denoted as [i,j] π [k,l] . In concrete, a well-defined picture π may be interpreted as one having some rows and/or columns on its border hidden but not deleted. We stress that any picture over the alphabet V is a well-defined picture and that, from this point forward, we deal with only well-defined pictures.
We use the rewriting operations or evolutionary rules such as they are introduced and used in [6,7]. Concretely, we use substitution, mask and unmask rules. We summarize the definitions of these rules below. In order to know the rest of rules (insertion and deletion) as well as the formal definitions for all evolutionary rules, we refer the reader to [7].
An evolutionary rule is defined as r = s 1 → s 2 , with s 1 , s 2 ∈ V ∪ {ε}. Particularly, r is defined as a substitution rule if neither s 1 nor s 2 is ε.The set Sub V = {s 1 → s 2 | s 1 , s 2 ∈ V} is the set of substitution rules. On the other hand, a mask rule is a rule able to hide a column or a row. Similarly, an unmask rule is able to make visible a column or a row. The action mode is the element that defines the picture's position in which a rule r can be applied. Let π be a picture π ∈ (V ∪ V) n m and let π max be the maximal visible subpicture of π, then the actions of r on π are (←, →, ↑, ↓, +). These actions are defined as following: • Substitution rules: r ← (π) is the set of all pictures obtained from π by replacing an occurrence of s 1 by s 2 in the leftmost column of π max . We remark that r is applied to all instances of the symbol s 1 in the leftmost column of the π max 's different copies. -Similarly as above, r → (π) is the set of all pictures obtained by applying r to the rightmost column of π; r ↑ (π) is the set of all pictures obtained by applying r to the first row of π; r ↓ (π) is the set of all pictures obtained by applying r to the last row of π; r + (π) is the set of all pictures obtained by applying r to any column/row of the π max .
• Mask and unmask rules: mask ← (π) returns a picture obtained from π, by transforming all visible symbols from the leftmost column of the π max into their invisible copies. Analogously, it is defined as the mappings mask → , mask ↑ and mask ↓ .

NPPES: Formal Model Definition
We start defining a new function that is required to extend the NPP model with the filtering strategy using evaluation sets. This function is necessary to extend or more precisely generalize the NPP variant proposed in [11]. Definition 1. Let V be a finite alphabet and π be a picture over V with size (m, n). We define the projection function Φ : This function is required because we need to calculate, for a picture, the "concentration" of the symbols included in S. Therefore, this function ignores the other symbols that do not belong to S. With this definition and other components required to propose the evaluation sets filtering strategy, we define our extension of a picture processor as follows.

Definition 2.
Let V be an alphabet. A generalized picture processor over V is a triple (M, S, α) such that: • M is a set of evolutionary rules containing either substitution or deletion rules over V (M ⊆ Sub V or M ⊆ Del V ).
α is a set of mutually disjoint intervals of Z, which gives the generalized polarity of the node. In particular, the polarity of a node, that is −, 0, +, in our generalization, it can be viewed as the intervals (−∞, 0), {0}, (0, ∞), respectively.

Definition 3.
A hiding generalized picture processor over V ∪ V is a triple (M, S, α) such that M is a set of either mask or unmask rules over V. The rest of the other parameters are identical to those in the Definition 2.
The set of (hiding) generalized picture processors over V is denoted by GPP V . Evidently, the generalized picture processor introduced here is a mathematical concept comparable to that of an evolutionary algorithm, both of which are motivated by the Darwinism. Compared to evolutionary algorithms, the evolutionary rules may be understood as a two-dimensional generalization of gene mutations and the evaluation sets (supported by means of S and α elements, Definitions 1 and 2) might be seen as a selection process similar to, as we have mentioned in the Section 1, the bio-electrical properties of the concentration gradients in a solution.

Definition 4.
A network of picture processors with evaluation sets (NPPES) is a 10-tuple Γ = (V, U, G, R, β, ρ, ϕ, In, Halt, Accept), where: • V is the input alphabet and U is the network alphabet.
is an undirected graph (which is called the underlying graph of the network) such that X G is the set of vertices and E G is the set of edges. • R : X G → GPP U defines a mapping for associating each node x ∈ X G with the generalized picture processor R(x) over U, such that R(x) = (M x , S x , α x ). • β : X G → {←, →, ↑, ↓, +} such that β(x) defines the action mode of the rules of node x on the pictures existing in that node. • ρ is a mapping which allows to associate each subset of U with an interval (possibly empty) of Z satisfying that ρ(X) ∩ ρ(Y) = ∅ for any X = Y subsets of U.
In, Halt, Accept are nodes of X G such that they are the input, halting and accepting nodes of Γ, respectively.

Definition 5.
A configuration of an NPPES Γ such as it is defined in the Definition 4, is a mapping C : X G → P (U * * ) linking every node of the network's graph with a set of pictures. Informally, a configuration represents the content (the set of pictures) of each node at a given moment. Let π ∈ V * * a picture, the initial configuration of Γ on π is formally denoted by C An NPPES network evolves through two steps: processing and communication steps over the configurations. On a processing step for instance, each element belonging to a configuration C evolves according to the set of rules defined for the node x (M x ). These steps are defined as follows. Definition 6. One processing step that produces a configuration C is obtained from the previous configuration C, which is denoted by C =⇒ C , iff Definition 7. One communication step, denoted by C C produces a configuration C denoted by where Assuming that a picture within node x has its valuation with respect to some X ∈ S x in ρ(X), if ρ(X) belongs to α x , then a copy of the picture is kept within the node x, else it is forced out. If ρ(X) ∈ α y , y ∈ X G , then a copy of the picture gets into y as long as x is adjacent to y in G. On condition that a picture is forced out of a node and is not able to get in any node, then it is lost. We remark that a copy of some picture π can stay in x and the same time other copies of π can move from x to other nodes that are adjacent to x.

Definition 8.
A computation for an NPPES Γ on the input picture π ∈ V * * is defined as a sequence of configurations C is the initial configuration and C 2i+2 , for all i ≥ 0 are the processing and communication steps performed in an alternate way. Note that the configuration C Finally, the stop condition for an NPPES Γ occurs when the halting node is non-empty at some point of the computation. Then, the picture language decided by Γ is given by * | the computation of Γ on π stops with a non-empty accepting node}.

Random Multivariate Quadratic Equations
In this section, we formally describe a well-known NP-hard problem regarding the hardness of solving a set of m random quadratic equations in n indeterminates over a finite field F. This is called the MQ problem [24].
Let F q be the finite field with q elements. The multivariate quadratic (MQ) problem is defined as follows. Given m quadratic polynomials P (1) , P (2) , . . . , P (m) in the n indeterminates x 1 , . . . , x n as shown below 0 ∈ F q , with 1 ≤ k ≤ m and 1 ≤ i ≤ j ≤ n, are chosen uniformly and independently in a random way. The MQ problem asks to findx = (x 1 , . . . ,x n ) ∈ F n q such that The MQ problem is proven to be NP hard, even with quadratic polynomials over the field F 2 (MQ 2 ) [24]. Moreover, the hardness of the MQ problem is the security underpinning for multivariate public key cryptosystems [25], a new family of post-quantum cryptosystems that can withstand the action or effect of quantum computer attacks. For instance, several MQ-based signature schemes were submitted to the National Institute of Standardization of Technology post-quantum cryptographic standardization process [23,[25][26][27][28]. In particular, Rainbow has been included in the third round of this process [29].
The MQ problem has also been used to construct a proof of work for post-quantum blockchains [19], and is part of the cryptocurrency called ABC Mint [18]. In this setting, the solver's task is to find a solution to a given instance of the problem within a reasonable period of time in order for the solver to include a block of transactions in the blockchain. In particular, this instance of the MQ problem is defined over F q ∼ = F 2 with n being a suitable but variable chosen integer and m being set to n − 8. The reason of this choice is to guarantee that a solution can be found with overwhelming probability within a reasonable period of time [18]. To perform the task, a solver first generates a bit string of (n − 8) · (n · (n − 1)/2 + n + 1) bits uniformly and independently at random, by applying a cryptographic hash function to a random input formed from the block to be included in the blockchain. This long string is then partitioned into (n − 8) strings of n · (n − 1)/2 + n + 1 bits, each of which represent the coefficients of a polynomial in the equations system. The solver then performs a computational task consisting in finding a vector x = (x 1 , . . . ,x n ) such that the Equation (4) holds [18].
As an additional remark, a coefficient-based representation of a polynomial P k (x) requires storing n · (n − 1)/2 + n + 1 elements of F q . In total, m · (n · (n − 1)/2 + n + 1) elements of F q are required to represent all polynomials. That is, a complete coefficient-based representation of all polynomials in the equation system requires log(q) · m · (n · (n − 1)/2 + n + 1) bits in a classical computer.
Another contribution of this paper is that we construct a solver based on NPPES for solving an instance of the MQ problem, assuming the polynomials P (1) (x), P (2) (x), . . . , P (n−8) (x) are given in a special form. We introduce such solver based on NPPES, which is able to find a vectorx = (x 1 , . . . ,x n ) that satisfies the Equation (4), in the following section.

A Solver for the Random Multivariate Quadratic Equations (RMQE) Problem Using NPPES
In this section we discuss how to construct a solver for the MQ problem described in the previous section.
Let n, m ∈ N be defined as the number of variables and equations respectively. Following the definitions introduced in the Section 2, we define the next components of an NPPES, named Γ, for our proposed solver. i assumes the value 0. Let Π be the set of pictures π (k) , for 1 ≤ k ≤ m, where the size of each picture π (k) is (n + 3, 3 · n). Each picture may be seen as a matrix of which rows are indexed starting from one. The n first rows of i,j x i x j for 1 ≤ i ≤ j ≤ n, having the empty entries filled with the symbol $. In particular, the l th -row, with 1 ≤ l ≤ n, has the first 3 · (l − 1) entries, from left to right, filled with the symbol $, the entry 3 · l filled with a symbol from {p i,j }, then the entry 3 · l + 1 filled with x l , then the entry 3 · l + 2 filled with x l and so on. The n + 1 row of π (k) encodes the terms p (k) having the empty entries filled with the symbol $. The n + 2 row encodes the independent term p (k) 0 and the k term, having the empty entries filled with the symbol $. Finally, the last row encodes the control symbols from the set C, which are required for internal computation of Γ. For example, 0 , it is then encoded as the picture shown by Table 1.
We remark that our network receives m input pictures encoding the m polynomials P (1) (x), . . . , P (m) (x) from the instance of the problem to be solved, and then our network Γ will obtain values (if they exists) for the indeterminates x 1 , x 2 , x 3 , . . . , x n such that Equation (4) holds.  6. The mapping function ρ is defined as follows: )} We assume that any symbol in U not appearing in the previous mapping has an empty interval for evaluation since it is not relevant for the proposed algorithm. 7. The function ϕ is defined as follows:       Table 3. Internals of the nodes of the subnetwork Eval 1 .

The Node in
By default, in the initial configuration, the node In holds the input picture coding the instance of the problem to solve. For our network Γ, the node In holds the input pictures representing each polynomial P (1) (x), P (2) (x), . . . , P (m) (x). In addition, this node serves like a both receptor and transmitter of the pictures processed by subnetwork Gen. For this reason, this node only has a substitution rule that changes one control symbol by other one. In particular, while the subnetwork Gen is generating configurations, i.e., pictures with the corresponding symbols assigned to each indeterminate, these are allowed to pass to the Eval 1 subnetwork by the In node for further processing. This node's internals are shown in Table 2.

Generating Subnetwork
The subnetwork Gen represents the generating phase, namely, the phase in charge of generating m · 2 n configurations for the initial pictures π 1 , π 2 , π 3 , . . . π m encoding an RMQE instance. In particular, this subnetwork replaces each x i for a symbol x i or x i , which represents the value 1 or 0 respectively, and hence generates 2 n configurations for each initial picture π k . The graphical representation of the underlying subgraph for subnetwork Gen is depicted in the Figure 2.
According to the Figure 2, each indeterminate x i is represented by two nodes, namely, X 0 i and X 1 i . Concretely, the node X 0 i replaces all occurrences of symbol x i for the symbol x i (which represents 0). On the other hand, the node X 1 i replaces all occurrences of symbol x i for one symbol x i (which represents the value 1). After n processing steps, the subnetwork Gen will have modified all x i symbols and generated 2 n configurations for each initial picture π k . These configurations will be collected by the In node. The internals of each node X 1 i , X 0 i , 1 ≤ i ≤ n in this subnetwork are defined in the Table 2.

Linear-Evaluating Subnetwork
The aim of this subnetwork is to evaluate AND operations for each pair of symbols p (k) i x i with 1 ≤ i ≤ n, which are encoded at the row n + 1 of each picture. The graph representing this subnetwork is depicted in the Figure 3.
This subnetwork starts off with the node G receiving pictures from the node In. The received pictures are then processed by the node G, by masking the two last rows (at indexes (n + 2) and (n + 3)) from them. This makes each processed picture's last visible row be the row that contains the terms p (k) i x i (i.e., the n − 1 row). This row is what will then be processed by other nodes in this subnetwork, by applying on it substitution rules with the β mode ↓.
The node L serves as a control node to keep the traceability of the substitution of each pair p (k) i x i done by the subnetwork X i depicted in the Figure 3 (the internals of these boxes can be seen in the rectangle at left-upper corner). In a similar way as the subnetwork Gen operates, the nodes X 0 i and X 1 i replace all occurrences of symbols x i and x i for an intermediary symbol in the setẊ. With them, this subnetwork is able to evaluate whether the result of the AND operation for the pair p (k) i x i is 0 or 1 through the evaluation sets defined in the nodes X 0 i and X 1 i , respectively. In these nodes, the symbols belonging to the set P L are substituted by the symbols either x i or x i according to the result from the AND operation (representing 0 and 1, respectively). Concretely, in the node X 1 i , the symbols representing the p (k) i values are substituted by trash symbols either $ or . Subsequently, the nodes X 1 i and X 1 i let pass only the pictures which evaluation represents 1 or 0, respectively. Then, they substitute the trash symbols for the specific result (1 or 0). Therefore, the result of the evaluation has been assigned to the place for the p (k) i symbols at the picture. The processing for L and nodes represented in the boxes X i is repeated until all terms p (k) i x i in the pictures have been substituted, with the valid resulting pictures leaving the node L and entering the node Q. Finally, the node Q masks the recently evaluated row for all received pictures making only the first n rows visible, i.e., the rows that encode the terms the p (k) i,j x i x j . In this way, the pictures are prepared for the following phase (subnetwork Eval 2 ), which evaluates the quadratic terms. The internals of each node in this subnetwork Eval 1 are defined in the Table 3.

Quadratic-Evaluating Subnetwork
This subnetwork is responsible for evaluating each term p (k) i,j x i x j in the pictures. The result from evaluating the AND operation between each one these three terms will be represented by the substitution of the p (k) i,j symbols by a symbol 0 or 1 (depending of the result). Similarly at the subnetwork Eval 1 , the symbols x i | x i are replaced by the trash symbols $ or $ . The Figure 4 depicts the graph of this subnetwork. The internals of each node in this subnetwork are defined in the Table 4.
The processing of this subnetwork starts off with the node U 1 receiving all pictures from the node Q. Then, this node unmasks all invisible rows such that it makes the last rows visible. More specifically, the node U 1 unmasks the rows at indexes (n + 1),(n + 2) and (n + 3) in each received picture. After that, the processed pictures are allowed to move to the node F 1 , which substitutes the control symbol c 0 and the symbol k in each picture for the symbols c 0 and k , respectively. Note that this node only does this substitution once and it is only for controlling the internal processing.
After this substitution is carried out, the process for evaluating each row containing the terms p (k) i,j x i x j , 1 ≤ i ≤ j ≤ n starts such that each term is evaluated one at time. The node F 2 is responsible for keeping track the evaluation of each row. Specifically, this node starts with the substitution of the symbol c 0 for c 1 in order to indicate that the row 1 will be evaluated subsequently. In addition, this node substitutes all symbols for the trash symbol $, because they are no longer needed.
The next time this node receive pictures from node F 7 , it can substitute the symbol again and so on until all rows are evaluated. The node M is able to mask all columns from the rightmost column to the column containing the x j (exclusive) symbol of the current p (k) i,j x i x j to be evaluated (this is controlled by means of the c i symbol place at this same column). With this masking process, Γ makes visible only the current three terms p (k) i,j x i x j at the first visible row. Subsequently, the operation AND is calculated for these three symbols in a similar way as it is processed for the subnetwork Eval 1 (in the boxes X i ). More concretely, this evaluation is done by the nodes A 0 i , A 1 i and A 1 i . Then, the node F 3 substitutes the c i forc i in order to identify that the current quadratic term was evaluated. In addition, this node substitutes the $ symbol for the original one. Note that the result of the AND operation is encoded at the place in which the symbol p (k) i,j was placed. In order to carry out the evaluation for the rest of the p (k) i,j x i x j terms in the current row, the nodes U 2 and M 1 unmask the rightmost three columns and mask the current three visible columns, respectively. M 1 is connected with the nodes A 0 i , A 1 i and A 1 i and it allows that the process for evaluating each p (k) i,j x i x j term is repeated until all of them are evaluated. When it occurs, the pictures from node F 3 migrate to the node F 5 and it makes the other branch of the subnetwork will be processed.
Given that the last control symbol substituted was c n byc n , the pictures can enter to the node F 5 . Then, this node returns the symbolsc n to their original one (c n ). Similarly, this node substitutes the symbols k by their original ones. After that, the pictures migrate to the node F 6 and this node substitutes one symbol $ for ak in order to indicate that the current row was just evaluated. Then, the pictures enter to M 2 and the current row is masked. Subsequently, the node U 3 unmasks all masked columns to the left. The processing for this branch finishes when the node F 7 substitutes allc symbols for their original ones in the set C . With these substitutions, Γ is able to evaluate the next visible row and hence, the pictures migrate to the F 2 node in order to repeat the processing of the next row. When the pictures do not contain p (k) i,j x i x j symbols, then they migrate from the node F 2 to the node S 1 . Note that all pictures with the symbolk are allowed into the node S 1 . Finally, the nodes S 1 and S 2 are responsible for unmasking all hidden rows and columns in order to promote them for the next phase.

Validation Subnetwork
The goal of this subnetwork is twofold. First, this subnetwork calculates the final value for each picture, e.g., the evaluation to the polynomial that the picture represents. More specifically, this subnetwork computes the resulting value from each P (i) (i.e., 0 or 1), for all 1 ≤ i ≤ m, after performing XOR operations between the terms that compose the picture (summation of all them). This result will be stored as a value for the control symbol c 0 at the last row in the pictures. Second, this subnetwork groups all the pictures sharing the same values for the indeterminates x 1 , x 2 , . . . x n . This grouping will allow to obtain the solutions for the problem, that is, to find vectorsx satisfying Equation (4). The values for each x i remains represented by the symbols belonging to X or X placed into the row n (0 or 1, respectively). The Figure 5 depicts the graph of this subnetwork.
Concretely, the nodes V 1 , V 0 , V 1 and V 0 performs a XOR operation with the values placed in rows from one to n and replace the control symbol c 0 with the result obtained from performing the XOR operation, i.e., by substituting the symbol c 0 by other control symbol c 0 0 if the result of XOR operation is 0 or c 1 0 otherwise. The nodes V i 2 , 0 ≤ i < 2 n , group all pictures belonging to each possible combination of n values assigned to the indeterminates. In particular, each configuration is mapped to an integer in the range [0, 2 n − 1]. Previously, the node W has substituted all symbols in the sets X and X for their corresponding symbols in the setsẊ andẌ, respectively. It is necessary in order to evaluate each configuration filtering each picture according to the value obtained by nodes V i 2 , 0 ≤ i < 2 n . These nodes substitutes the control symbol c 1 for a control symbol R i , 0 ≤ i ≤ 2 n − 1, where the index i represents the number of configuration. Finally, the node Halt substitutes all symbols belonging to the setsẊ andẌ for the original ones and the node Accept collects all pictures representing the solution of the input instance. The internals of each node in this subnetwork are defined in the following Table 5.

Discussion
Lemma 1. The NPPES Γ defined in Section 4 computes a solution for the RMQE problem.
Proof of Lemma 1. At the beginning of the computation, Γ contains the set of pictures Π = {π (1) , π (2) , . . . , π (m) } encoding the polynomials to be evaluated (all of them in the node In). Thus, the initial configuration is defined by C 0 (In) = Π and C 0 (x) = ∅, ∀ x ∈ X G \{In}. The next configuration of Γ consist of the initial pictures (with the c 0 symbol substituted by c 0 ) for all X 0 i , X 1 i , 1 ≤ i ≤ n represented in the Figure 2. After n processing steps, the node In has collected m · 2 n pictures. Note that for each initial picture π ∈ Π, the subnetwork Gen generates a picture for each possible n−tuple of values to the indeterminates x 1 , x 2 , . . . x n in π. Therefore, it generates m · 2 n pictures that are collected by the node In and are then sent out to the subnetwork Eval 1 , more concretely to the node G. This node masks the three last rows in all received pictures and then sends the pictures out to the node L, which includes one new trash symbol indicating the first step to evaluate the terms placed in the row n, namely p Note that the nodes X 0 i , X 0 i evaluate, in two processing steps, whether each term is 0. At the same processing steps, the X 0 i , X 0 i nodes evaluate whether each term is 1. These evaluations are done by applying simple substitution rules. After n processing steps, each picture will have all p (k) i x i terms evaluated and be collected by the node L. All pictures then migrate to the Q node, which masks the row containing the recently evaluated terms (last row) within a processing step. Then, the pictures are sent out to the subnetwork Eval 2 , more precisely to the node U 1 . This node makes all masked rows in each received picture visible through two processing steps. Note that F 1 is a control node which performs its task once, then it performs one processing step. F 2 controls the rows being evaluated by the subnetwork, starting from the first row by substituting one symbol c i and n symbols using n processing steps. The i,j x i x j in each corresponding row of a picture, by making the three columns occupied by each term visible and then performing an AND operation with the corresponding values. When all terms are evaluated, the hidden columns are made visible again and a mechanism to indicate that this row was evaluated is used. Then, these nodes perform n times their respective steps.
The nodes F 5 , F 6 , F 7 , M 2 and U 3 make the just-evaluated row invisible, mark the index of the evaluated row (substituting the respective symbol in C and preparing the pictures for the evaluation of the next row). After the evaluation of the possible occurrences of the p (k) i,j x i x j terms, the node S 1 and subsequently S 2 collect all evaluated pictures and return the masked rows to the visible state after perform n and n − 3 processing steps, respectively. Then S 2 contains a set of pictures encoding each and every admissible evaluation of each polynomial in the Equation (3). However, at this stage, we need to organize all pictures by classes, where each groups pictures of each polynomial for one of the 2 n n−tuple of values that can be assigned to the indeterminates, and then determine which classes satisfy the Equation (4), if any (if a class has m pictures then the corresponding n−tuple is a solution).
The node W performs n processing steps in order to do all substitutions. V 0 and V 1 substitutes the independent term in the n + 1 row of a picture for the corresponding symbol for all pictures at the same processing step. In addition, these nodes let can pass to the nodes V 0 and V 1 only the pictures with evaluation of all symbols 1 being wither odd or even, respectively. V 0 and V 1 nodes substitute control symbols at the last row in the same processing step. The nodes V i 2 group the pictures according to each possible n−tuple of values for the indeterminates that satisfy Equation (4), via marking the picture with an R i symbol, where the index i represents the i th n−tuple of values, at same processing step. The transition of H to A is immediate: H returns the symbols of the vector to the original ones and A puts the final result of the evaluation in the control symbol c 0 0 . Each one of these two nodes perform one processing step. Finally, the node A collects the pictures containing the solution for the given instance. Therefore, as a consequence of this result, we obtained the following theorem: Theorem 1. The RMQE problem as it was defined in Section 3 can be solved by a NPPES Γ in time O(n 2 ).
-Nodes: F 2 , F 3 , F 4 , F 5 , F 6 , M 2 , F 7 : 7n steps (1 processing step performed by every node) -Nodes M 1 , U 2 : 6n steps (3n processing steps performed by every node) -Nodes M, U 3 : at most n(n − 3) steps for each of these nodes, then 2n(n − 3) -Nodes A 0 1 , A 1 i and A 1 i : at most n processing steps for each n row, then, n 2 steps -Node S 1 : n steps -Node S 2 : n − 3 steps • Subnetwork Val: n + 3 steps performed as follows: -Node W: n processing steps -Nodes V 1 , V 0 , 1 step -Nodes V 1 , V 0 , 1 step -Nodes V i 2 , 1 ≤ i ≤ n, 1 step • Nodes H and A, 1 step every node, then, 2 steps. Therefore, the total number of processing steps is not more than 3n 2 + 15n + 11. Note that, if a given instance of the problem has k solutions, with k ≥ 0, then Γ finds the k n−tuples of values for the indeterminates that are solutions for the given instance. Consequently, the overall time for solving an instance of the RMQE problem, as it is defined in Equation (4), is O(n 2 ).
We remark that the proposed network Γ seems to have a significant size in terms of number of nodes. This can be seen as an aspect to be improved; however, note that this construction allows us to control the exponential growth of the generated strings in any moment. In addition, we obtain a viable solution in an acceptable computation time given the complexity of the problem we are dealing with. Also, Γ sieves the correct pictures in an early identification step, minimizing the unnecessary copies. Additionally, note that other NBP models do not give such flexibility when the problem needs to meet integer constraints. Consequently, NPPES opens up an interesting perspective to fill this gap. Another important reason to support the solution we presented here is that, given the high maturity achieved by the ultra-scalable computing platforms, since this facilities deploying distributed algorithms in a reasonable way [16], our proposed solution might be deployed by using any hardware/software solution as those reported in [30], without requiring any modification (re-structuring of nodes, rules, mechanism to workload distribution between computational units or so on). That is to say, we potentially may put our solution to run on workers or parallel computing units in any scalable software or hardware platform without re-defining the proposed algorithm, because our distribution of nodes would be more suitable to reallocate parallel processing units within a real computing platform.

Conclusions and Final Remarks
We have introduced a solver for the RMQE problem that is based on NPPES and runs in quadratic time, suggesting that the NPPES model can be employed to cope with hard complex problems in which numerical evaluation has an essential role. In this context, the extended model is able to deal with a new variety of hard problems because of the model's new features, in particular its filtering strategy makes the selection of correct pictures easier compared to the previous model. Additionally, the model exhibits efficiency and uses up less resources than similar bio-inspired models facing similar hard problems. To the best of our knowledge, this is the first time in which an NBP model is used to propose a solver for the RMQE problem. Also this solver demonstrates the computational power that may be achieved by employing bio-inspired computational models, since existing non-bio-inspired solutions run in exponential time for specific n, m input values. Furthermore, our proposed solution for the RMQE problem opens an interesting opportunity to propose new solvers for these complex problems, bringing about real computing solutions with a reasonable computing time (which can be understood as "efficient time").
In previous works [14,31], it is stated that NPEP solutions need an adaptation for allowing the deployment on computational platforms for massive distributed processing. Moreover, this adaptation must preserve the solution's complexity in order to achieve practical solutions to real problems on big data computing platforms (which is extensible to any solution using similar models computing pictures instead of strings). In this context, the proposed solution here does not require any adaptation to be deployed in massively parallel and distributed computing platforms, and therefore, we avoid the previously commented drawbacks when these algorithms are deployed in practical scenarios.
Our results additionally suggest that the NPPES model may be more simple than other models working on pictures or strings for tackling hard optimization problems with numerical evaluations. We thus think this model shows features worthy of further investigation, both from a theoretical approach and from a practical point of view. With respect to the latter, we think studying the limits of software and hardware implementations to attack complex problems with big data computing platforms deserves effort and attention. Additionally, researching into the suitability of extending this model to reinforce it for other related high-processing problems also is interesting. Finally, we shall return to these topics in a forthcoming work.