Abstract
Jaggi-Sanders algorithm is generalized to its nonlinear form for multicast network. Precise details of the algorithm implementation and the proof on the algorithm existence are given. It may has meaningful significance in the two following aspects. First, it may offer a thinking for the urgent need to find a nonlinear coding scheme for non-multicast network some of which can not be coded by linear coding. Second, some interesting mathematical concepts such as shared agreements, composite functions and n-dimensional maximal independent set (nMIS) based on combinatorics are proposed. These new concepts may offer beneficial lessons for further research on nonlinear network coding.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Dougherty, R., Freiling, C., Zeger, K.: Insufficiency of linear coding in network information flow. IEEE Trans. Inf. Theor. 51(8), 2745–2759 (2005)
Kobayashi, H., Le Gall, F., Nishimura, H., Rotteler, M.: Constructing quantum network coding schemes from classical nonlinear protocols. In: 2011 IEEE International Symposium on Information Theory Proceedings (ISIT), pp. 109–113. IEEE (2011)
Blasiak, A., Kleinberg, R., Lubetzky, E.: Lexicographic products and the power of non-linear network coding. In: 2011 IEEE 52nd Annual Symposium on Foundations of Computer Science (FOCS), pp. 609–618. IEEE (2011)
Shadbakht, S., Hassibi, B.: MCMC methods for entropy optimization and nonlinear network coding. In: 2010 IEEE International Symposium on Information Theory Proceedings (ISIT), pp. 2383–2387. IEEE (2010)
Li, Q., Ting, S.H., Ho, C.K.: Nonlinear network code for high throughput broadcasting with retransmissions. In: IEEE International Symposium on Information Theory, ISIT 2009, pp. 2853–2857. IEEE (2009)
Wernersson, N., Skoglund, M.: Nonlinear coding and estimation for correlated data in wireless sensor networks. IEEE Trans. Commun. 57(10), 2932–2939 (2009)
Dougherty, R., Freiling, C., Zeger, K.: Unachievability of network coding capacity. Inf. Theor. IEEE Trans. 52(6), 2365–2372 (2006)
Langberg, M., Sprintson, A.: On the hardness of approximating the network coding capacity. In: IEEE International Symposium on Information Theory, ISIT 2008, pp. 1008–1014 (2008)
Lehman, A.R., Lehman, E.: Complexity classification of network information flow problems. In: Proceedings of the Fifteenth Annual ACM-SIAM Symposium on Discrete Algorithms, Society for Industrial and Applied Mathematics, pp. 142–150 (2004)
Medard, M., Koetter, R.: Beyond routing: an algebraic approach to network coding. Proc. IEEE INFOCOM 1(5), 122–130 (2002)
Sanders, P., Egner, S., Tolhuizen, L.: Polynomial time algorithms for network information flow. In: ACM Symposium on Parallel Algorithms and Architectures, pp. 286–294 (2003)
Li, L., Fan, K., Long, D.: Nonlinear network coding: a case study. Comput. Sci. 7, 020 (2008)
Bachmann, O., Greuel, G.-M., Lossen, C., Pfister, G., Schönemann, H.: A Singular Introduction to Commutative Algebra. Springer, Berlin (2007)
Liaoqunying, F.: The Finite Field and its Application. Dalian University of Technology Press, Dalian (2011)
JiaqingHuang, Z.: Network Coding Principles. National Defence Industry Press, Beijing (2012)
Acknowledgment
This work is supported by Suihua technology office program (SHKJ2015-015, SHKJ2015-014), National Science foundation of China (61571150), Education Office of Heilongjiang province science and technology program (Study on integrated network application in smart factory), Suihua university program (K1502003).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendix
Appendix
1.1 A Case of Nonlinear Jaggi-Sanders Algorithm in Butterfly Network
Based on the proposed nonlinear Jaggi-sanders algorithm, a nonlinear multicast scheme was constructed as the graph 2 illustrates.
When field \(|F|=3\), and messages dimension is n = 2, all the points in domain of function with 2 variables can be denoted by a numbers sequence. Thats, \((0,0) \rightarrow 1 ,..., (2, 2) \rightarrow 9\). There are 36 agreements, i.e., \(A_{ C_{|F|^{n}}^{2} }=36\), illustrated in the list 1. 9 agreements points are selected to construct a function and how to select is based on Algorithm 2.
1, Initializing \(f_{e}\) imaginary edges are set as \(f_{OS}=x_{1}, f_{OS^{'}}=x_{2}\), while the rest \(f_{e}=0\). The spanning function space of node S is \(V^{n}\), i.e., all the 2-dimensional mappings in field F (because \(f_{OS}=x_{1}\) is nonlinear independent of \(f_{OS^{'}}=x_{2}\) in variables \(x_{1}, x_{2}\)) [15].
2, Label “(q, i) pair” for every edge, consider sinks \(T_{1}, T_{2}\).
-
(1)
for \(T_{1} (q\,=\,1)\) there are 2 edge-disjoint paths O-S-A-T1 and \(O^{'}\)-S-B-T-C-\(T_{1}\). For the first path (i = 1), edges OS, SA, \(AT_{1}\) are labeled with (1, 1). For the second path (i = 2), edges OS, SB, BT, TC, \(CT_{1}\) are labeled with (1, 2).
-
(2)
for \(T_{2}\) (q = 2) there are 2 edge-disjoint paths \(O^{'}\)-S-B-T2 and O-S-A-T-C-T2. For the first path (i = 1), edges \(O^{'}\)S, SB, \(BT_{2}\) are labeled with (2, 1). For the second path (i = 2), edges OS, SA, AT, TC, \(CT_{2}\) are labeled with (2, 2).
-
(3)
Initializing \(e_{q,i}\). \(e_{1,1}= e_{2,2}= OS, e_{1,2}= e_{2,1}= O^{'}S\).
3, In an upstream-to-downstream order, consider every node and its leading edges. For lack of space, only representative edges are illustrated here.
(1) For node S, \(V_{t}=V^{n}\), leading edges are SA, SB. For SA, its (q, i) are (1, 1), (2, 2). Then
Based on step 5 in Algorithm 2, the nonlinear equivalent condition is
\(A_{f_{e}}\sqsubseteq A_{ C_{|F|^{n}}^{2} } \setminus ( \bigcup _{(q,i):a \ pair}\left\langle \left\{ A_{f_{q,j}}:j\ne i \right\} \right\rangle )\) & \(share\{ f_{1},...,f_{m}\} \sqsubseteq A_{f_{e}}\)
Of them, \(share\{ f_{1},...,f_{m}\}=\) Ø, so, just need to select 9 agreements in to construct a function. The 9 corresponding agreements of the function \(f=x_{2}\) are as the followings.
Select 9 agreements to form a function from the rest 27 agreements after removing the 9 agreements of function \(f=x_{2}\) in list 1. Note that not any 9 agreements can form a function, for example, if [1 5], [1 6] are selected, [5 6] has to be included. Then the 3 points 1, 5, 6 are mapped into a same value in the range, for example, 0. The rest 2 groups of points are mapped into 2 different values respectively where each group includes 3 points. For \(share\{ f_{1},...,f_{m}\}=\) Ø, in the procedure of selecting 9 agreements, there is no need to mapping certain 2 points (2 leading edges) into a same value in range. For example, in the Fig. 1 in text, we need to map 2 points 4, 5 into a same value in range, and treat 7, 8 in the same manner. The reason is \( [4,5] \in share\{ f_{1},...,f_{m}\} \& [7, 8] \in share\{ f_{1},...,f_{m}\}\). But there is no need to do so in this case. The function corresponding to the selected agreements can be got through solving linear equations in 9 coefficients of this being solved function. That is, to assume
The ultimate solved function is \(f= x_{1}+2x_{2}^{2}\), then, \(f_{e}= x_{1}+2x_{2}^{2}\) The 9 corresponding agreements of the function are as the followings.
In node S, the local coding function for outgoing edge e is \(F(X,Y)=X+2Y^{2}\).
(2) For the outgoing edge TC of node T, its (q, i) are (1, 2), (2, 2). From Subsect. 3.3, we know global coding functions \(f_{e_{AT_{1}}},f_{e_{BT_{2}}}\) both belongs to a nMIS, so they are independent of each other. Then the spanning functions of node T are all the mappings in field F with degree 2, i.e., \(V_{t}=V^{n}\).
Based on step 5 in Algorithm 2, the nonlinear equivalent condition is
\(A_{f_{e}}\sqsubseteq A_{ C_{|F|^{n}}^{2} } \setminus ( \bigcup _{(q,i):a \ pair}\left\langle \left\{ A_{f_{q,j}}:j\ne i \right\} \right\rangle )\) & \(share\{ f_{1},...,f_{m}\} \sqsubseteq A_{f_{e}}\)
Of them, \(share\{ f_{1},...,f_{m}\}=\) Ø, so, just need to select 9 agreements in \(=A_{ C_{|F|^{n}}^{2} }\setminus (A_{ f_{1}=x_{1}+2x_{2}^{2} } \bigcup A_{ f_{2}=x_{1}^{2}+x_{1}x_{2}^{2}+2x_{1}+2x_{2}^{2}+x_{2} })\) to construct a function. The corresponding functions of \(f_{1}=x_{1}+2x_{2}^{2}\) and \(f_{2}=x_{1}^{2}+x_{1}x_{2}^{2}+2x_{1}+2x_{2}^{2}+x_{2}\) are marked as red and green respectively in list 1. Among the rest 18 agreements, 9 agreements are selected and marked as blue. As doing for edge SA, the 9 agreements construct a function \(f_{TC}=x_{1}^{2}+x_{1}x_{2}^{2}+x_{1}+x_{2}\) as \(f_{e_{TC}}\) which is certainly independent of \(f_{1}=x_{1}+2x_{2}^{2}\) and \(f_{2}=x_{1}^{2}+x_{1}x_{2}^{2}+2x_{1}+2x_{2}^{2}+x_{2}\) based on Theorem 2. At last, we will use Algorithm 2 to get the local coding function for TC in node T, and it is F = 2X + Y.
(3) For node \(T_{1}\) using the step 6 of Algorithm 2, assume the two imaginary outgoing edges are \(f_{1}=x_{1},f_{2}=x_{2}\). Establish the two local coding functions for the two imaginary outgoing edges. Actually, they are the decoding functions in sink node. For example, the local coding function for right imaginary edge in node \(T_{1}\) is \(K_{T_{1}x_{2}}(X,Y)=2X^{2}+2X+Y\), and it is also the decoding function for original message \(x_{2}\) in node \(T_{1}\). \(\phi _{T_{1}x_{2}}(x_{1}+2x_{2}^{2},x_{1}^{2}+x_{1}x_{2}^{2}+2x_{1}+2x_{2}^{2}+x_{2})= 2x_{2}^{4}+x_{2}^{2}+ x_{2}\), for the operation of mod 3 in field \(F=\{0,1,2\}\), \(2x_{2}^{4}+x_{2}^{2}+ x_{2}= x_{2}\) and this can be verified easily by MATLAB. \(x_{1}\) can be decoded in the same manner. The ultimate global coding functions are illustrated in the Fig. 2. The local coding functions for every outgoing edge in a node are listed in the chart 1. If there are 2 leading edges in a node, the variables X, Y of \(\phi (X,Y)\) delegate the left and right messages respectively received by a node. Meanwhile, if there is only one leading edge, the local coding function is \( {\phi (X)}\) (Table 1).
1.2 Notation
F: the finite field used.
n: the block length of the original codes, i.e., the dimension of original messages.
m: the number of leading edges of a intermediate node and \(m\ge 1\).
\(C_{noline}\): Cardinality of maximal independent set of nonlinear coding functions.
nMIS: a n-dimensional maximal independent set.
\(\phi _{e}\): the local coding function for edge e which is a outgoing edge of intermediate t. This function is in the variables which are the messages of leading edges of intermediate node t.
\(\phi _{e}(X,Y)\): a special case of \(\phi _{e}\) which is in the variables X, Y, i.e., there are two edges in node t.
\(K_{T_{1}x_{2}}\): a special case of \(\phi _{e}\) where edge e is specialized as the second imaginary outgoing edge.
\(x_{2}\) of the sink \(T_{1}\). It is also the decoding function for messages \(x_{2}\) in sink node \(T_{1}\).
\(K_{f_{1}f_{2}}(x,y)\): the arithmetic result of composite the function \(K[f_{1}(x,y),\) \(f_{2}(x,y)]\).
\(f_{e}\): global coding function for edge e in the variables of original messages \(x_{1},...,x_{n}\).
(q, i): two-tuple to represent the \(i^{'}th\) edge-disjoint path of the \(q^{'}th\) sink.
\(e_{(q,i)}\): the predecessor edge e of on a path.
\(P_{q,i}\): denote the path that the \(i^{'}th\) edge-disjoint path of the \(q^{'}th\) sink.
\(V^{n}\): all the mappings in n variables in field F where one of these mappings can be uniquely represented by a polynomial with coefficients in the field F and with degree in each variable at most n – 1. It is the generalization of the vector space concept.
\(\left\langle \{ f_{1},...,f_{m} \} \right\rangle \): the spanning function space which is a subspace of \(V^{n}\).
t: a intermediate node.
\(V_{t}\): the spanning function space of node t, and it is a alternative representation of \(\left\langle \{ f_{1},...,f_{m} \} \right\rangle \).
\(dim\{ f_{1},...,f_{m} \} \): the rank of collection of functions \( f_{1},...,f_{m} \), and it is the generalization of the rank of vectors set concept.
\(share\{ f_{1},...,f_{m} \} \): the shared agreements of collection of functions \(f_{1},...,f_{m}\).
\(A_{f_{e}}\): all the agreements of function \(f_{e}\).
\(A_{ C_{|F|^{n}}^{2} }\): all the agreements of all the functions where there are n variables in the finite field F.
\(\phi \): the number of sinks.
q: the sequence number to denote the \(q^{'}th\) sink of \(\phi \) sinks.
E: the set of edges.
\(f_{i}(x_{1},...,x_{n})_{(x_{1},...,x_{m})}\): to denote the function degraded from functions \(f_{i}\) with variables \(x_{1},x_{2},...,x_{n}\) and \(f_{i}(x_{1},...,x_{n})_{(x_{1},...,x_{m})}\) just depend on the variables of \(x_{1},x_{2},...,x_{m}\).
Rights and permissions
Copyright information
© 2017 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Zhang, G., Cai, S., Ma, C., Zhang, D. (2017). Practical Privacy-Preserving Outsourcing of Large-Scale Matrix Determinant Computation in the Cloud. In: Xu, M., Qin, Z., Yan, F., Fu, S. (eds) Trusted Computing and Information Security. CTCIS 2017. Communications in Computer and Information Science, vol 704. Springer, Singapore. https://doi.org/10.1007/978-981-10-7080-8_19
Download citation
DOI: https://doi.org/10.1007/978-981-10-7080-8_19
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-10-7079-2
Online ISBN: 978-981-10-7080-8
eBook Packages: Computer ScienceComputer Science (R0)