## 2 Methods: MVL Linked List as the Data Protection Model
### Logic Functions of the Multiple-Valued Allen-Givone Algebra  
Detailed description of basic calculations within discrete \(k\)-valued Allen-Givone algebra (AGA) [50] was given in, e.g., [18, 19]. The choice of this version of logic calculus was determined by the simplicity of its basic operators and the flexibility of design of multi-parametrical functions. In contrast to binary Boolean logic, AGA function \(y=f(x_{1},\ldots,x_{n})\) can be given by \(n\) input variables \(x_{1},\ldots,x_{n}\) and one output variable \(y\), which may be assigned \(k\) discrete truth levels, i.e., \(x_{1},\ x_{2},\ldots,x_{n},y\ \ L=\{0,\ 1,\ldots,\ k-1\}\). The complete set of its logic operators [50]  
\[<0,\ 1,\ldots,\ k-1,\ X(a,b),\ \ \star_{+}+> \tag{1}\]  
guarantees the possibility to represent arbitrary function \(y=f(x_{1},\ldots,x_{n})\) as some combination of logic constants \(0,\ 1,\ldots,\ k-1\), binary operators \(\mathrm{Min}(x_{i},x_{j})\) marked by \((\star)\) and \(\mathrm{Max}(x_{i},x_{j})\) marked by \((+)\); also unary operator \(X(a,b)\) is being used, which is called Literal. Operators Min and Max, respectively, choose either the minimal value in the pair \(x_{i}\) and \(x_{j}\), or the maximal one. Literal is defined as Exp. (2)  
\[X(a,b)=\left\{ \begin{array}{ll}0,\ \ if\ b<x<a\\ k-1,if\ a\leq x\leq b\end{array} \right. \tag{2}\]where for any \(X(a,b)\) always \(b\geq a\), and \(a,b\in L=\{0,1,\ldots,k-1\}\). For verification procedures the advantage of AGA [18; 19] is namely the guaranteed possibility to obtain correct logic expression for arbitrarily given data, where the only possible algorithm for calculation of MVL functions excludes alternative illegal procedures for eavesdroppers. The drawback of such functions is some unpredictability of calculation time for unknown sets of data, as the minimization for MVL is very wasteful [50]. MVL truth table [50], see Table 1, partially resembles the Boolean ones, but contains much more rows whose number attains \(k^{n}-1\), where \(k\)--is the number of discrete logic levels, and \(n\) is the number of input variables. If one has composed MVL truth table, then every its row has equivalent logic expression written to the right of Table 1. The column for output variable \(F(x_{1},\ldots,x_{n})\) should be arbitrarily filled in by logic constants from the set \(C=\{0,\,1,\ldots,\,k-1\}\). Respectively, if constant \(F\) is 0, then the product term of this row is also equal to 0. Note that Literal operators to the right to Table 1 includes equal values \(a\) and \(b\). Resulting Exp. (3) can be written as:  
\[ \begin{array}{c}F(x_{1},\ldots,\,x_{n})=F(0,0,\ldots,0)\star X_{1}(0,0) \star\ldots\star X_{n}(0,0)+\\ +F(0,0,\ldots,1)\star X_{1}(1,1)\star\ldots\star X_{n}(0,0)+\\ +F(k-1,k-1,\ldots,k-1)\star X_{1}(k-1,k-1)\star\ldots\star X_{jn}(k-1,k-1). \end{array}  \tag{3}\]  
MVL minimization procedure by means of consensus method [40] involves transformation of parameters \((a,b)\) in Literals and can shorten the number of product terms, but it is a wasteful enough procedure, which bases on the subsuming of product terms and the method of \"don't care states\" [50]. One can find its detailes in [18]. If one use equivalent matrix representation of MVL function [29], which was formed by data taken from the truth table (Table 1), then matrix C in exp. (4) will have only one-column, and exp. (3) can be written as arrays  
\[A= \begin{pmatrix}a_{11}&\ldots&a_{1n}\\ \ldots&\ldots&\ldots\\ a_{k^{n}-1,1}&\ldots&a_{k^{n}-1,n}\end{pmatrix} ,B= \begin{pmatrix}b_{11}& \ldots&b_{1n}\\ \ldots&\ldots&\ldots\\ b_{k^{n}-1,1}&\ldots&b_{k^{n}-1,n}\end{pmatrix} ,C= \begin{pmatrix}F(0,\ldots,0) \\ \ldots\\ F(k-1,\ldots,k-1)\end{pmatrix} , \tag{4}\]  
where \(b_{ij}\geq a_{ij}\), \(n\)--the number of input variables, \(k\)--the number of truth levels. Matrixes \(A_{u}\) and \(B_{u}\) in Exp. (4) define parameters \(a\) and \(b\) in Literals \(X_{j}(a,b)\). Due to very large possible number of rows in the MVL truth table [50], the real system scarcely can use all possible \(k^{n}\) rows.