Wikipedia:Network operator matrix

Network operator matrix (NOM) is a representation of mathematical expressions in computer memory.

NOM is a new approach to the problem of automatic search of mathematical equations. The researcher defines the sets of operations, variables and parameters. The computer program generates a number of mathematical equations that satisfy given restrictions. Then the optimization algorithm finds the structure of appropriate mathematical expression and its parameters. Network operator is a directed graph that corresponds to some mathematical expressions. Every source nodes of the graph are variables or constants of mathematical expression, inner nodes correspond to binary operations and edges correspond to unary operations. The calculation’s result of mathematical expression is kept in the last sink node.

Example
Consider the following mathematical expression

The graph for Expression ($$), is presented in Fig. 1.

On the edges we place unary operations

$$\rho_1(z)= z \, ;$$ $$\rho_3(z)= -z \,;$$ $$\rho_6(n) = \begin{cases} \varepsilon\!^{ -1}, & \text{if }z>\ln \varepsilon \!\\ e^z, & \text{ otherwise} \end{cases} $$\rho_{12}(z)= \sin z \,;$$

In the inner and sink nodes we place binary operations $$\chi_0(z',z)= z'+z \, ;$$ $$\chi_1(z',z)= z' \times z \, ;$$

Expression 1 can be presented in the PC memory as a NOM


 * $$\Psi = \begin{bmatrix}

0 & 0 & 0 & 1 & 1 & 0 & 0 & 12 \\ 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 3 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 & 1 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 6 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \end{bmatrix}$$

Any mathematical expression can be presented as a network operator matrix. To calculate the mathematical expression by the network operator matrix the node vector is used. Each component of node vector corresponds to the nodes of the network operator graph. Initially each component is equal to the argument for the given node or the unit element of binary operation. For addition and multiplication the number of operation equals its unit element. For addition it is 0, for multiplication it is 1. The node vector for the given example $$\mathbf{z}=[x_1\ q_1\ x_2\ 0\ 1\ 0\ 1\ 0]^T$$ The calculation by matrix $$\Psi $$ is performed for nonzero nondiagonal elements $$\psi_{(i,j)}\neq 0$$ by $$z_j=\chi_{\psi_{j,j}}(z_j,\rho_{\psi_{i,j}}(z_i))$$

Follow the rows of the matrix. For the Row 1 we have $$\psi_{1,4}=1$$, that is $$i=1$$, $$j=4$$, $$\psi_{j,j}=\psi_{4,4}=0$$.

Take arguments from $$\mathbf{z}=[x_1\ q_1\ x_2\ 0\ 1\ 0\ 1\ 0]^T$$

$$z_1=x_1$$, $$z_4=0$$ then $$z_4=\chi_{\psi_{4,4}}(z_4,\rho_{\psi_{1,4}}(z_1))=\chi_0(z_4,\rho_1(z_1))=0+x_1=x_1$$ Further in Row 1 we have $$\psi_{1,5}=1$$ $$z_5=\chi_{\psi_{5,5}}(z_5,\rho_{\psi_{1,5}}(z_1))=\chi_1(z_5,\rho_1(z_1))=1\times x_1=x_1$$ $$\psi_{1,8}=12$$ $$z_8=\chi_{\psi_{8,8}}(z_8,\rho_{\psi_{1,8}}(z_1))=\chi_0(z_8,\rho_{12}(z_1))=0+\sin x_1=\sin x_1$$. As a result after Row 1 we have $$\mathbf{z}=[x_1\ q_1\ x_2\ x_1\ x_1\ 0\ 1\ \sin x_1]^T$$. For the Row 2 we have $$\psi_{2,5}=1$$ $$z_5=\chi_{\psi_{5,5}}(z_5,\rho_{\psi_{2,5}}(z_2))=\chi_1(z_5,\rho_{1}(z_1))=x_1q_1$$ then follow the rows

$$\psi_{3,6}=3$$ $$z_6=\chi_{\psi_{6,6}}(z_6,\rho_{\psi_{3,6}}(z_3))=\chi_0(z_6,\rho_{3}(z_3))=0+(-x_2)=-x_2$$

$$\psi_{4,8}=1$$ $$z_8=\chi_{\psi_{8,8}}(z_8,\rho_{\psi_{4,8}}(z_4))=\chi_0(z_8,\rho_{1}(z_4))=\sin x_1+x_1$$

$$\psi_{5,7}=1$$ $$z_7=\chi_{\psi_{7,7}}(z_7,\rho_{\psi_{5,7}}(z_5))=\chi_1(z_7,\rho_{1}(z_5))=1x_1q_1=x_1q_1$$

$$\psi_{6,7}=6$$ $$z_7=\chi_{\psi_{7,7}}(z_7,\rho_{\psi_{6,7}}(z_6))=\chi_1(z_7,\rho_{6}(z_6))=x_1q_1e^{-x_2}$$

$$\psi_{7,8}=1$$ $$z_8=\chi_{\psi_{8,8}}(z_8,\rho_{\psi_{7,8}}(z_7))=\chi_0(z_8,\rho_{1}(z_7))=\sin x_1+x_1+x_1q_1e^{-x_2}$$.