Quantum Coding via Quasi-Cyclic Block Matrix

An effective construction method for long-length quantum code has important applications in the field based on large-scale data. With the rapid development of quantum computing, how to construct this class of quantum coding has become one of the key research fields in quantum information theory. Motivated by the block jacket matrix and its circulant permutation, we proposed a construction method for quantum quasi-cyclic (QC) codes with two classical codes. This simplifies the coding process for long-length quantum error-correction code (QECC) using number decomposition. The obtained code length N can achieve O(n2) if an appropriate prime number n is taken. Furthermore, with a suitable parameter in the construction method, the obtained codes have four cycles in their generator matrices and show good performance for low density codes.


Introduction
Quantum communication requires that environmental effects and decoherence should be reduced with reliable quantum information processing. In practice, information reconciliation in quantum key distribution (QKD) is important for the secret key rate and also affects the maximum transmission distance [1][2][3][4]. Error-correcting code generally may be applied in a quantum channel to correct errors caused by channel noise and possible interventions from eavesdroppers. To obtain an acceptable level, QECC is an essential method because of its robustness and efficiency in quantum computation [5][6][7][8][9][10]. One of the advantages of quantum computation is that its high efficiency compares favorably to classical computation; it is able to handle large-scale data that classical computation cannot. Previously, most of the construction methods for QECC focused on the generation of stabilizers, and there was little research on the long code type. Furthermore, due to some fields in quantum information becoming gradually more practical, this has prompted researchers to identify a good coding method for quantum error-correcting codes of long length. For example, encoding large-scale data has potential applications in the field of machine learning (ML) with respect to big data [11][12][13][14]. Therefore, how to efficiently express classical massive data with physics-based codes is also an important research field. To obtain a general quantum code, the question is usually converted to a problem of stabilizer generation. One typical method is to obtain the generation matrix of a quantum code based on two classical codes, which are called Calderbank-Shor-Steane (CSS) codes [6,7]. By resorting to the generalization of cyclic codes, a class of classical codes called quasi-cyclic (QC) codes can build linear codes based on algebraic structure, which has improved some fundamental minimum distances [15][16][17][18]. For instance, it can satisfy the modified version of the Gilbert-Vashamov (GV) bound [19][20][21]. It has shown good performance when applied to form quantum codes.
In the construction process for long-sequence QECCs, how to design the generators of stabilizers based on the block matrix is key. Methods from QC low density parity check (LDPC) codes have been studied by Hagiwara et al. in terms of a probabilistic method [22,23]. In 2018, Galindo et al. applied two generators to construct a quantum version with dual-containing QC [24]. Some QC short-length codes were obtained with good parameters. Not long after that, Ezerman et al., in 2019, used QC codes with large Hermitian hulls to form QECCs over fields F 4 and F 9 [25], so that a record-breaking binary QECC was obtained. Furthermore, J. Lv et al. proposed some new binary quantum codes derived from one generator quasi-cyclic codes with a stabilizer [26,27]. Recently, some researchers have considered the application of this kind of quantum code in quantum key distribution [4]. However, few researchers have paid attention to the construction of long-length quantum QC code involved with massive data. Inspired by the previous work, we presented QC code constructions of long length to generate QECCs with a family of orthogonal jacket matrices, the main property of which are that the inverse matrix can be obtained by its element-wise inverse or block-wise inverse [28,29]. Therefore, it can be realized relatively easily with a physical circuit. Furthermore, since Gallager first proposed LDPC codes in the 1960s [30], this class of classical code has shown good performance approaching the channel capacity [31][32][33][34][35]. Subsequently, its quantum versions has been investigated [22,23]. However, the achievements in this field have been explored far less than their classical counterparts. The constructed quantum codes have shown good performance for low density codes based on iterative coding in our proposed construction method.
In this paper, with the advantage of the convenient implementation of the jacket transform, we applied a quasi-cyclic method via a low-density block matrix to gain longlength quantum codes. If a prime number in the proposed construction method is taken to properly choose the jacket matrix with a basic matrix and block circular matrix combined together, then a longer length of matrix to encode classical data can be obtained. This paper is arranged as follows: In Section 2, we present some preliminary information which is necessary for QECCs. Then, in Sections 3 and 4, we investigate the construction of long-length quasi-cyclic quantum codes which are generated from block jacket matrices based on a basic matrix and circulant permutation matrices. Furthermore, the construction conditions with low density are also analyzed. Finally, conclusions are drawn in Section 5.

Preliminaries
Some relevant notation and basic construction methods for quantum error correction codes are first briefly reviewed below.

General Construction Methods of QECCs
A linear binary quantum error-correcting code [[N, k, d]] denotes that k-data vectors are encoded to N-dimensional vectors in space P N , where d is the minimum distance. Consider a 2 N -dimensional Hilbert space based on a complex field C where every 2 N standard basis vector in space P N is indexed by a classical binary vector u ∈ F N 2 and denoted by |u . It is generally called a N-qubit state space, for which each component in the tensor product corresponds to one qubit. Similar to classical coding, a fundamental problem in quantum error correction is to generate quantum codes based on the best possible minimum distance. The general construction method for QECCs usually relies on a so-called stabilizer. A stabilizer quantum code C[[N, k, d]] can be gained from the stabilizer denoted as where M 1 , M 2 · · · M N−k are N − k commuting generators of the stabilizer, which is the collection of orthogonal quantum state eigenvectors that refer to code words. Therefore, to form a stabilizer quantum code, N − k generators of stabilizer S should first be designed, which are expressed by the following generator matrix , and x, z are the Pauli transformation. According to the property of commuting generators, the elements of its row vector satisfy that the symplectic inner product is equal to zero.
Another well known construction method for quantum codes is the CSS code which is generated by a pair of classical codes C 1 [n, k 1 , d 1 ] and C 2 [n, k 2 , d 2 ], where k i and d i are the information code length and minimum distance, respectively. This means that this class of quantum error code is a complex vector space characterized by a pair of classical binary linear codes C 1 and C 2 . Here, the parity-check matrices H 1 and H 2 of the two classical codes are required to satisfy H 1 · H T 2 = 0, i.e., every row of H 1 is orthogonal to every row of H 2 . Hence, define a CSS code as a complex linear combination of vectors: where C ⊥ 2 is the dual code of the classical code C 2 . According to its definition, the obtained ] is a class of special stabilizer code, of which the generator matrix is In light of the characteristics of big data processed in artificial intelligence and other fields, we shall apply the recursive relationship of a quasi-cyclic block jacket matrix to easily obtain long-length QECCs.

Error of Quantum Error-Correction Code and Bound
As with different quantum codes, errors are also labeled with strings in field F 2 . This will occur when the states are transmitted through quantum channels. The traditional approach to error correction for quantum codes is to consider the single qubit flip error, the phase error or the phase-flip error, which can be described with three Pauli operators σ 1 , σ 2 and σ 3 = ωσ 1 σ 2 , respectively. Here, ω is the primitive root of unity. Every error on N qubits can be denoted as e = σ X 1 σ Z 2 , for X = (x 1 , x 2 , . . . , x n ) and Z = (z 1 , z 2 , . . . , z n ) ∈ F N 2 . Reflexive stabilizer codes and CSS codes have a one-to-one correspondence by choosing a basis for the error group. In terms of the Pauli matrices, the single qubit quantum error can be described as X(a) and Z(a) for a ∈ F 2 , whose action on |x ∈ C is given by Therefore, it acts on an N-qubit basis state |Q = (q 1 , q 2 , . . . , q N ) in F N 2 as follows Furthermore, the quantum Hamming bound of a general quantum code C[[N, k, d]] is required to satisfy the following inequality condition [36] which may correct up to t = [(d − 1)/2] quantum error bits.

Long-Length Coding Constructions Based on Jacket Matrix
Quasi-cyclic codes are the generalization of cyclic codes, which can generate a class of linear codes of algebraic structure. Assume C is a classical code of length N over field F 2 , which is closed with a cyclic-shift operator γ. This means that any codeword The circuit of the cyclic shift can be represented as in Figure 1. In this circuit, C as an input code vector can generate an output code vector with some integer s times of γ operation, Figure 1. Schematic of classical cyclic code vector. Here, according to s times of cyclic-shift operator γ, the classical code C as an input code can generate its cyclic vectors, γ C, γ 2 C, . . . , γ s C. Here, s is an integer number, so that the generated vectors belong to a quotient ring.
More generally, if there is a smallest positive integer such that also belongs to C, the linear code C is called a quasi-cyclic code of index . Furthermore, In quantum theory, if any quantum code word |c ∈ P N is still a quantum code state in this space after several cyclic shifts, the quantum codes will be correspondingly called quasi-cyclic quantum codes.
In mathematical theory, a cyclic code is an ideal in the quotient ring R; hence, it can be gained by a single polynomial. Here, the quotient ring is defined as R = F 2 [x]/ x n − 1 for a prime number n. It is an isomorphic γ : F n 2 → R between the ring formed by all n × n circulant matrices and the ring R formed by the polynomial x n − 1. As a consequence, the circulant matrix corresponds to the following polynomial a = a 0 + a 1 x + . . . + a n−1 x n−1 .
Under the isomorphism γ, it has γ a = a n−1 + a 0 x + . . . + a n−2 x n−1 , for a = (a 0 , a 1 , . . . , a n−1 ) ∈ F n 2 . If we define K n = I, such as is a n × n matrix representing the right cyclic shift by one position, it is readily seen that a circulant matrix A over F 2 can be represented in the form where I is the n × n identity matrix. More generally, the n × n matrix K = (k ij ) may be taken as where, h is an integer for 1 ≤ h ≤ n − 1. It is obvious that the matrix K can form an Abelian which is called a basic matrix. More generally, the matrix G e formed by the index of the basic matrix is defined as an exponent matrix. On the basis of the two matrices, we also introduce a circulant permutation matrix Q obtained by an operation "∧" between the matrices K and G e as where a ij , 1 ≤ i ≤ m, 1 ≤ j ≤ n, is the exponent of the basic matrix K, and It is easily seen that Q is essentially an array of cyclic-shift operators. On the other hand, a class of matrix J n×n = (a ij ) n×n is called a jacket matrix, which could lead to a simple encoding algorithm [28,29], if it satisfies i.e., J −1 n×n = (a −1 ij ) T /a, where a is the normalized constant. It is obvious that Pauli matrices and the Hadamard matrix belong to a jacket matrix.
In addition, we also define an operation '⊗' between the Jacket matrix J and the cyclic-shift operator vector K = (I, K, . . . , K n−1 ) as J⊗ K = J⊗(I, K, . . . , K n−1 ) = (J, JK, . . . , JK n−1 ). (17) Then, on the basis of the jacket matrix J and the circulant permutation matrix Q, we design a matrix G with length N = n(n − 1) constructed by the following circuit where, G e = (a ij ) mn is the exponent matrix of the basic matrix K in Equation (13).

Long-Length Quantum Coding via Quasi-Cyclic Jacket Matrix
Based on the above mathematical definitions, we mainly consider how to obtain the exponent matrix G e and the jacket matrix J as follows.

The Construction Method of Jacket Matrix
Firstly, the construction manner of the low-parity jacket matrix J in Equation (18) is investigated. According to their definition, it is obvious that the Hadamard matrix and the Pauli matrices are special jacket matrices. Consider the 2-order Hadamard matrix as the smallest basic matrix. A binary n 1 -size Hadamard matrix H = (h ij ) n 1 ×n 1 for n 1 = 2 m , m ≥ 3, under mapping: 1 → 1, −1 → 0, may be obtained with the following recursive relation Generally, on the basis of the tensor product, the n 1 = 2 m -order jacket matrix can be shown as where J 2 may also be chosen as Pauli matrices except for the Hadamard matrix, Correspondingly, one obtains Similarly, we also consider a jacket matrix with size n 2 = 3 m based on the fundamental matrix J 3 as follows: Denoting a 1 × 1 Jacket matrix as J 1 = 1, the direct sum J 3 may be written as It is easy to check that Then, one may obtain for In terms of number theory, any finite prime number n may be decomposed into a Kronecker product and the direct sum of 2 and 3 resort to the following form where n µ , m ν are integers for 1 ≤ µ ≤ r, 1 ≤ ν ≤ s. Therefore, to obtain any prime size of quantum code, we first construct generator matrices with size 2 m and 3 m . In view of the recursive relation, the jacket matrix J n of large-scale order and its transpose matrix J T n satisfy ).
It is obvious that the weight of the gained jacket matrix J n 2 is equal to 1 when it involves J 2 as one of the Pauli matrices. For clarity, some decomposition methods of the jacket matrix are presented based on 2-order and 3-order fundamental jacket matrices J 2 (Pauli matrices or the Hadamard matrix) and J 3 in Table 1.

The Construction Method of the Exponent Matrix
Next, based on the obtained basic matrix K, to generate the stabilizer with two circulant permutation matrices, we consider further the construction algorithm of the exponent matrix G e in Equation (18) as follows: Assume an Abelian group Z n = {0, 1, . . . , n − 1} for a prime number n > 2, and its subset Z * n obtained by non-zero elements, i.e., Z * n = Z n /{0}. As n is a prime number, the size of Z * n is even. Hence, the set Z * n can be divided on average into two subsets Z * l 1 = {2k + 1, 0 ≤ k ≤ l − 1} and Z * l 2 = {2k, 1 ≤ k ≤ l} of no common element. As can be seen from the group, it is clear that any a ∈ Z * l 1 , b ∈ Z * l 2 , a = b and the orders of both the subsets are half of n − 1, i.e., |Z * l 1 | = |Z * l 2 | = (n − 1)/2 = l. Denote all the elements in Z * n i to be arranged as the first row vector e ij of an obtained matrix E i , where i = 1, 2 is the ith subset and j = 1, 2, . . . , and l is the jth permutation, so the number of the maximum sort order is l.
To the first vector e 11 = (e 11 , e 12 , . . . , e 1l ), we take the described anticlockwise (or clockwise) cyclic shift K in (13), i.e., e 11 K = (e 1l , e 11 , . . . , e 1,l−1 ). After l − 1 times of operation K to vector e 11 , l vectors may be generated as the matrix E 1 . With a similar rule, we take the sequential arrangement e 21 = (e 21 , e 22 , . . . , e 2l ) as the first vector of another matrix E 2 . It is required that e 21 is a different sequence from e 11 . Subsequently, the elements in the two subsets can be constructed as two exponent block matrices E 1 and E 2 . The exponent matrix is generated by combining them. Namely, define an operator ' ' for combining the two sub-matrices as Here, E i is an exponent sub-matrix for obtaining the exponent matrix G e , and e i is the row vector of the exponent sub-matrix E i , i = 1, 2. On the basis of the same rule, two exponent matrices G e 1 and G e 2 may be gained from the elements in Z * l 1 and Z * l 2 , respectively. After constructing the exponent matrix G e and the basic matrix K, the circulant permutation Q may be obtained. By combining it with the n-order jacket matrix, the nl × n(n − 1) generator matrix G is finally obtained.
Furthermore, if a greater code rate is required, we also apply the described method again to add the rows. This purpose will be achieved to make the first vector begin with a different cyclic-shifting permutation vector with opposite direction, i.e., clockwise (or anticlockwise). As a result, it will obtain a n(n − 1) × n(n − 1) generator matrix G as where E 1 and E 2 are newly obtained matrices with the similar method. It is obvious that the row weight of the obtained matrix is equal to n − 1. In fact, if we wish to further reduce the weight of the row matrix, a zero block matrix can be used during the design process. If we denote "τ 0 " as the exponent of the n × n zero matrix, just taking "τ 0 " instead of 1 ≤ t ≤ l − 1 elements in Z * l 1 and Z * l 2 , the row weight will reduce 2t in the obtained matrix. The whole physical circuit of the construction process can be described as in Figure 2. In the process, a prime number n will be divided into two branches. According to the designed approach, two matrices G e 1 and G e 2 that generated similarly to G e will be obtained by operating a cycle-shift operation γ on two groups of vectors e a i and e b j (i, j = 1, 2). Finally, we take the obtained matrix G i (similar matrix G in Equation (18)) as the parity-check matrix H i of a classical QC code by resort to the algorithm. Figure 2. The circuit of the constructing generator matrix G. After taking the proper prime number n, two exponent matrices G e 1 and G e 2 may be obtained by resort to the operator ' ' on matrices E A i and E B j using a cyclic shift to vectors e a i and e b j , respectively. Correspondingly, the quasi-cyclic matrix H of the quantum codes can be obtained based on the two classical quasi-cyclic matrices G 1 and G 2 , which are yielded by the same jacket matrix and two circulant permutation matrices by resort to the operation '⊗'.
However, two conditions of coding construction should be satisfied for the generated matrix G. On the one hand, any two rows in G should be orthogonal, i.e., it is selforthogonal. In fact, according to the proposed construction algorithm, take a cyclic-shift operator σ in the no-unit operator group K/{I}, where the group K is formed by K introduced before. Without losing generality, denote v σ = (σ i 1 , σ i 2 , . . . , σ i l ) and v σ = (σ i 1 , σ i 2 , . . . , σ i l ) two row operator vectors in the circulant permutation matrix Q, 1 ≤ i, i ≤ l = (n − 1)/2. Namely, exponent vectors e i = (i 1 , i 2 , . . . , i l ) and e i = (i 1 , i 2 , . . . , i l ) are both in the same matrix E 1 or E 2 . It is obvious that, if any binary row vector c in the jacket matrix J is both operated by v σ and v σ with operation⊗, their inner product is equal to 0 or 1, i.e., ( c⊗ v σ ) · ( c⊗ v σ ) T = 0 or 1. Therefore, if any two row vectors x and y in matrix J are operated by the concatenated vector v = ( v σ | v σ ) with size 2l and another vector γ v, their inner product will always be 0 for mode 2 with one-to-one mapping, i.e., ( x⊗ v) · ( x⊗γ v) T = 0; here, γ is a cyclic-shift operator. This means that G is a self-orthogonal matrix.
On the other hand, it should also be proved that any codewords c 1 from C ⊥ 2 are orthogonal to all codewords c 2 from C ⊥ 1 , i.e., G 1 · G ⊥ 2 = 0. In fact, for the basic matrix K, assume its cyclic-shift time of operating γ on it in Z * l 1 and Z * l 2 , respectively. According to the described algorithm, the cyclic-shift steps in the two sets are both 2, i.e., with the same operation γ 2 . Therefore, any two matrices K 1 and K 2 of which exponents from Z * l 1 and Z * l 2 , can be described as forms like Equation (12), i.e., K 1 = a 1 K + a 3 K 3 + . . . + a n−1 K n−1 , K 2 = a 2 K 2 + a 4 K 4 + . . . + a n K n . (32) It is obvious that K 1 and K 2 are linearly independent, i.e., the two generated Abelian spaces are orthogonal. As a result, if we take G e 1 and G e 2 as the exponent matrices constructed by Equation (18) . Take e 11 = (1, 3,5,7,9) and e 21 = (3, 5, 7, 9, 1) as the first vectors to construct the sub-matrices E A1 and E A2 , respectively, so that G e1 is obtained by combining the two sub-matrices. Similarly, also take e 22 = (2, 4, 6, 8, 10) and e 22 = (4, 6,8,10,2) as the first vectors, then G e2 will be constructed by coupling E B1 and E B2 . Correspondingly, in terms of the basic matrix K with parameter h = 1 in Equation (13), the exponent matrices G e 1 and G e 2 may be generated as 1 3 5 7 9 3 5 7 9 1 9 1 3 5 7 1 3 5 7 9 7 9 1 3 5 9 1 3 5 7 5 7 9 1 3 7 9 1 3 5 3 5 7 9 1 5 7 9 1 3 Similarly, by making use of a similar method, matrix G e 2 may be obtained as follows: We also take the 11 by 11 basic-matrix J 11 = J 6 ⊕ J 5 . Then, the matrices G 1 and G 2 with size 55 × 110 are obtained by combining the two exponent matrices and the basic-matrix. It is obvious that the obtained matrix can encode 55 information bits at most. To increase the coding rate k/N, we can also add the rows E A1 and E A2 (E B1 and E B2 ) of the exponent matrix in terms of the algorithm described before, such as As the result, the exponent matrices G e 1 and G e 2 can also be shown as the following 110 × 110 matrix Therefore, the two matrices G 1 and G 2 are used to form the generator matrix G c in Equation (5).
For example, if we wish to obtain a quantum code with a coding rate of 0.4, by applying the proposed approach, the two classical codes C 1 [110, 80,12] and C 2 [110, 74,14] can be constructed, respectively. Therefore, according to the construction method of CSS-type, a quantum code C[110, 44,12] is obtained. With greatly increasing code length of QC codes, some methods of computing the minimum distance are required [37,38].
In the following, we use different parameters to analysis the bit error ratio (BER) of the presented QC codes with a jacket matrix of 0.5 code rate. We first consider the coding performance of one of the pair of classical codes C 1 and C 2 in Figure 3. Here, if different prime numbers are taken n = 29, 23, 19 in the construction method, their corresponding code lengths are N = n(n − 1) = 812, 506, 342, respectively. With a 0.5 coding rate, we compare their corresponding QC codes. In the signal-to-noise ratio (SNR) range, it is shown that the two shorter lengths of the taken QC quantum codes show better performance from 0.2 to 0.4 dB than the longer one. However, owing to the close cycles and their bit-flip error correction capability, a greater length of code shows its superiority with increasing length.  Furthermore, we consider the probability of three classes of Pauli errors in the communication channel. Assuming the channel is viewed as a possibly more realistic depolarizing channel, it can independently generate a list of X bit-flip errors, Z phase-flip errors and Y errors which are a combination of bit and phase flip with equal probability f /3 for a total probability f . Hence, the marginal flip probability distributed identically is f m = 2 f /3. Owing to the construction methods of all CSS-type quantum codes obtained by the two classical codes C 1 and C 2 , the X-and-Z errors may be separately decoded and corrected with a standard classical correction algorithm [39]. In Figure 4, we compare the proposed QC quantum codes with the conventional quantum error-correction codes proposed in [22]. Here, we take, respectively, the quantum coding rate of these codes as 0.50 and 0.48. The proposed codes of lengths N = 7832 and N = 5256 are generated by jacket matrices with parameters n = 89 and n = 73, respectively. According to the construction method in [22], two codes with similar lengths N = 6806 and N = 4970 are compared. Because the pair of classical codes C 1 and C 2 are isomorphic, the average decoding performances are similar in simulation. Therefore, we just focus on analysis of the single classical code in Figure 4. According to the presented coding method, the obtained generator matrix has sparse properties in terms of the character of the jacket block matrix; hence, a larger minimum distance for the generator matrix can be obtained. As a result, the bit error rate of our gained codes is higher than for the conventional codes, although the floor of no error for both codes is down to about 10 −6 . However, with increasing f m , their BERs tend to the same level. Therefore, the proposed QC quantum codes show better performance for the coding of large-scale data.  Assume J ι is a ι × ι jacket in Equation (23) constructed with Pauli matrices σ 0 and σ 1 (not including the Hadamard matrix) in the described algorithm. To analysis the computation complexity, we first consider the 0 and 1 densities in the binary matrix denoted by where ι 0 and ι 1 are the 0 and 1 numbers respectively. Therefore, the density d 0 of the jacket matrix equals 1/ι and becomes lower with increasing length ι. According to the described algorithm, there are two operators, i.e., the Kronecker-product operator '⊗' and the direct-sum operator '⊕', involved. It is obvious that the calculation complexity of the direct sum is O(1) that is less than the Kronecker-product operator's O(ι). Therefore, the low complexity of the coding method should obey the following rules: (1) the length of the taken matrices between the Kronecker-product operator should be larger; (2) to obtain the long QC quantum code, the number in the decomposition method should include more direct-sum operators than Kronecker-product operators. As a result, the constructed quantum codes show good performance for low density code.
In addition, we consider the low-density properties of the constructed matrix. After first being proposed by Gallager, LDPC codes were rediscovered several decades later [31,32]. Classical LDPC codes have good performance, which approach the channel capacity in the limit of large block size. There has been considerable interest in finding quantum versions of these codes [33][34][35]. However, quantum LDPC codes are far less studied than their classical counterparts. In spite of its good performance, one main obstacle is how to obtain a highly efficient algorithm for iterative coding. In our paper, we have tentatively presented a method of constructing quantum LDPC codes and the results further enrich the theoretical achievements in this field. To ensure that the Tanner graph of the LDPC codes is free of 4-cycles, the girth may be at least 6 because the cycle of short length will reduce the performance of the LDPC codes. To meet the requirement, we just take the parameter n of the basic jacket matrix to be no less than 7, i.e., l ≥ 3, in our construction algorithm.
In classical codes, a bipartite Tanner graph consists of check nodes and variable nodes [40]. The variable and check node degrees are denoted as η and ρ, respectively, which correspond to the row and column minimum distances of the sparse parity-check matrix H. Assume the length of the shortest cycle on the graph, and that the number of independent iterations are referred to as the girth g and T, respectively [41,42]. Correspondingly, a useful iteration gain is generally bounded by Obviously, the gained block length should be sufficient while the girth is given, so that the bound satisfies [42] for a specific girth g = 4x + 2, where x is an integer. According to the bound (40), the relation of the code length N and the weights η and ρ is shown in Figure 5. Here, as x is taken as 2, 3 and 4 with hypothesis η = ρ, then the cycle-10, cycle-14 and cycle-18 are gained, respectively. In this figure, it is shown that the length increases exponentially with the cycle length and its minimum weight η. Provided that the required cycle is determined, i.e., the cycle is bigger than a 4-cycle, for balancing the weights η, ρ and the code length N, it is necessary to consider the fundamental construction of the jacket matrix. In terms of the characters of the proposed method, the minimum distance of the obtained codes will grow linearly with increase in the parameter n. Thereby, we can apply the taken prime number to generate jacket matrices to adjust the relation between η and N. The main rule for reducing the density and increasing the cycle of the parity check matrix H is that n in the decomposition method should be larger. For example, if we decompose the length n = 156 of the QC code as J 156 = J 13 ⊗ J 3 ⊗ J ⊗2 2 with the most basic method, the cycles will be smaller. However, if we take another decomposition method J 156 = J 7 ⊗ J 11 ⊕ J 43 ⊕ J 23 ⊕ J 13 , the cycle length is obviously increased, and, hence, the obtained quantum codes have the advantage of simple implementation of an iterative decoder and low-complexity encoding.
According to information coding theory, the sparse parity-check matrix H of code [N, k] for decoding can be gained from the generator matrix. Based on the character of our constructed matrix with prime number n, it is easy to check that the variable and check node degrees in H or the corresponding bipartite Tanner graph at most are η = n − 1 and ρ = [k/n] + 1, where [·] is an integral function. For Example 2, the row and column weights of the parity-check matrix for constructed codes [110, 80] are η = 9 and ρ = 8, respectively. It is obvious that the bound can be met with its 6-cycle for x = 1.
Furthermore, according to the family of proposed codes from the circulant permutation matrix in Equation (14), the obtained quantum QC code of dimension O(N) contains its upper bound on the minimum distance O(N/ log N) as the code length N → ∞. This means that, the adopted parameter n in the proposed coding method should correspondingly approach n ≈ x+1 ∑ i=2 η(η − 1) 2(i−2) , 1 < x ∈ Z (41) with the long-code length, where Z is an integer set. Here, to reflect the relation of several parameters, it takes x = 2, 3, 4 so that 10-cycles, 14-cycles and 18-cycles are obtained with hypothesis η = ρ. To satisfy the bound, the prime number n in the proposed method should also meet the condition of length N and cycles.
In practical applications, quantum codes with long length may potentially be used in some future quantum information fields involved in large-scale data, such as quantum machine learning, which uses quantum computers and aims to enhance the power of machine learning. However, some major obstacles still limit the use of quantum hardware for practical applications of machine learning. One of the bottlenecks is that the data has to be encoded into the quantum computer in an efficient manner to generate its useful quantum kernel. Although some encoding methods have been investigated [43][44][45], the features are limited by the number of qubits [46]. Additionally, the inherent noise of quantum computers also influences the quality of the experimental results. Generally, rapid processing of the large datasets is vital because the operation timescale relies linearly on the size of the dataset. Therefore, to provide a useful kernel for machine learning, a good coding manner with long code length can efficiently load a high-dimensional feature vector into a quantum computer. As a consequence, the proposed coding method in this paper provides a tentative coding scheme for ML based on large-scale data.

Conclusions
The coding method for massive data has important applications in the field of information transmission and big-data processing. With the rapid development of quantum computing, this class of coding construction has become one of the research fields in quantum information. In this paper, based on a class of circulant permutation matrices, we presented quantum quasi-cyclic CSS codes in terms of two long-length classical codes based on block matrices. Motivated by the advantages of convenient and low-complexity implementation of an iterative decoder for proposed code, a family of jacket block matrices were applied to quantum coding construction. The presented method can efficiently construct long-length quantum QC codes based on the proposed method of an iterative coding process. If the parameter is selected appropriately, the obtained quantum codes are number 4-cycles in their generators and have good performance for LDPC codes.
Furthermore, we also analysed the marginal flip probability f m with respect to our proposed codes; that a good performance was obtained for the bit error rate is shown in Section 4. Therefore, the obtained QC quantum codes that benefit from their semi-parallel architectures can potentially be applied to the future quantum information field in relation to massive data.