Next Article in Journal
Turn-Taking Mechanisms in Imitative Interaction: Robotic Social Interaction Based on the Free Energy Principle
Next Article in Special Issue
Information Theoretic Methods for Future Communication Systems
Previous Article in Journal
Inferring Cultural Landscapes with the Inverse Ising Model
Previous Article in Special Issue
Broadcast Approach to Uplink NOMA: Queuing Delay Analysis
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Straggler- and Adversary-Tolerant Secure Distributed Matrix Multiplication Using Polynomial Codes

1
School of Mathematics and Statistics, University College Dublin, D04 V1W8 Dublin, Ireland
2
Department of Mathematical Sciences, Aalborg University, 9220 Aalborg, Denmark
3
Department of Electrical and Computer Engineering, New Jersey Institute of Technology, Newark, NJ 07410, USA
*
Author to whom correspondence should be addressed.
Entropy 2023, 25(2), 266; https://doi.org/10.3390/e25020266
Submission received: 1 November 2022 / Revised: 16 January 2023 / Accepted: 20 January 2023 / Published: 31 January 2023
(This article belongs to the Special Issue Information Theoretic Methods for Future Communication Systems)

Abstract

:
Large matrix multiplications commonly take place in large-scale machine-learning applications. Often, the sheer size of these matrices prevent carrying out the multiplication at a single server. Therefore, these operations are typically offloaded to a distributed computing platform with a master server and a large amount of workers in the cloud, operating in parallel. For such distributed platforms, it has been recently shown that coding over the input data matrices can reduce the computational delay by introducing a tolerance against straggling workers, i.e., workers for which execution time significantly lags with respect to the average. In addition to exact recovery, we impose a security constraint on both matrices to be multiplied. Specifically, we assume that workers can collude and eavesdrop on the content of these matrices. For this problem, we introduce a new class of polynomial codes with fewer non-zero coefficients than the degree +1. We provide closed-form expressions for the recovery threshold and show that our construction improves the recovery threshold of existing schemes in the literature, in particular for larger matrix dimensions and a moderate to large number of colluding workers. In the absence of any security constraints, we show that our construction is optimal in terms of recovery threshold.

1. Introduction

Recently, tensor operations have emerged as an important ingredient of many signal processing and machine learning applications [1]. These operations are typically complex due to the large size of the associated tensors. Therefore, in the interest of a low execution time, such computations are often performed in a distributed fashion and outsourced to a cloud of multiple workers that operate in parallel over the distributed data set. These workers in many cases consist of commercial off-the-shelf servers that are characterized by failures and varying execution times. Such straggling servers are handled by state-of-the art cloud computation platforms via a repetition of the computation task at hand. However, recent work has shown that encoding the input data may help alleviate the straggler problem and thus reduce the computation latency, which mainly depends on the amount of stragglers present in the cloud computing environment; see [2,3]. More generally, it has been shown that coding can control the trade-off between computational delay and communication load between workers and master server [3,4,5,6]. In addition, the workers in the cloud may not be trustworthy, so the input and output of the partial computations need to be protected against unauthorized access. To this end, it has been shown that stochastic coding can help keep both input and output data secure from eavesdropping and colluding workers (see, for example, [7,8,9,10,11,12,13,14]).
In this work, we focus on the canonical problem of distributing the multiplication of two matrices A and B, i.e., C = A B , whose content should be kept secret from a prescribed number of colluding workers in the cloud. Our goal is to minimize the number of workers from which the partial result must be downloaded, the so-called recovery threshold, to recover the correct matrix product C.
Coded matrix computation was first addressed in the non-secure case by applying separate MDS codes to encode the two matrices [3]. In [5], polynomial codes have been introduced, which improves on the recovery threshold of [3]. The recovery threshold was further improved by the so-called MatDot and PolyDot codes [15,16] at the expense of a larger download rate. In particular, PolyDot codes allow a flexible trade-off between the recovery threshold and the download rate, depending on the application at hand.
In [17,18] two different schemes are presented, an explicit scheme that improves on the recovery thereshold of PolyDot codes and a construction based on the tensor rank of matrix multiplication, which is optimal up to a factor of 2. In [19] a new construction for private and secure matrix multiplication is proposed based on entangled polynomial codes, which allows for a flexible trade-off between the upload rate and the download rate (equivalently, the recovery threshold). For small numbers of stragglers [20] constructs schemes that outperform the entangled polynomial scheme. Recently, several attempts have been made to design coding schemes to further reduce upload and download rates, the recovery threshold, and computational complexity for both workers and server (see, for example, [20,21,22,24,25,26,27]). For example, in [21], bivariate polynomial codes were used to reduce the recovery threshold in specific cases. In [22], the authors considered new schemes for the private and secure case which outperform [19] for specific parameter regions. The work in [23] considered distributed storage repair codes, so-called field-trace polynomial codes, to reduce the download rate for specific partitions of matrices A and B. Very recently, the authors in [24] proposed a black-box coding scheme based on star products, which subsumes several existing works as special cases. In [25], a discrete Fourier transform-based scheme with low upload rates and encoding complexity is proposed. The work in [26] focused on selecting the evaluation points for the polynomial codes, providing a better upload rate than [9], but worse than [25].
In the following, we propose a new scheme for secure matrix multiplication, which provides explicit evaluation points for the polynomial codes, but unlike the work in [26], is also able to tolerate stragglers. Specifically, we exploit gaps in the underlying polynomial code. This is motivated by the observation that the recovery threshold can be improved by selecting the number of evaluation points to be equal to the number of only the non-zero coefficients in the polynomial [9,19]. In addition, selecting dedicated evaluation points has the advantage that the condition for security against colluding workers is automatically satisfied (see, for example, condition C2 in [27]). As such, our approach is able to provide a constructive scheme with provable security guarantees. Further, our coding scheme provides an advantage in terms of download rate in some cases, and is both straggler-tolerant and robust against Byzantine attacks on the workers.
This paper is organized as follows. In Section 2, the problem statement and the background is highlighted. Section 3 discusses design and properties of our proposed scheme and provides performance guarantees with respect to the number of helper nodes needed for recovery, security, straggler tolerance and under Byzantine attacks. Section 4 extends the scheme of Section 4 by introducing gaps into the code polynomials and by studying its properties. Finally, Section 5 presents numerical results and comparisons with state-of-the-art schemes from the literature.

2. Problem Statement and Background

Let A and B be a pair of matrices over the finite field F q , whose product is well defined. We consider the problem of computing the product C = A B . The computation will be distributed among a number of helper nodes, each of which will execute a portion of the total calculation. We also assume that the user wishes to hide the data contained in the matrices A and B and that up to T honest but curious helper nodes may collude to deduce information about the contents of A and B. To divide the work among the helper nodes, the matrices A and B are each divided into K M and M L blocks, respectively, of compatible dimensions, say a × r and r × b . The matrices are also assumed to have independent and identically distributed uniformly distributed entries from a sufficiently large field of cardinality q > N , where N denotes the number of servers to be employed (in fact, we will require q to exceed the degree of a polynomial P ( x ) Q ( x ) , central to this scheme). Hence, for given matrix partition of A and B according to
A = A 1 , 1 A 1 , M A K , 1 A K , M , B = B 1 , 1 B 1 , L B M , 1 B M , L ,
we obtain
C = A B = C 1 , 1 C 1 , L C K , 1 C K , L where C i , j = m = 1 M A i , m B m , j .
The system model is displayed in Figure 1. We consider a distributed computing system with a master server and N helper nodes or workers. The master server is interested in computing the product C = A B . In Figure 1, the worker receives matrices A and B and T random uniformly independent and identically distributed matrices of size R t F q a × r and S t F r × b for t [ T ] . To keep the data secure and to leverage possible computational redundancy at the workers, the server sends encoded versions of the input matrices to the workers. This security constraint imposes the mutual information condition
I ( A T , B T ; A , B ) = 0
between the pair ( A , B ) and their encodings ( A T , B T ) for all subsets T [ N ] of maximum cardinality T. The server generates a polynomial representation of A and R t by constructing a polynomial P ( x ) F q a × r [ x ] . Likewise, a polynomial representation of B and Q t results in a polynomial Q ( x ) F q r × b [ x ] . The polynomial encodings that the p-th worker receives comprise the two polynomial evaluations P ( α p ) and Q ( α p ) , for distinct evaluation points α p F q with p [ N ] . It then computes the matrix product P ( α p ) Q ( α p ) and sends it back to the server. The server collects a subset of N R N outputs from the workers as defined by the evaluation points in the subset { P ( α p ) Q ( α p ) } p N R with | N R | = N R . The size of the smallest possible subset N R for which perfect recovery is obtained, i.e.,
H ( A B | { P ( α p ) Q ( α p ) : p N R } ) = 0 ,
where H denoted the entropy function, is defined as the recovery threshold. The server then interpolates the underlying polynomial such that the correct product C = A B can be assembled from a combination of the interpolated polynomial coefficients C i , j (see Section 3 for details).
We further define the upload rate  R u per worker as the sum of the dimensions of P ( α p ) and Q ( α p ) , i.e., R u = ( a + b ) r field elements of F q . Likewise, the download rate or communication load R d is defined as the total number of field elements to be downloaded from the workers such that (2) is satisfied, i.e., R d = a b N R .
Notation. For the remainder, we fix A , B , C to be matrices over F q such that C = A B , and we fix K , M , L , a , b , r to be the integers as defined above. We define [ n ] : = { 1 , , n } for any positive integer n. For each k [ K ] , [ L ] , and m [ M ] , we write A k , m , B m , , and C k , to denote the ( k , m ) , ( m , ) , and ( k , ) blocks of A , B , and C, respectively. The transpose of a matrix Z is denoted by Z t .

3. Proposed Scheme

The scheme we propose uses a similar approach to the schemes in [9,19,27]. We will begin with the choices for exponents in P ( x ) and Q ( x ) and show that the desired blocks of C appear as coefficients of the product P Q . We discuss the maximum possible degree of P Q since it gives us an upper bound on the necessary evaluations, and hence workers, needed to interpolate P Q . In Section 3.3, we give explicit criteria for choices of evaluation points and prove that the scheme protects against collusion of up to T servers. Section 3.4 discusses the option to query additional servers to provide resilience against stragglers and Byzantine servers.
Section 4 uses ideas from the GASP scheme [9] to reduce the recovery threshold by examining how many coefficients in the product are already known to be zero.

3.1. Choice of Exponents and Maximal Degree

We propose the following scheme to outsource the computation among the worker servers. The model will incorporate methods to secure the privacy of the data held by the matrices A , B , and C.
Let D : = M + 2 . For the given A and B, we define the polynomials:
P ¯ ( x ) : = k = 1 K x D ( k 1 ) m = 1 M x m A k , m and Q ¯ ( x ) : = = 1 L x D K ( 1 ) m = 1 M x M + 1 m B m , .
We now define polynomials
P ( x ) : = P ¯ ( x ) + R ( x ) and Q ( x ) : = Q ¯ ( x ) + S ( x ) ,
where and R ( x ) , S ( x ) are a pair of matrix polynomials:
R ( x ) : = t = 1 T x D ( t 1 ) R t and S ( x ) : = t = 1 T x D ( t 1 ) S t ,
whose coefficients are a × r and r × b matrices over F q , respectively, chosen uniformly at random.
In the next theorem, we show that the desired matrices C k , appear as coefficients of the product P Q and can hence be retrieved by inspection of this product.
Theorem 1.
For each pair ( k , ) [ K ] × [ L ] , the block C k , arising in the product C = A B appears as the coefficient of x D ( ( k 1 ) + K ( 1 ) ) + M + 1 in the product P Q .
Proof. 
We calculate the product
P Q = P ¯ Q ¯ + P ¯ S + R Q ¯ + R S = k = 1 K = 1 L x D ( ( k 1 ) + K ( 1 ) ) m = 1 M m = 1 M A k , m B m , x M + 1 + m m + k = 1 K t = 1 T x D ( k + t 2 ) m = 1 M A k , m S t x m + = 1 L t = 1 T x D ( K ( l 1 ) + ( t 1 ) ) m = 1 M R t B m , x M + 1 m + t = 1 T t = 1 T R t S t x D ( t + t 2 ) .
Consider the exponents modulo D. The first term in the sum of terms above is the product P ¯ Q ¯ . Any of the exponents of x in this term are equal to D 1 M + 1 mod D if and only if m = m , in which case its corresponding coefficient is C k , . In particular, the matrix block C k , appears in the product P ¯ Q ¯ as the coefficient of x D ( ( k 1 ) + K ( 1 ) ) + M + 1 .
We claim that no other exponent of x in P Q P ¯ Q ¯ is equal to M + 1 mod D , from which the result will follow. Observe that the exponents in the second and third term of the product (i.e. those of P ¯ S + R Q ¯ ) are all between 1 and M modulo D, while every exponent of x in the fourth term, which is R S , is a multiple of D.□
In order to retrieve the polynomial P Q , we may evaluate P and Q at a number of distinct values α 1 , , α N + 1 in F q × . The values P ( α i ) and Q ( α i ) are found at a cost of zero non-scalar operations. Define
V ( α 1 , , α N + 1 ) : = 1 α 1 α 1 2 α 1 N 1 α 2 α 2 2 α 2 N 1 α N α N 2 α N N 1 α N + 1 α N + 1 2 α N + 1 N .
The ( i , j ) -entries of the coefficients of P Q F q a × b [ x ] can be retrieved by computing the product
V ( α 1 , , α N + 1 ) 1 ( ( P ( α 1 ) Q ( α 1 ) ) i , j , , ( P ( α N + 1 ) Q ( α N + 1 ) ) i , j ) t ,
if the degree of P Q is at most N. Since this computation involves only F q -linear computations, the total non-scalar cost is the total cost of performing the N + 1 matrix products P ( α i ) Q ( α i ) . In the distributed computation scheme as shown in Figure 1, the server uploads each pair of evaluations P ( α i ) , Q ( α i ) to the i-th worker node, which then computes the product P ( α i ) Q ( α i ) and returns it to the server.
In this approach to reconstructing P Q , we require the participation of N + 1 worker nodes, where N is the degree of P Q . For this reason, we study this degree. Since
deg ( P Q ) max ( deg ( P ¯ Q ¯ ) , deg ( P ¯ S ) , deg ( R Q ¯ ) deg ( R S ) ) ,
we have the following result, wherein each of the values N 1 ( K , L , M ; T ) to N 4 ( K , L , M ; T ) correspond to the maximum possible degrees of P ¯ Q ¯ , P ¯ S , R Q ¯ , and R S , respectively. We write N ( A , B ; K , L , M ; T ) to denote the maximum possible degree of the polynomial P Q , as the A , B , R , S range over all possible matrices of the stated sizes.
Proposition 1.
The degree of P Q is upper bounded by N ( A , B ; K , L , M ; T ) , where
N ( A , B ; K , L , M ; T ) = max { (3) N 1 ( K , L , M ; T ) : = D ( K L 1 ) + 2 M (4) N 2 ( K , L , M ; T ) : = D ( K + T 2 ) + M (5) N 3 ( K , L , M ; T ) : = D ( K ( L 1 ) + T 1 ) + M (6) N 4 ( K , L , M ; T ) : = 2 D ( T 1 )
Proposition 2.
The following are equivalent.
  • T > K ,
  • N 3 ( K , L , M ; T ) > N 1 ( K , L , M ; T ) ,
  • N 4 ( K , L , M ; T ) > N 2 ( K , L , M ; T ) .
Proof. 
First note that T > K T K 1 and that 1 = M D > M D . Since T K is an integer, we thus have that the following inequalities are equivalent to T > K :
T K > M D , D ( T K ) > M , D ( K ( L 1 ) + T 1 ) + M > D ( K L 1 ) + 2 M .
This shows that N 3 ( K , L , M ; T ) > N 1 ( K , L , M ; T ) if and only if T > K . Similarly, using the 2nd and 3rd inequalities just above, we have
T > K D T > D K + M , 2 D ( T 1 ) > D ( T + K 2 ) + M ,
from which we see that N 4 ( K , L , M ; T ) > N 2 ( K , L , M ; T ) if and only if T > K .□
Proposition 3.
The following are equivalent.
  • T > K ( L 1 ) + 1 ,
  • N 4 ( K , L , M ; T ) > N 3 ( K , L , M ; T ) ,
  • N 2 ( K , L , M ; T ) > N 1 ( K , L , M ; T ) .
Proof. 
We have the following inequalities:
T > K ( L 1 ) + 1 T K ( L 1 ) 1 1 > M D , D ( T K ( L 1 ) 1 ) > M , D ( 2 T 2 ) > D ( K ( L 1 ) + T 1 ) + M ,
from which we deduce that N 4 ( K , L , M ; T ) > N 3 ( K , L , M ; T ) . We now show that N 2 ( K , L , M ; T ) > N 1 ( K , L , M ; T ) . We have:
T > K ( L 1 ) + 1 D ( T K ( L 1 ) 1 ) > M , D ( K + T 2 ) + M > D ( K L 1 ) + 2 M .
We tabulate (see Table 1) the value of N ( K , L , M ; T ) based on the observations of Propositions 2 and 3.

3.2. A B versus B T A T

We compare the recovery threshold cost of calculating B t A t rather than A B . It can be shown that it is always better to calculate A B whenever K L . That is, we show that N ( A , B ; K , L , M ; T ) N ( B t , A t ; L , K , M ; T ) for K L . We consider all possible cases for the maximal degree in the following two theorems and remarks.
Theorem 2.
  • Let T > K , L . Suppose that T < K ( L 1 ) + 1 and T < L ( K 1 ) + 1 .
    We have that
    N ( A , B ; K , L , M ; T ) = N 3 ( K , L , M ; T ) < N 3 ( L , K , M ; T ) = N ( B t , A t ; L , K , M ; T ) ,
    if and only if L < K .
  • Let K T > L . Suppose that T < K ( L 1 ) + 1 and T < L ( K 1 ) + 1 . We have that
    N ( A , B ; K , L , M ; T ) = N 1 ( K , L , M ; T ) < N 3 ( L , K , M ; T ) = N ( B t , A t ; L , K , M ; T ) .
  • Let T > L , K and suppose that L ( K 1 ) + 1 T > K ( L 1 ) + 1 . We have that
    N ( A , B ; K , L , M ; T ) = N 4 ( K , L , M ; T ) < N 3 ( L , K , M ; T ) = N ( B t , A t ; L , K , M ; T ) .
  • Let T > K L and suppose that T > L ( K 1 ) + 1 . We have that
    N ( A , B ; K , L , M ; T ) = N 4 ( K , L , M ; T ) = N 4 ( L , K , M ; T ) = N ( B t , A t ; L , K , M ; T ) .
  • Let T L K and suppose that T K ( L 1 ) + 1 . We have that
    N ( A , B ; K , L , M ; T ) = N 1 ( K , L , M ; T ) = N 1 ( L , K , M ; T ) = N ( B t , A t ; L , K , M ; T ) .
Proof. 
  • Since T > K , and T < K ( L 1 ) + 1 by Propositions 2 and 3 we have that
    N 3 ( K , L , M ; T ) > N 4 ( K , L , M ; T ) > N 2 ( K , L , M ; T ) , N 1 ( K , L , M ; T )
    and so N ( A , B ; K , L , M ; T ) = N 3 ( K , L , M ; T ) .
    Similarly, since T > L , and T < L ( K 1 ) + 1 , we have that N ( B t , A t ; L , K , M ; T ) = N 3 ( L , K , M ; T ) . Clearly, L < K if and only if:
    N 3 ( K , L , M ; T ) = D ( K ( L 1 ) + T 1 ) + M < D ( L ( K 1 ) + T 1 ) + M = N 3 ( L , K , M ; T ) .
  • By Propositions 2 and 3, the assumptions K T and T < K ( L 1 ) + 1 imply that N ( A , B ; K , L , M ; T ) = N 1 ( K , L , M ; T ) , while the assumptions T > L and T < L ( K 1 ) + 1 yield that N ( B t , A t ; K , L , M ; T ) = N 3 ( L , K , M ; T ) .
    Clearly, since T > L , we have M < D ( T L ) and
    N 1 ( K , L , M ; T ) = D ( K L 1 ) + 2 M < D ( L ( K 1 ) + T 1 ) + M = N 3 ( L , K , M ; T ) .
  • From the given assumptions, by Propositions 2 and 3, we have N ( A , B ; K , L , M ; T ) = N 4 ( K , L , M ; T ) and N ( B t , A t ; L , K , M ; T ) = N 3 ( L , K , M ; T ) . Since L ( K 1 ) + 1 T , as in the proof of Proposition 3, we have
    N 4 ( K , L , M ; T ) = 2 D ( T 1 ) = N 4 ( L , K , M ; T ) N 3 ( L , K , M ; T ) .
  • For the given assumptions the statement follows immediately from Propositions 2 and 3.
  • From the given assumptions, by Propositions 2 and 3, we have N ( A , B ; K , L , M ; T ) = N 1 ( K , L , M ; T ) and N ( B t , A t ; L , K , M ; T ) = N 1 ( L , K , M ; T ) . The rest follows immediately from N 1 ( K , L , M ; T ) = D ( K L 1 ) + 2 M = D ( L K 1 ) + 2 M = N 1 ( L , K , M ; T ) .
Remark 1.
Clearly, if T K and T > K ( L 1 ) + 1 then L = 1 . In this case, from Propositions 2 and 3, we have that N ( A , B ; K , 1 , M ; T ) = N 2 ( K , 1 , M ; T ) .
Theorem 3.
Let T K and T > K ( L 1 ) + 1 .
 (i) 
Assume T > L and T L ( K 1 ) + 1 then N ( A , B ; K , L , M ; T ) = N 2 ( K , 1 , M ; T ) = N 3 ( 1 , K , M ; T ) = N ( B t , A t ; L , K , M ; T ) .
 (ii) 
Assume T = 1 L and T L ( K 1 ) + 1 then N ( A , B ; K , L , M ; T ) = N 2 ( K , 1 , M ; 1 ) < N 1 ( 1 , K , M ; 1 ) = N ( B t , A t ; L , K , M ; T ) .
Proof. 
(i)
Since L = 1 we have that N 2 ( K , 1 , M ; T ) = D ( K + T 2 ) + M = D ( L ( K 1 ) + T 1 ) + M = N 3 ( 1 , K , M ; T ) and so the result follows.
(ii)
We see that N 2 ( K , 1 , M ; 1 ) = D ( K 1 ) + M < D ( K 1 ) + 2 M = N 1 ( 1 , K , M ; 1 )
Remark 2.
The remaining two cases lead to a contradiction and can hence never occur. Let T K and T > K ( L 1 ) + 1 and T > L ( K 1 ) + 1 . By Remark 1, we have that L = 1 and we obtain the contradiction T K < T .

3.3. T-Collusion

Each query is masked with a polynomial of the form i = 0 T 1 x i D R i , where R i is chosen uniformly at random. A query is private in the case of T servers colluding if and only if the matrix
M ( x 1 , , x T ) : = 1 1 x 1 D x T D x 1 D ( T 1 ) x T D ( T 1 )
has full rank for any subset of T evaluation points. This is the same as condition C2 in [27]. Because of the very specific set of exponents used, we can give a more explicit condition for the invertibility of this matrix.
Proposition 4.
The matrix M ( x 1 , , x T ) is invertible if and only if the elements x 1 D , , x T D are distinct.
Proof. 
M ( x 1 , , x T ) is a Vandermonde matrix with entries x 1 D , , x T D .□
Proposition 5.
A set of elements of F q such that their D t h powers are pairwise different has size at most N = q 1 gcd ( q 1 , D ) + 1 .
Proof. 
Fix a generator γ of F q * . Then the image of the map x x D from F q to F q is given by 0 together with all powers γ D i where 0 i < q 1 .□
Corollary 1.
Let T < q . If gcd ( q 1 , D ) = 1 , then the scheme in Section 3 is secure against T-collusion for any choice of evaluation points.

3.4. Stragglers and Byzantine Servers

Considering the scheme as described in the previous section, we see that the responses are the coordinates of a codeword of a Reed–Solomon code. The polynomial that needs to be interpolated has degree at most N = N ( K , L , M ; T ) , and hence N + 1 evaluation points suffice for reconstruction. Any N + 1 evaluation points are admissible and hence we have the following theorem.
Theorem 4.
The scheme in Section 3 is straggler resistant against S stragglers if N + 1 + S helper nodes are used.
Proof. 
The responses can be considered as a codeword in an [ N + 1 + S , N + 1 , S + 1 ] RS code, with S erasures. Since S is smaller than the minimum distance of the code, the full codeword and hence the interpolating polynomial can be recovered.□
Similarly, we can use additional helper nodes to account for possible Byzantine servers whose responses are incorrect.
Theorem 5.
The scheme in Section 3 is resistant against Byzantine attacks of up to B helper nodes if N + 1 + 2 B helper nodes are used.
Proof. 
The responses can be considered as a codeword in an [ N + 1 + 2 B , N + 1 , 2 B + 1 ] RS code, with B errors. Since 2 B is smaller than the minimum distance of the code, the full codeword and hence the interpolating polynomial can be recovered.□
Combining both theorems give us the following corollary.
Corollary 2.
The scheme in Section 3 is resistant against S stragglers and B Byzantine helper nodes if N + 1 + S + 2 B helper nodes are used.

4. Gaps in the Polynomial

The upper bound on the recovery threshold given by the maximum degree of the product P Q can actually be improved if we choose instead to use the fact that we need only as many servers as non-zero coefficients. Similar to considerations in [9], as a basic observation of linear algebra, we note that only as many evaluation points as there are possible non-zero coordinates are required to retrieve the required matrix coefficients of P Q . Let P Q have degree r 1 and suppose that q r + 1 . Let α 1 , , α r be distinct elements of F q × . Suppose that the zero coefficients of P Q are indexed by I and let i = r | I | . There exist j 1 , , j i { 1 , , r } such that the i × i matrix V, found by deleting the columns of V ( α j 1 , , α j i ) indexed by I , is invertible. Then, each ( s , t ) -entry of the unknown coefficients of the polynomial P Q F q a × b [ x ] can be retrieved by computing the product
V 1 ( ( P ( α j ) Q ( α j ) ) s , t : j [ r ] \ I ) t .
Theorem 6.
Let M 2 , D = M + 2 . Let
P ¯ ( x ) : = k = 1 K x D ( k 1 ) m = 1 M x m A k , m , R ( x ) : = t = 1 T x D ( t 1 ) R t , Q ¯ ( x ) : = = 1 L x D K ( 1 ) m = 1 M x M m + 1 B m , , S ( x ) : = t = 1 T x D ( t 1 ) S t .
The number N of non-zero terms in the product P Q satisfies
N N 1 ( K , L , M ; T ) + 1 if M > 2 , T K , L 2 or L = 1 , T = 1 ; 3 L K + K T + L T + 1 if M = 2 , T K , L 2 ; ( ( L 1 ) K + T ) M + 2 L K + 1 if K + 1 T L K / 2 + 1 , L 2 ; ( ( L 1 ) K + T ) M + L K + 2 T 1 if T > L K / 2 + 1 , L 2 ; ( K + T 1 ) M + 2 K + 1 if 2 T K / 2 + 1 , L = 1 ; ( K + T 1 ) M + K + 2 T 1 if T > K / 2 + 1 , L = 1 .
Proof. 
We have P ( x ) = P ¯ ( x ) + R ( x ) and Q ( x ) = Q ¯ ( x ) + S ( x ) . Recall that P ¯ ( x ) and R ( x ) have disjoint support, as do Q ¯ ( x ) and S ( x ) . From Theorem 1, for each each k [ K ] , [ L ] , the matrix
C k = A k , 1 B 1 , + + A k , M B M ,
is the coefficient of x h in P ¯ Q ¯ for
h = ( k 1 ) D + ( 1 ) K D + M + 1 = ( k + ( 1 ) K ) D 1 .
Clearly, each such coefficient h M + 1 mod D . The degrees of terms arising in the product P Q are given by
(7) ( i + z K ) D + j + y + 2 , (8) ( i + t ) D + j + 1 , (9) ( u + z K ) D + y + 1 , (10) ( u + t ) D .
for i { 0 , . . . , K 1 } , z { 0 , . . . , L 1 } , j , y { 0 , . . . , M 1 } and u , t { 0 , . . . , T 1 } . The sequence (7) corresponds to terms that appear in the product P ¯ Q ¯ . By inspection, we see that no element θ in any of the sequences (8)–(10) satisfies θ 1 mod D : in (8) this would require j = M and in (9) this would require y = M , contradicting our choices of j , y . The total number of distinct terms to be computed is the number of distinct integers appearing in the union T of the elements of the sequences (7)–(10). Let U 0 denote the set of integers appearing in (7). Observe that U 0 = { 2 , , ( L K + 1 ) D 4 } , unless M = 2 , in which case U 0 = { j : 2 j 4 L K , j 1 mod 4 } . Consider the set
U : = { 0 , 1 , 2 , , ( L K + 1 ) D 4 } .
We make the following observations with respect to U .
  • If M > 2 , then U = U 0 { 0 , 1 } T ,
  • U contains the elements of (8) T ( L 1 ) K + 1 ,
  • U contains the elements of (9) T K ,
  • U contains the elements of (10) T L K / 2 + 1 .
Consider the following sets.
U 1 : = { α D + i : 0 α K + T 2 , 1 i M } , | U 1 | = ( K + T 1 ) M ; U 2 : = { β D + j : 0 β T 1 + ( L 1 ) K , 1 j M } , | U 2 | = ( ( L 1 ) K + T ) M ; U 3 : = { γ D : 0 γ 2 T 2 } , | U 3 | = 2 T 1 .
Clearly, U 1 comprises the elements of the sequence (8) and the members of U 3 are exactly those of the sequence (10). For T K + 1 , we have
{ u + x K : 0 u T 1 , 0 x L 1 } = { β : 0 β T 1 + ( L 1 ) K } ,
in which case U 2 is exactly the set of elements of (9). It follows that U 1 U 2 U 3 U if and only if T min { ( L 1 ) K + 1 , K , L K / 2 + 1 } . This minimum is K if L 2 and is 1 if L = 1 . Furthermore, U 3 is disjoint from U 1 and from U 2 . If L 2 or if L = K = 1 , then U 1 U 2 , while if L = 1 , then U 2 U 1 .
Suppose first that M > 2 . We thus have that U = T if L 2 and T K , or if L = T = 1 ; in either of these cases, P Q has at most
| T | = | U | = ( L K + 1 ) D 3 = ( L K 1 ) D + 2 M + 1 = N 1 ( K , L , M ; T ) + 1
non-zero terms. We summarize these observations as follows.
T = U if L 2 and T K , or if L = T = 1 ; U U 1 U 3 if L = 1 U U 2 U 3 if L 2 or if L = K = 1 .
Furthermore,
U U 3 = { γ D : 0 γ min { 2 T 2 , L K } } , U U 2 = { β D + j : 0 β min { L K , T 1 + ( L 1 ) K } , 1 j M } \ { L K D + M 1 , L K D + M } , U U 1 = { α D + i : 0 α min { L K , T + K 2 } , 1 i M } \ { L K D + M 1 , L K D + M }
Hence | U U 3 | = min { 2 T 1 , L K + 1 } . If T K + 1 then | U U 2 | = M ( L K + 1 ) 2 and so, applying inclusion–exclusion, we see that, if L 2 , then
| T | = | U | = ( L K + 1 ) D 3 = ( L K + 1 ) ( M + 2 ) 3 if K T ; | U U 2 | = ( ( L 1 ) K + T ) M + 2 L K + 1 if K + 1 T L K / 2 + 1 ; | U U 2 U 3 | = ( ( L 1 ) K + T ) M + L K + 2 T 1 otherwise .
In the case L = 1 , we have U 2 U 1 , while if T K then the elements of (9) are contained in U . Therefore, T = U U 1 U 3 and so for T 2 we have
| T | = ( K + T 1 ) M + 2 K + 1 if T K / 2 + 1 ; ( K + T 1 ) M + K + 2 T 1 otherwise .
Finally, suppose that M = 2 . If L = 1 then, since U 2 U 1 we have T = U 0 U 1 U 3 . Similar to previous computations, we see | T | takes the same values as in the case for M > 2 . If L 2 and T K + 1 then T = U 0 U 2 U 3 . Again using similar computations as before, we see in this case that | T | takes the same values as in the case for M > 2 . Suppose that L 2 and T K . In this case, the integers appearing in (9) comprise the set
U 2 : = { 4 ( u + z K ) + j : 0 u T 1 , 0 z L 1 , 1 j 2 } , | U 2 | = 2 T L .
We have | U 0 | = 3 K L and moreover,
U 0 U 2 = { 4 ( u + z K ) + 2 : 0 u T 1 , 0 z L 1 } , | U 0 U 2 | = T L ; U 0 U 1 = { 4 α + 2 : 0 α K + T 2 } , | U 0 U 1 | = K + T 1 ; U 0 U 3 = { 4 ( α + 1 ) : 0 α 2 T 3 } , | U 0 U 3 | = 2 T 2 ; U 1 U 2 = { 4 ( u + z K ) + j : 0 u T 1 , 0 z 1 , 1 j 2 } , | U 1 U 2 | = 4 T ; U 0 U 1 U 2 = { 4 ( u + z K ) + 2 : 0 u T 1 , 0 z 1 } , | U 0 U 1 U 2 | = 2 T .
Therefore, | T | = 3 L K + K T + T L + 1 .□
Example 1.
Let M = 3 , K = 3 , L = 2 , that is:
A = A 1 , 1 A 1 , 2 A 1 , 3 A 2 , 1 A 2 , 2 A 2 , 3 A 3 , 1 A 3 , 2 A 3 , 3 , B = B 1 , 1 B 1 , 2 B 2 , 1 B 2 , 2 B 3 , 1 B 3 , 2 .
We will compute the product A B using 32 helper nodes, assuming that T = 3 servers may collude. Choose a pair of polynomials
R ( z ) = R 1 + R 6 x 5 + R 11 x 10 and S ( z ) = S 1 + S 6 x 5 + S 11 x 10 ,
whose non-zero matrix coefficients are chosen uniformly at random over F q . We have
P ¯ ( x ) = x ( A 1 , 1 + A 1 , 2 x + A 1 , 3 x 2 ) + x 6 ( A 2 , 1 + A 2 , 2 x + A 2 , 3 x 2 ) + x 11 ( A 3 , 1 + A 3 , 2 z + A 3 , 3 z 2 ) Q ¯ ( x ) = x ( B 3 , 1 + B 2 , 1 x + B 1 , 1 x 2 ) + x 16 ( B 3 , 2 + B 2 , 2 x + B 1 , 2 x 2 ) .
Define P ( x ) : = P ¯ ( x ) + R ( x ) and Q ( x ) : = Q ¯ ( x ) + S ( x ) . In Table 2, we show the exponents that arise in the product P ( x ) Q ( x ) . The monomials corresponding to the computed data are 4 , 9 , 14 , 19 , 24 , 29 , shown in blue. The coefficients of x 4 , x 9 , x 14 , x 19 , x 24 and x 29 are, respectively, given by
C 1 , 1 = A 1 , 1 B 1 , 1 + A 1 , 2 B 2 , 1 + A 1 , 3 B 3 , 1 , C 1 , 2 = A 1 , 1 B 1 , 2 + A 1 , 2 B 2 , 2 + A 1 , 3 B 3 , 2 , C 2 , 1 = A 2 , 1 B 1 , 1 + A 2 , 2 B 2 , 1 + A 2 , 3 B 3 , 1 , C 2 , 2 = A 2 , 1 B 1 , 2 + A 2 , 2 B 2 , 2 + A 2 , 3 B 3 , 2 , C 3 , 1 = A 3 , 1 B 1 , 1 + A 3 , 2 B 2 , 1 + A 3 , 3 B 3 , 1 , C 3 , 2 = A 3 , 1 B 1 , 2 + A 3 , 2 B 2 , 2 + A 3 , 3 B 3 , 2 .
Note that the total number of non-zero terms in P Q is L K D + M 1 = 32 , as predicted by Theorem 6. This also corresponds to the case for which P Q has degree N 1 ( K , L , M ; T ) = N 1 ( 3 , 2 , 3 ; 3 ) = 31 , which is consistent with Theorem 2. Therefore, 32 helper nodes are required to retrieve P Q and hence the coefficients C k , m . If the matrices have entries over F q with q = 64 , then since gcd ( q 1 , D ) = gcd ( 63 , 5 ) = 1 , the user can retrieve the data securely in the presence of 3 colluding workers.
Suppose now that we have T = 6 colluding servers. In this case, we have T = 6 > 4 = L K / 2 + 1 and L > 1 and so from Theorem 6, we expect the polynomial P Q to have at most ( L K + T ) D K ( M + L ) 1 = 44 non-zero coefficients. These exponents are shown in the corresponding degree table for our scheme (see Table 3). In this case, to protect against collusion by 6 workers, we require a total of 44 helpers. While the degree of P Q in this case is 50 (see Table 1), the coefficients corresponding to the exponents E = { 34 , 39 , 44 , 46 , 47 , 48 , 49 } are zero, and hence known a priori to the user. Let α be a root of x 6 + x 4 + x 3 + x + 1 F 2 [ x ] , so that α generates F 64 × . Let V be the 44 × 44 matrix obtained from V ( α i : i [ 63 ] ) by deleting the columns and rows indexed by E { 51 , , 62 } . It is readily checked (e.g., as here, using MAGMA [28]) that the determinant of V is α 11 and in particular is non-zero. Therefore, we can solve the system to find the unknown coefficients of P Q via the computation V 1 ( P ( α i j ) Q ( α i j ) : i , j [ 63 ] \ ( E { 51 , , 62 } ) ) t .
We remark that for the case of no collusion, Theorem 6 does not yield an optimal scheme. The proposition below outlines a modified scheme with a lower recovery threshold if secrecy is not a consideration.
Proposition 6.
Define the polynomials:
P ˜ ( x ) : = k = 1 K x ( k 1 ) M m = 1 M x m A k , m , Q ˜ ( x ) : = = 1 L x ( K + 1 ) M m = 1 M x M + 1 m B m , .
The following hold:
  • For each ( i , j ) [ K ] × [ L ] , C i j is the coefficient of z M ( i + j + K 1 ) + 1 in P ˜ Q ˜ .
  • The number N of non-zero terms in the product P ˜ Q ˜ satisfies
    N K L M + M 1 .
Proof. 
For each ( i , j ) [ K ] × [ L ] , define the following:
  • ( c i j ) : = ( M ( K + i + j 1 ) + 1 ) ,
  • B M ( c i j ) : = { c i j M + 1 , , c i j + M 1 } = { c i j + u : ( M 1 ) u M 1 } .
We have
P ˜ Q ˜ = k = 1 K = 1 L m = 1 M m = 1 M x M ( K + + k 1 ) + 1 + m m A k , m B m , .
The distinct monomials arising in the product P ˜ Q ˜ are those indexed by the distinct elements of ( i , j ) [ K ] × [ L ] B M ( c i j ) . It is straightforward to check that for each ( i , j ) [ K ] × [ L ] , the integer c i j is not contained in B m ( c u t ) for any ( u , t ) ( i , j ) and hence the required coefficients C i j that appear in the product P ˜ Q ˜ , which are indexed by the c i j , can be uniquely retrieved. We compute the number of workers required by this scheme. We have
V : = ( i , j ) [ K ] × [ L ] B M ( c i j ) = K L ( 2 M 1 ) ( i , j ) ( u , t ) B M ( c i j ) B M ( c s t ) = K L ( 2 M 1 ) ( K L 1 ) ( M 1 ) = K L M + M 1 .
The recovery threshold of this scheme takes the same value as the recovery threshold of the poly-entangled scheme of Theorem 1 [18].

5. Results and Comparison with the State-of-the-Art

We provide some comparison plots that highlight parameter regions of interest. In Figure 2, we compare the two variants of our own scheme. The recovery threshold when considering the maximal degree of the resulting product polynomial is shown alongside the count of possibly non-zero coefficients. We see that significant gains can be achieved, especially in the higher collusion number region.
In Figure 3, we compare our (non-zero coefficient) scheme with the SGPD scheme presented in [19]. For K > 1 , we see that, except for very low values of T, our new scheme outperforms the SGPD scheme. This comparison of the recovery threshold for the two schemes is well justified since they use the same division of the matrices and will have identical upload and download costs per server.
The comparison in Figure 4 with the entangled codes scheme [17] and a newer scheme using roots of unity [26] shows that our new codes have lower recovery threshold for low number of colluding servers. Calculating the actual number of servers needed for the entangled scheme requires knowledge of the tensor rank of matrix multiplication. These ranks, or their best known upper bounds, are taken from [29,30]. It should be noted that the scheme in [26] requires that either ( ( L + 1 ) ( K + T ) 1 ) q or ( K M L + L T + K M + T ) q where q is the field size. The requirements for our scheme outlined in Proposition 5 and Corollary 1 (i.e., that gcd ( q 1 , D ) = 1 , q > N ) are much less restrictive.
The comparison with the GASP scheme is less straightforward since the partitioning in GASP has a fixed value of M = 1 . The plot in Figure 5 shows the recovery thresholds for the GASP scheme with partitioning K = L = 3 M as well as the recovery thresholds of our scheme for K = L = 3 and varying M from 1 to 5. We compare here with the maximal degree of our scheme, not the non-zero coefficients, to show that the variant of our scheme that is able to mitigate stragglers and Byzantine servers achieve much lower recovery thresholds. Fixing K and L to be the same value across this comparison means that the download cost per server is the same for all our schemes and the K = L = 3 GASP scheme. Note that in the M = 1 case, we have identical partition and hence upload cost per server as the K = L = 3 GASP scheme, while for M = 2 , we have identical upload cost with the K = L = 6 GASP scheme, and M = 5 corresponds to the K = L = 15 GASP scheme. We can see that the grid partitioning allows for a much lower recovery threshold when the upload cost is fixed. The outer partitioning of the GASP scheme allows for low download cost per server that makes up for the higher recovery threshold. Explicitly, the outer partition into K M and L M blocks allows for a download rate of N G A S P ( a b M 2 ) , where N G A S P is the recovery threshold for the GASP scheme. In contrast, the scheme presented in this paper will have a download rate of N a b if we partition into K × M and M × L blocks.
It should be noted though that our construction allows to explicitly control the field size needed. In contrast, the GASP scheme might have to choose its evaluations points from an extension field Theorem 1 [9] if the base field is fixed by the entries of the matrices A and B, or just requires a very large base field. This would greatly increase the computational cost and the rates at all steps of the scheme. For example, for K = 3 , L = 3 , T = 3 , GASP r uses N = 22 servers and the exponents for the randomness in one of the polynomials are 9 , 10 , 12 . Then, there are no suitable evaluation points for q = 23 , 25 , 27 , 29 , 31 , 32 , 37 , 41 , 43 and so for these values of q, an extension field is required.
Furthermore, the scheme presented in this paper can be used in situations where stragglers or Byzantine servers are expected as described in Corollary 2.

Complexity

We summarize the cost of F q -arithmetic operations and transmission of F q elements associated with this scheme, using N servers. We refer the reader to ([25], Table 1) and ([26], Table 1) to view the complexity of other schemes in the literature (note that the costs defined in [25] are normalized). There are various trade-offs in costs depending on the partitioning chosen (the proposed scheme is completely flexible in this respect), ability to handle stragglers and Byzantine servers, and constraints on the field size q.
We remark that additions in general are much less costly than F q -multiplications in terms of space and time: for example, if q = 2 , then an addition has space complexity (number of AND and XOR gates) O ( ) and costs 1 clock in time, while multiplication has space complexity O ( 2 ) and time complexity O ( log 2 ( ) ) [31,32].
The encoding complexity of our scheme comes at the cost of evaluating the pair of polynomials P ( x ) and Q ( x ) each at N distinct elements of F q . This is equivalent to performing N r ( a + b ) (scalar) polynomial evaluations in F q . Given α F q , the ( i , j ) -entry of P ( α ) is an evaluation of an F q -polynomial with K M + T coefficients, while the ( i , j ) -entry of Q ( α ) is an evaluation of an F q -polynomial with K L + T coefficients.
The decoding complexity is the cost of interpolating the polynomial P Q F q a × b [ x ] using N evaluation points, when P Q has at most N unknown coefficients.
The cost of either polynomial evaluation at N points or interpolation of a polynomial of degree at most N 1 has complexity O ( N log 2 N log log N). Therefore, we have the following statement.
Proposition 7.
  • The encoding phase of the scheme presented in Section 3, using N servers, has complexity  O ( ( a + b ) r N log 2 N log log N).
  • The decoding phase of the scheme presented in Section 3, using N servers, has complexity  O ( a b N log 2 N log log N).
  • The total upload cost of the scheme presented in Section 3, using N servers, is r ( a + b ) N .
  • The total download cost of the scheme presented in Section 3, using N servers, is a b N .

6. Conclusions

In this work, we addressed the problem of secure distributed matrix multiplication for C = A B in terms of designing polynomial codes for this setting. In particular, we assumed that A and B contain confidential data, which must be kept secure from colluding workers. Similar to some previous work also employing polynomial codes for distributed matrix multiplication, we proposed to deliberately leave gaps in the polynomial coefficients for certain degrees and provided a new code construction which is able to exploit these gaps to lower the recovery threshold. For this construction, we also presented new closed-form expressions for the recovery threshold as a function of the number of colluding workers and the specific number of submatrices that the matrices A and B are partitioned into during encoding. Further, in the absence of any security constraints, we showed that our construction is optimal in terms of recovery threshold. Our proposed scheme improves on the recovery threshold of existing schemes from the literature in particular for large dimensions of A and a larger number of colluding workers, in some cases, even by a large margin.

Author Contributions

Writing—original draft, E.B. and O.W.G.; Supervision, J.K. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported in part by U.S. National Science Foundation grants 1815322, 1908756, 2107370 in addition to the UCD Seed Funding-Horizon Scanning scheme (grant no. 54584).

Institutional Review Board Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Janzamin, M.; Sedghi, H.; Anandkumar, A. Beating the perils of non-convexity: Guaranteed training of neural networks using tensor methods. arXiv 2015, arXiv:1506.08473. [Google Scholar]
  2. Joshi, G.; Soljanin, E.; Wornell, G. Efficient redundancy techniques for latency reduction in cloud systems. ACM Trans. Model. Perform. Eval. Comput. Syst. 2017, 2, 1–30. [Google Scholar] [CrossRef] [Green Version]
  3. Lee, K.; Suh, C.; Ramchandran, K. High-dimensional coded matrix multiplication. In Proceedings of the IEEE International Symposium on Information Theory (ISIT), Aachen, Germany, 25–30 June 2017; pp. 2418–2422. [Google Scholar]
  4. Lee, K.; Lam, M.; Pedarsani, R.; Papailiopoulos, D.; Ramchandran, K. Speeding Up Distributed Machine Learning Using Codes. IEEE Trans. Inf. Theory 2018, 64, 1514–1529. [Google Scholar] [CrossRef]
  5. Yu, Q.; Maddah-Ali, M.; Avestimehr, S. Polynomial codes: An optimal design for high-dimensional coded matrix multiplication. In Proceedings of the Advances in Neural Information Processing Systems, Long Beach, CA, USA, 4–9 December 2017; pp. 4403–4413. [Google Scholar]
  6. Li, S.; Maddah-Ali, M.A.; Yu, Q.; Avestimehr, A.S. A fundamental tradeoff between computation and communication in distributed computing. IEEE Trans. Inform. Theory 2017, 64, 109–128. [Google Scholar] [CrossRef]
  7. Aliasgari, M.; Simeone, O.; Kliewer, J. Distributed and Private Coded Matrix Computation with Flexible Communication Load. arXiv 2019, arXiv:1901.07705. [Google Scholar]
  8. Yang, H.; Lee, J. Secure Distributed Computing With Straggling Servers Using Polynomial Codes. IEEE Trans. Inf. Forensics Secur. 2019, 14, 141–150. [Google Scholar] [CrossRef]
  9. D’Oliveira, R.G.L.; El Rouayheb, S.; Karpuk, D. GASP Codes for Secure Distributed Matrix Multiplication. IEEE Trans. Inf. Theory 2020, 66, 4038–4050. [Google Scholar] [CrossRef] [Green Version]
  10. D’Oliveira, R.G.L.; El Rouayheb, S.; Heinlein, D.; Karpuk, D. Degree Tables for Secure Distributed Matrix Multiplication. IEEE J. Sel. Areas Inf. Theory 2021, 2, 907–918. [Google Scholar] [CrossRef]
  11. Yu, Q.; Raviv, N.; So, J.; Avestimehr, A.S. Lagrange Coded Computing: Optimal Design for Resiliency, Security and Privacy. arXiv 2018, arXiv:1806.00939. [Google Scholar]
  12. Kakar, J.; Ebadifar, S.; Sezgin, A. On the Capacity and Straggler-Robustness of Distributed Secure Matrix Multiplication. IEEE Access 2019, 7, 45783–45799. [Google Scholar] [CrossRef]
  13. Chang, W.T.; Tandon, R. On the capacity of secure distributed matrix multiplication. In Proceedings of the 2018 IEEE Global Communications Conference (GLOBECOM), Abu Dhabi, United Arab Emirates, 9–13 December 2018; pp. 1–6. [Google Scholar]
  14. Chang, W.T.; Tandon, R. On the Upload versus Download Cost for Secure and Private Matrix Multiplication. In Proceedings of the 2019 IEEE Information Theory Workshop (ITW), Gotland, Sweden, 25–28 August 2019; pp. 1–5. [Google Scholar]
  15. Dutta, S.; Bai, Z.; Jeong, H.; Low, T.M.; Grover, P. A unified coded deep neural network training strategy based on generalized PolyDot codes. In Proceedings of the 2018 IEEE International Symposium on Information Theory (ISIT), Vail, CO, USA, 17–22 June 2018; pp. 1585–1589. [Google Scholar]
  16. Dutta, S.; Fahim, M.; Haddadpour, F.; Jeong, H.; Cadambe, V.; Grover, P. On the Optimal Recovery Threshold of Coded Matrix Multiplication. IEEE Trans. Inf. Theory 2020, 66, 278–301. [Google Scholar] [CrossRef] [Green Version]
  17. Aliasgari, M.; Simeone, O.; Kliewer, J. Private and Secure Distributed Matrix Multiplication With Flexible Communication Load. IEEE Trans. Inf. Forensics Secur. 2020, 15, 2722–2734. [Google Scholar] [CrossRef] [Green Version]
  18. Yu, Q.; Maddah-Ali, M.A.; Avestimehr, A.S. Straggler Mitigation in Distributed Matrix Multiplication: Fundamental Limits and Optimal Coding. IEEE Trans. Inf. Theory 2020, 66, 1920–1933. [Google Scholar] [CrossRef] [Green Version]
  19. Yu, Q.; Avestimehr, A.S. Entangled Polynomial Codes for Secure, Private, and Batch Distributed Matrix Multiplication: Breaking the “Cubic” Barrier. In Proceedings of the 2020 IEEE International Symposium on Information Theory (ISIT), Los Angeles, CA, USA, 21–26 June 2020; pp. 245–250. [Google Scholar]
  20. Wang, H.-P.; Duursma, I. Parity-Checked Strassen Algorithm. arXiv 2020, arXiv:2011.15082. [Google Scholar]
  21. Hasirciolu, B.; Gomez-Vilardebo, J.; Gunduz, D. Bivariate Polynomial Codes for Secure Distributed Matrix Multiplication. IEEE J. Sel. Areas Commun. 2022, 40, 955–967. [Google Scholar] [CrossRef]
  22. Li, J.; Hollanti, C. Private and Secure Distributed Matrix Multiplication Schemes for Replicated or MDS-Coded Servers. IEEE Trans. Inf. Forensics Secur. 2022, 17, 659–669. [Google Scholar] [CrossRef]
  23. Machado, R.A.; D’Oliveira, R.G.L.; Rouayheb, S.E.; Heinlein, D. Field Trace Polynomial Codes for Secure Distributed Matrix Multiplication. In Proceedings of the 2021 XVII International Symposium “Problems of Redundancy in Information and Control Systems” (REDUNDANCY), Prague, Czech Republic, 23–25 November 2021. [Google Scholar]
  24. Makkonen, O.; Hollanti, C. General Framework for Linear Secure Distributed Matrix Multiplication with Byzantine Servers. arXiv 2022, arXiv:2205.07052. [Google Scholar]
  25. Mital, N.; Ling, C.; Gündüz, D. Secure Distributed Matrix Computation With Discrete Fourier Transform. IEEE Trans. Inf. Theory 2022, 68, 4666–4680. [Google Scholar] [CrossRef]
  26. Machado, R.A.; Manganiello, F. Root of Unity for Secure Distributed Matrix Multiplication: Grid Partition Case. arXiv 2022, arXiv:2206.01559. [Google Scholar]
  27. Zhu, J.; Li, S. A Systematic Approach towards Efficient Private Matrix Multiplication. IEEE J. Sel. Areas Inf. Theory 2022, 3, 257–274. [Google Scholar] [CrossRef]
  28. Bosma, W.; Cannon, J.; Playoust, C. The Magma algebra system. I. The user language. J. Symb. Comput. 1997, 24, 235–265. [Google Scholar] [CrossRef] [Green Version]
  29. Sedoglavic, A. Yet Another Catalogue of Fast Matrix Multiplication Algorithms. Available online: https://fmm.univ-lille.fr/ (accessed on 28 October 2022).
  30. Fawzi, A.; Balog, M.; Huang, A.; Hubert, T.; Romera-Paredes, B.; Barekatain, M.; Novikov, A.; Ruiz, F.J.; Schrittwieser, J.; Swirszcz, G.; et al. Discovering faster matrix multiplication algorithms with reinforcement learning. Nature 2022, 610, 47–53. [Google Scholar] [CrossRef] [PubMed]
  31. Elia, M.; Leone, M. On the inherent space complexity of fast parallel multipliers for GF(2/sup m/). IEEE Trans. Comput. 2002, 51, 346–351. [Google Scholar] [CrossRef]
  32. Elia, M.; Rosenthal, J.; Schipani, D. Polynomial evaluation over finite fields: New algorithms and complexity bounds. Appl. Algebra Eng. Commun. Comput. 2012, 23, 129–141. [Google Scholar] [CrossRef] [Green Version]
Figure 1. System model for secure matrix multiplication.
Figure 1. System model for secure matrix multiplication.
Entropy 25 00266 g001
Figure 2. Comparison of maximal degree with non-zero coefficient.
Figure 2. Comparison of maximal degree with non-zero coefficient.
Entropy 25 00266 g002
Figure 3. Comparison with [19].
Figure 3. Comparison with [19].
Entropy 25 00266 g003
Figure 4. Comparison with [17,26] for the cases M = 4 , L = 3 and M = 5 , L = 2 .
Figure 4. Comparison with [17,26] for the cases M = 4 , L = 3 and M = 5 , L = 2 .
Entropy 25 00266 g004
Figure 5. Comparison of the maximal degree with the G A S P r scheme from [10].
Figure 5. Comparison of the maximal degree with the G A S P r scheme from [10].
Entropy 25 00266 g005
Table 1. Summary table of maximal degree of P Q .
Table 1. Summary table of maximal degree of P Q .
T > K ( L 1 ) + 1 T K ( L 1 ) + 1
T > K 2 D ( T 1 ) (6) D ( K ( L 1 ) + T 1 ) + M (5)
T K D ( K + T 2 ) + M (4) D ( K L 1 ) + 2 M (3)
Table 2. Exponents of P ( x ) Q ( x ) for K = 3 , L = 2 , M = 3 , T = 3 . The monomial exponents which correspond to the computed data are shown in blue. The grey background marks noise exponents.
Table 2. Exponents of P ( x ) Q ( x ) for K = 3 , L = 2 , M = 3 , T = 3 . The monomial exponents which correspond to the computed data are shown in blue. The grey background marks noise exponents.
0123516171810
00123516171810
11234617181911
22145718192012
33456819202113
556781021222315
667891122232416
7789101223242517
88910111324252618
10101112131526272820
11111213141627282921
1221314151728293022
1331415161829303123
Table 3. Exponents of P ( x ) Q ( x ) for K = 3 , L = 2 , M = 3 , T = 6 . The monomial exponents which correspond to the computed data are shown in blue. The grey background marks noise exponents.
Table 3. Exponents of P ( x ) Q ( x ) for K = 3 , L = 2 , M = 3 , T = 6 . The monomial exponents which correspond to the computed data are shown in blue. The grey background marks noise exponents.
0123516171810152025
00123516171810152025
11234617181911162126
22345718192012172227
33456819202113182328
556781021222315202530
667891122232416212631
7789101223242517222732
88910111324252618232833
10101112131526272820253035
11111213141627282921263136
1221314151728293022273237
1331415161829303123283338
15151617182031323325303540
20202122232536373830354045
25252627283041424335404550
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Byrne, E.; Gnilke, O.W.; Kliewer, J. Straggler- and Adversary-Tolerant Secure Distributed Matrix Multiplication Using Polynomial Codes. Entropy 2023, 25, 266. https://doi.org/10.3390/e25020266

AMA Style

Byrne E, Gnilke OW, Kliewer J. Straggler- and Adversary-Tolerant Secure Distributed Matrix Multiplication Using Polynomial Codes. Entropy. 2023; 25(2):266. https://doi.org/10.3390/e25020266

Chicago/Turabian Style

Byrne, Eimear, Oliver W. Gnilke, and Jörg Kliewer. 2023. "Straggler- and Adversary-Tolerant Secure Distributed Matrix Multiplication Using Polynomial Codes" Entropy 25, no. 2: 266. https://doi.org/10.3390/e25020266

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