Apparatus for decoding linear code or binary code by using quantum circuit, and method for decoding binary linear code

A quantum circuit-based decoding method addresses efficiency issues in classical decoding algorithms by employing a generator matrix operation, Hamming weight calculation, and Grover's search algorithm to efficiently decode linear and binary linear codes, achieving rapid and accurate message restoration.

WO2025206770A1PCT designated stage Publication Date: 2025-10-02EWHA UNIV IND COLLABORATION FOUND +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2025/003951
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-29
Filing Date
2025-03-27
Publication Date
2025-10-02

AI Technical Summary

Technical Problem

Classical decoding algorithms for linear and binary linear codes face efficiency issues, with syndrome decoding being NP-Hard for complex error-correcting codes and exhaustive search being computationally inefficient for certain codes, necessitating a more effective decoding method.

Method used

A quantum circuit-based decoding method utilizing a generator matrix operation, Hamming weight calculation, sign inversion, and Grover's search algorithm to efficiently decode linear and binary linear codes, improving computational efficiency and accuracy.

Benefits of technology

The quantum circuit approach significantly enhances decoding performance by leveraging quantum computing, enabling rapid and accurate restoration of original messages with reduced computational resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2025003951_02102025_PF_FP_ABST
    Figure KR2025003951_02102025_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed is an apparatus for decoding a linear code or a binary code by using a quantum circuit, the apparatus comprising a quantum circuit for decoding a linear code executed on a quantum computer, wherein the quantum circuit comprises: a generator matrix operation module, into which a received message vector is inputted and which converts the received message vector into a codeword; and a Hamming weight calculation module, which calculates the Hamming distance d between the converted codeword and the inputted vector to estimate the presence and number of errors.
Need to check novelty before this filing date? Find Prior Art

Description

A linear or binary code decoding device using a quantum circuit and a method for decoding a binary linear code

[0001] The present application relates to a device and method for efficiently decoding a linear code or a binary linear code using quantum computing technology.

[0002] Cross-reference to related applications

[0003] This application claims priority to Republic of Korea Patent Application No. 10-2024-0043577, filed March 29, 2024, the entire contents of which are incorporated herein by reference.

[0004] [Description of Nationally Supported Research and Development]

[0005] This research was supported by the National Research Foundation of Korea (NRF) through the Ministry of Education's Science and Technology Research Infrastructure Development Program (Project Name: Institute of Mathematical Sciences, Project ID: 1345363653), the Ministry of Science and ICT's Individual Basic Research (MSIT) Program (Project Name: Arithmetic and Algebraic Code Research of Global Function Fields and Number Fields, Project ID: 1711190557), the Ministry of Education's Science and Technology Research Infrastructure Development Program (Project Name: Knot Untying Problem Based on Single Multiple Cross Projection, Project ID: 1345371174), and the Sejong Science Fellowship Program of the Ministry of Science and ICT (Project Name: Error-Correcting DNA Code Research for DNA Data-Storage, Project ID: 1711183176).

[0006] Since the birth of coding theory, finding efficient decoding algorithms has been one of the most important practical problems in coding theory. That is, determining which codeword (which message x) was transmitted when a vector y is received. Coding theory studies encoding and decoding algorithms that correct errors that may occur during message transmission. Syndrome decoding, a traditional decoding algorithm, can have limited efficiency and can be an NP-Hard problem for complex error-correcting codes. Furthermore, there is an exhaustive search algorithm that tests all codewords by computing all possible combinations of the row vectors of the generator matrix. While syndrome decoding algorithms are generally more computationally efficient than exhaustive search, this is not always the case. With the advancement of quantum computing, quantum algorithms, particularly those based on Grover's search algorithm, offer a groundbreaking approach to solving this decoding problem.

[0007] Accordingly, the technical challenge of the present application, conceived from this perspective, is to address the efficiency issues faced by existing classical computer-based decoding methods and to improve the decoding process of linear and binary linear codes by leveraging the advantages of quantum computing. Specifically, the present invention provides a method for efficiently decoding linear or binary linear codes using quantum computing technology, based on exhaustive search and Grover search algorithms. This method improves computational efficiency during the decoding process compared to classical algorithms, enabling the restoration of the original message quickly and accurately.

[0008] According to one embodiment of the present application, a linear code or binary code decoding device using a quantum circuit is provided, wherein the device comprises: a quantum circuit including the following components for decoding a linear code executed on a quantum computer, the components including: a generator matrix operation module for receiving a received message vector and converting the received message vector into a codeword; and a Hamming weight calculation module for calculating a Hamming distance d between the converted codeword and the input vector to estimate the presence and number of errors.

[0009] In one embodiment, the quantum circuit further includes a sign inversion module that identifies a codeword whose calculated Hamming distance d is less than or equal to a specific threshold d'=[(d-1) / 2] and inverts the sign of the quantum state of the codeword.

[0010] In one embodiment, the quantum circuit further includes a quantum Fourier inverse transformer that restores a frequency basis state based on a Hamming distance calculated by the Hamming weight calculation module to an original calculation basis state; and the modules are interconnected to form a quantum circuit that corrects errors in an input codeword and restores an original message vector.

[0011] In one embodiment, the generator matrix operation module, the Hamming weight calculation module, the sign inversion module, and the quantum Fourier inverse transformer are repeated a predetermined number of times by applying Grover's search algorithm, and the predetermined number of times is It may be the nearest integer.

[0012] In one embodiment, the quantum circuit may further include a search module that identifies the closest codeword from an input vector containing an error by applying Grover's search algorithm; and a quantum entanglement recovery module that restores a quantum state and quantum entanglement that have been transformed or lost through the performance of the generator matrix operation module, the Hamming weight calculation module, the sign inversion module, the quantum Fourier inverse transformer, and the search module to their original states.

[0013] A method for decoding a binary linear code using a quantum circuit according to one embodiment for realizing another object of the present application described above, the method comprising: an oracle operator for retrieving an original message m including the steps of building an oracle operator is a q-ary linear code of length n and dimension k, and when a generator matrix G of a code C of [d,k,d] with Hamming distance d and a receiving vector x are given, it is an operator that finds the original message m from a codeword C = mG such that d(mG,x) is less than or equal to d'=[(d-1) / 2], and the oracle operator The steps of constructing are: receiving a quantum state |ψ>|-> of k qubits, a received vector x, and a generator matrix G of a binary linear code C of [n, k, d]; initializing a message vector state of k constituting an initial quantum state |ψ>, an error vector state |r of length n, and an additional m qubit states |->, where k + 1 + n + m qubits are sequentially q1...q when m = [log2n]. k , ancilla qubits p, r1...r n , and a1...a m Label up to , the i-th qubit of qi←|ψ>, 1≤i≤k; r i ←|r>'s quantum state, 1≤i≤n; p←|->; a i ←|+>, 1≤i≤m; Assigning step; Each qubit state q i, r i , a i For , the operation Gen is used to convert the codeword state including the error by applying the generator matrix G. (q:r) Step of performing; Rot calculating the Hamming distance d between the converted codeword state and the error vector x state (r:a) A step of performing; a step of inverting the sign of the corresponding codeword state when the Hamming distance d(mG,x) is less than or equal to a specific threshold d'=[(d-1) / 2]; may include.

[0014] In one embodiment, the method comprises constructing an oracle operator The method further includes a step of decoding a binary linear code having an error based on the Grover algorithm by using the step of: preparing k qubits q and anscilla qubit p; and setting the quantum state |ψ> of the k qubits q to |0 k >|-> initialization step; from q1 to q k A step of applying Hadamard gate H to qubits up to obtain a uniform superposition of all quantum states |ψ>=|s>, and applying XH to qubit p to transform it into quantum state p = |0>; and the constructed oracle operator. By using , and the Gruber diffusion operator U, which inverts the probability amplitude in the vector space of the search target and diffuses it to |ψ>. s cast A step of repeatedly applying the number may be included.

[0015] In one embodiment, the method further comprises the step of checking the decoding possibility using an ancilla qubit p=|0>, wherein the step of checking the decoding possibility may include: if p=|0>, if the received vector x is decodable, measuring the resulting quantum state of the qubit and returning the measured vector m as a decoded message; and if p=|1>, if the received vector x is not decodable, outputting 'not decodable'.

[0016] In one embodiment, the Grover's diffusion operator U s is calculated using the following formula,

[0017] [formula]

[0018]

[0019] In the above formula, ⓧ represents tensor product, and the operation includes: applying Hadamard gate H to all k qubits; applying NOT gate X to all k qubits; and inverting the state of the target qubit only when all k qubits are |1>. k The step of applying a NOT gate; the step of applying a NOT gate to all k qubits again; the step of applying a Hadamard gate H to all k qubits again to complete the operation; wherein I may be an identity operator.

[0020] A computer program for performing a binary linear code decoding method using a quantum computer according to one embodiment of the present invention for realizing another object of the present application described above is stored in a computer-readable storage medium.

[0021] This application uses quantum circuits to dramatically improve the decoding process of binary linear codes, effectively solving complex decoding problems that classical decoding methods struggle to solve. Furthermore, by maximizing the computational power of quantum computers, higher decoding performance can be achieved with fewer computational resources. This opens new avenues for research in quantum information theory and error-correcting codes, expanding the potential practical applications of quantum computing.

[0022] FIG. 1 is a schematic diagram of a quantum circuit implementation for QFT according to one embodiment of the present application.

[0023] FIG. 2a and FIG. 2b are schematic diagrams of quantum circuit implementations of Grover's algorithm according to one embodiment of the present application.

[0024] FIG. 3 is a schematic diagram of a generator matrix operation module according to one embodiment of the present application.

[0025] FIG. 4 is a schematic diagram of a Hamming weight calculation module according to one embodiment of the present application.

[0026] FIG. 5 is a schematic diagram of a sign inversion module according to one embodiment of the present application.

[0027] FIG. 6 is a schematic diagram of a constructed oracle operator according to one embodiment of the present application.

[0028] FIG. 7 is a schematic diagram of a quantum circuit for decoding a linear code using the constructed oracle operator of FIG. 6, according to one embodiment of the present application.

[0029] FIG. 8 is an example of a probability distribution of an original message through a received vector according to one embodiment of the present application.

[0030] FIG. 9 is a schematic diagram illustrating a process of decoding a received vector 0100100 using a [7,4,3] Hamming code according to one embodiment of the present application.

[0031] The detailed description of the present application, which follows, refers to the accompanying drawings, which illustrate specific embodiments in which the present application may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the present application. It should be understood that the various embodiments of the present application, while different from each other, are not necessarily mutually exclusive. For example, specific shapes, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the present application. Furthermore, it should be understood that the position or arrangement of individual components within each disclosed embodiment may be modified without departing from the spirit and scope of the present application. Accordingly, the following detailed description is not intended to be limiting, and the scope of the present application is defined only by the appended claims, along with the full scope of equivalents to which such claims are entitled, if properly described. Like reference numerals in the drawings designate the same or similar functionality throughout the several aspects.

[0032] Hereinafter, preferred embodiments of the present application will be described in more detail with reference to the drawings.

[0033] Below, terms such as symbols or codes to be used in this application are defined and problems with existing syndrome decoding and exhaustive search algorithms are pointed out.

[0034] Definition of terms

[0035] first, is a finite field of order q for prime powers q. silver is an n-dimensional vector space composed of elements of , A subset C of is called a q-ary code. In particular, if C is If C is a k-dimensional subvector space, then C is called a q-ary linear code of length n and dimension k, and such a code is denoted by [n,k] qIt is represented as . In particular, when q = 2, it is called a binary linear code and is represented as [n,k]. Each element of the code is called a codeword. [n,k] q The generating matrix G of a sign C is a k × n matrix consisting of rows forming the basis of the sign. For vectors x=(xi) and y=(yi) in , the inner product is defined as follows:

[0036]

[0037] Also the dual sign of sign C is defined as follows:

[0038]

[0039] Any [n,k] q For the sign C, its dual sign C - is [n,nk] q It's a sign. The generating matrix of is called the parity-check matrix of C. The Hamming weight of a codeword C is the number of non-zero symbols in the codeword C and is denoted by wt(c). The Hamming distance between two codewords x and y is defined as d(x,y) = wt(xy), which means the number of different symbols between x and y. The minimum distance of C is the smallest Hamming distance between different codewords in C and is denoted by d(c). [n,k] q If a sign C has a minimum distance d, then C is [n,k,d] qIt is denoted by a code (in the case of binary code, [n, k, d]). The minimum distance is one of the most important parameters that measure the error correction capability of a code. If the minimum distance of a code C is d, and d' = [(d-1) / 2], then the spheres of radius d' for different codewords do not overlap each other. If d' or fewer errors occurred when a codeword C was transmitted and y was received, then C is the unique codeword closest to y. In particular, nearest neighbor decoding uniquely and correctly decodes the received vector when at most d' errors occurred during transmission.

[0040] If C has a generating matrix G of [n,k] q If a sign, then C is q, which is all possible linear combinations of the row vectors of G. k It has codewords. These codewords are q k There is a one-to-one correspondence between the message and the codeword. The process of mapping the message to the codeword is called encoding, and the opposite process is called decoding. In other words, decoding determines which message was transmitted when the codeword (which may contain errors) is received. The received vector A vector x is said to be decodable if it is determined that there is a unique codeword closest to x. If there is no such codeword, then x is said to be undecodable.

[0041] The simplest way to encode a message is to It is considered as a k-tuple m of [n, k]. The most common way to encode a message m is with a codeword C=mG. Compared to encoding algorithms, decoding algorithms are more complex because transmission errors can occur. A decoding algorithm for error correction is needed. One of the most popular decoding algorithms is syndrome decoding, also known as nearest neighbor decoding. [n, k] q Given a parity-check matrix H of signs, The syndrome of vector x in is Defined as is a vector. However, the problem of syndrome decoding is as follows.

[0042] Problems with syndrome decoding

[0043] [n,k,d] q Parity-check matrix H of the sign and the received vector Given, the syndrome decoding problem is

[0044]

[0045] A vector whose Hamming weight satisfying d' is not greater than [(d-1) / 2] is to find . Then, x is decoded into codeword C = xe, and the original message is a vector m satisfying mG = C. The problem of determining a vector satisfying the syndrome decoding problem is known to be NP-Hard even with appropriate preprocessing. In particular, [n,k,d] q If the code C is a perfect code, then If all vectors of are contained in exactly one sphere of radius d' centered at the codeword, then the vector e is always uniquely determined.

[0046] Because the generator matrix of a linear code is orthogonal to its parity-check matrix, the decoding problem can also be formulated in terms of the generator matrix. One such algorithm is the following decoding algorithm, which is an exhaustive search that tests all possible codewords in the generator matrix.

[0047] Full search decoding problem

[0048] [n,k,d] q The generating matrix G of the sign and the received vector Given , the exhaustive search decoding problem is to make d(x,mG) = wt(x - mG) smaller than d'=[(d-1) / 2]. The goal is to find the vector m of . Then, m is the original message.

[0049] Syndrome decoding algorithms are not always efficient compared to exhaustive search. Given [n,k,d] q For signs, in the worst case, exhaustive search is the number of vectors to check q k , whereas syndrome decoding has t=[(d-1) / 2]. Therefore, exhaustive search is more efficient than syndrome decoding if the following inequality holds:

[0050]

[0051]

[0052] This inequality is generally true for codes with large n and d and small k; for example, the code [20,4,13]4 has 32448507 vectors to check through syndrome decoding, but only 4 vectors to check through exhaustive search decoding. 4 = 256.

[0053] This application provides an algorithm for decoding binary linear codes using quantum circuits; it studies the process of implementing full search decoding of binary linear codes using matrix quantum circuits. Specifically, this application utilizes a matrix multiplier, a Hamming counter, a sign inversion module, etc. to retrieve an original message, and an oracle operator based on the Grover search algorithm. It is implemented as an algorithm for constructing a binary linear code (Algorithm 1) and a quantum decoding algorithm for binary linear codes (Algorithm 2).

[0054] quantum algorithms

[0055] To briefly summarize quantum computing, a calculation begins with the preparation of qubits and the establishment of their quantum states. A quantum gate is activated to change the quantum state of the target qubit. The outcome of the calculation is determined by observing the quantum state of the control qubit.

[0056] 1. Quantum Fourier transform

[0057] FIG. 1 is a schematic diagram of a quantum circuit implementation for a quantum Fourier transform (QFT) according to one embodiment of the present application.

[0058] The quantum Fourier transform is one of the fundamental operations in quantum computing and plays a crucial role in many quantum algorithms, including Shor's algorithm and quantum phase estimation. It is the quantum analog of the classical fast Fourier transform and is used to efficiently analyze the frequency components of quantum states. The quantum Fourier transform is an operation that converts a quantum state into a superposition of its frequency components.

[0059] The quantum Fourier transform can be understood as a change of basis from a computational basis to a frequency basis, where each basis represents a different frequency component of the quantum state. The quantum state of a qubit is defined as a unit vector in a two-dimensional Hilbert space over a complex field. This complex Hilbert space is called the state space of the qubit and is denoted by H. A basis of the state space of a qubit corresponds to the two physical states that can be observed when measuring the qubit. This basis is called the computational basis. The quantum Fourier transform (QFT) for n qubits n ) is defined as follows:

[0060]

[0061] Here, |e i > represents the (i + 1)th computational basis state, and e i = ε1... ε n Let be the (i + 1)th word among all binary strings of length n in lexicographical order, where i ∈ {0...2 n - 1}. Then the basis state of n qubits is |ε1>...|ε n > is. This is |e i > is indicated. The coefficient of each basis state is the probability amplitude. About ω= And then, QFT n The unitary matrix form is:

[0062]

[0063] am. The state of the clothes is denoted as . QFT1 is identical to the Hadamard gate, and the frequency basis state is and am.

[0064] For example, when n=1,

[0065]

[0066] is a Hadamard gate, and the frequency basis state is

[0067]

[0068] For example, when n=2,

[0069]

[0070] is. Consider the basis state |e1>=|01>. Then, the frequency basis state corresponding to |e1> is as follows.

[0071]

[0072] In general, the frequency basis state of n qubits satisfies

[0073]

[0074] Referring to Figure 1, the phase shift gate R j is |+> Therefore, if we construct the phase shift gate as shown in the quantum circuit schematic shown in Fig. 1, the computational basis state |e t > frequency basis state can be converted to

[0075] 2. Grover's search algorithm

[0076] FIG. 2a and FIG. 2b are schematic diagrams of quantum circuit implementations of Grover's algorithm according to one embodiment of the present application.

[0077] Grover's algorithm was first introduced by Grover in 1996. This application uses a modified version of Grover's original algorithm. Set Consider the problem of searching for a specific binary string ω of length n in e i e when = ω i A search function f whose function value is 1 and 0 otherwise w cast at can be defined as . Then f w Unitary operator for n + 1 qubits corresponding to can be configured as follows:

[0078]

[0079] Here And, is the basis state of n+1 qubits. Quantum state And, Therefore, we obtain the following [Proposition 1].

[0080] [Proposition 1]

[0081]

[0082] Therefore, the operator can flip the sign of the basis state corresponding to the displayed data ω. This operator is called an oracle.

[0083] Referring to Figure 2a, we construct a quantum circuit for Grover's search algorithm. Prepare n + 1 qubits and initialize the quantum state of the first n qubits to |0>. Sequentially apply the X gate and the Hadamard gate H to the last qubit to generate the quantum state |->. Apply the Hadamard gate to all n qubits except the last qubit to achieve uniform superposition of all states. To display the displayed data, Oracle Apply |s>|-> to the quantum state Geometrically, this process is the state space H of the first n qubits. n is a reflection on a hyperplane perpendicular to |ω> in a homogeneous quantum state. In the plane generated by |ω> and |s', the above process can be confirmed by referring to Fig. 2b as a reflection for |s'>.

[0084] To amplify the probability amplitude of |ω>, the quantum state obtained through the oracle is reflected on |s>. The implementation process is as follows. First, the Hadamard gate is applied to all n qubits except the last qubit. Next, Apply the unitary operator. Again, apply the Hadamard gate to the first n qubits. Since the state of the last qubit is |->, this operator is the same as (where I n is the identity operator for n qubits). Therefore, we obtain the implementation of reflection for |s>. The above process is called Grover's diffusion operator, and U s is denoted as . The initial quantum state |s> rotates from |s' to |ω> while passing through the oracle and Grover's diffusion operators. The rotation angle is Therefore, by repeating the Oracle and Grover's diffusion operators an appropriate number of times, we can obtain a quantum state close to |ω>. The number of repetitions is is the integer closest to . In this specification, this number is is displayed as .

[0085] Quantum circuits for linear codes

[0086] We build a quantum circuit for decoding linear codes based on Grover's search algorithm. Additional quantum gates are defined to construct the decoding algorithm.

[0087] FIG. 3 is a schematic diagram of a generator matrix operation module according to one embodiment of the present application.

[0088] Referring to Figure 3, the generator matrix operation module is an operator Gen (q:r) Includes G The above k Х n matrix, q = (q1...q k ) and r = (r1...r n ) is a labeled qubit, the operator Gen acting on q and r (q:r) is defined as follows:

[0089]

[0090] Here g ji is the (j, i)-th entry of the generating matrix G or, equivalently, the (i, j)-th entry of the transpose of G. And CNOT 0 = I2.

[0091] Above operator Gen (q:r) In , any two CNOT gates are interchangeable because their control and target qubits do not overlap. Each CNOT gate is its own inverse function, and Gen (q:r) Since Gen is defined regardless of the arrangement of CNOT gates, (q:r) It is also its own inverse function. This fact This occurs because the above matrix was used.

[0092] FIG. 4 is a schematic diagram of a Hamming weight calculation module according to one embodiment of the present application.

[0093] Referring to Figure 4, the Hamming weight calculation module is an operator Rot (r:a) Includes Controlled - R tWhen the state of the control qubit is |1>, the state of the target qubit is rotated by 2π / 2t around the z-axis. Using this fact, a frequency basis state corresponding to the given state is generated. r1...r n and a1...a m When this labeled qubit is {r i} and {a j} Operator Rot (r:a) is defined as follows:

[0094]

[0095] Since the number of |1> ranges from 0 to n, we need to consider n + 1 cases.

[0096] Qubit r1 to r n When the computational basis state is |r>,

[0097]

[0098] Here, t is the number of 1s in |r>.

[0099] The proof for this is Rot (r:a) After applying qubit a i The quantum state of

[0100]

[0101] It is enough to show that here is. Since the controlled phase gate acts on the target qubit when the quantum state of the control qubit is |1>, whenever |1> appears in |r>, a j The quantum state of |r> is rotated. If the number of 1s in |r> is t, then a j The quantum state of

[0102]

[0103] It becomes. Therefore, we get the result.

[0104] FIG. 5 is a schematic diagram of a sign inversion module according to one embodiment of the present application.

[0105] Referring to Figure 5, the sign inversion module is an operator Includes.

[0106] The CNOT gate switches the basis state of the target qubit according to the quantum state of the control qubit. This can be generalized as is the state of m control qubits in some basis state |e t > is an operation that switches the basis state of the target qubit.

[0107] Let p be the target qubit and a1...a m is called a labeled qubit. A positive integer t is 2 n For all smaller cases,

[0108]

[0109] to |e t >-director. If there are multiple |e t If you want to indicate >, you can multiply the indicators according to the following [Proposition 2].

[0110] J is (0,1...2 m - Let 1) be a subset of .

[0111] [Proposition 2]

[0112]

[0113]

[0114] Oracle configuration

[0115] FIG. 6 is a schematic diagram of a constructed oracle operator according to one embodiment of the present application.

[0116] Referring to Figure 6, to construct a decoding algorithm, an oracle is needed to retrieve the original message. Referring to the exhaustive search decoding described above, [n, k, d] q Given the generating matrix G of the code C and the receiving vector x, the original message m can be found from the codeword c = mG such that d(mG,x) is less than or equal to d'=[(d-1) / 2]. Therefore, cast at Define a search function that goes to:

[0117]

[0118] Here i ∈ {0...2 k-1}. Therefore, if the received vector x is decodable, the search function finds the original message exactly. Therefore, If we can create an oracle corresponding to the message, we can use Grover's algorithm to recover the original message. Oracle is defined as follows:

[0119]

[0120] Here am.

[0121] Typically, a quantum gate applies some operation determined by the quantum state of a fixed qubit (the control qubit) to multiple qubits, thereby modifying the quantum state of another fixed qubit (the target qubit). Additional qubits may be required during the operation, and these additional qubits are called ancilla qubits.

[0122] Step 0. To implement the oracle, we use k + 1 qubits for Grover's algorithm and additionally n + m qubits to detect the original message, where m = [log 2( n+1). The first k qubits are denoted as q1 to q k Label the next qubit as p, and the next n qubits as r1 through r n Until, the last remaining qubit is a1 to a m Label from q1 to q k Assume that the quantum states of qubits up to p are given by |ψ>. Each quantum state of p is given by |->, a i Initialize |+> from r1 to r nFor the quantum state of the qubit up to , the information of the received vector x is input through a classical channel and transformed into |r>. Ultimately, it implements the following extended operator.

[0123]

[0124] Step 1. Consider the difference between each codeword and the received vector to construct an oracle. Here, the basis states corresponding to each difference are superimposed according to the coefficient of |ψ> to construct a quantum state. Each codeword in C is generated by the generator matrix G and a binary string of length k. Therefore, the operator Gen is used here. (q:r) Apply.

[0125]

[0126] Here e i G is the ith codeword of C. r1 to r n The quantum state |r> up to |C> maintains |ψ> ψ > is converted to .

[0127] Step 2. In this step, the quantum state of Step 1 is converted into a superposition of frequency basis corresponding to the Hamming distance. All e i About d(e i G, r) = d i Let's say that Rot is the quantum state obtained in Step 1. (r:a) By applying , we obtain:

[0128]

[0129] This is why the number of ancilla qubits m is given by [log2(n+1)]. To transform the above state into a superposition of computational basis states, a1 to a m The inverse of QFT for qubits up to Apply.

[0130]

[0131] Step 3. Finally, flip the sign of the message m satisfying d(mG,r)≤d'. If there is a message m satisfying d(mG,r)≤d', then from a1 to a m The qubit states from e0 to e d' is one of them. According to [Proposition 2], qubits p and a1...a n About

[0132]

[0133] According to [Proposition 1], from q1 to q k The sign of the ground state |m> of the qubits can be flipped. This allows the original message to be indicated. However, too many qubits became quantum entangled during Steps 1 through 3. The next step is to resolve this issue and reuse the ancilla qubits.

[0134] Step 4. By reversing the operations in Step 1 and Step 2, the state of the ancilla qubit can be reset to its original state and quantum entanglement can be re-established. This allows Grover's algorithm to be applied repeatedly and avoids waste of ancilla qubits. The operation in Step 4 is

[0135]

[0136] Apply.

[0137] [Algorithm 1]

[0138]

[0139]

[0140] This application proposes Algorithm 1 as an oracle for decoding error-correcting codes. In the following [Theorem], we propose a quantum circuit as an implementation of Algorithm 1. Extended oracle operator satisfies the following:

[0141] [organize]

[0142]

[0143] The diagram 7 described below is an oracle according to the above [summary]. It is implemented as a quantum circuit.

[0144] Let's calculate the number of qubits required for the following quantum circuit: Extended Oracle The maximum number of qubits required for implementation is k+1+n+m+(m-2), where m = [log2(n+1)]. As a proof of this, the required qubits according to the above process are k+1+n+m. In addition, the C used in the indicator m The NOT gate requires m - 2 qubits, which is why the above result was derived.

[0145]

[0146] Quantum circuit design for error correction of binary linear codes

[0147] Let us discuss the case where the received vector contains more than d' errors, which exceeds the error-correction capability. Assume that the code C is a perfect code. In that case, all vectors are contained in a sphere of radius d' centered on exactly one codeword, and the received vector is always decoded into some codeword. However, the codeword may be incorrect. However, if the code C is not a perfect code, the received vector may not be contained in the sphere of radius d'. In this case, the received vector cannot be decoded into a particular codeword, and therefore such a received vector is undecodable. For example, consider the code c = (00000, 01111). Since d(C) = 4 and d' = 1, one error can be corrected. However, if the vector 10011 is received, no codeword in C can determine the original message, since the Hamming distance from the vector 10011 is three.

[0148] For example, let C2 be a binary [5,2,3]-sign with the following generating matrix G.

[0149]

[0150] It is commonly known that the code C2 is not a perfect code. C2 has four codewords, and a sphere of radius 1 centered on each codeword is In the following [Table 1], there are five vectors. This is shown in the following [Table 1].

[0151] [Table 1]

[0152]

[0153] Only 24 vectors are included in any sphere. Therefore, 8 vectors remain that are not included in any sphere. In the following [Table 2], the distances between these vectors and each codeword are calculated.

[0154]

[0155] [Table 2]

[0156]

[0157] For example, if the received vector is 10011, the vector 10011 cannot be decoded because there is no way to find out which original codeword was transmitted. Therefore, the received vector x is an undecodable vector. Given a non-perfect [n, k, d]-linear code C and an undecodable received vector x, the following [auxiliary theorem] holds.

[0158]

[0159] [Auxiliary maintenance]

[0160]

[0161] Here, the quantum state |s> is , and the operator Wow U s is Grover's oracle and diffusion operator. As a proof, since the received vector x is not decodable, the search function becomes a zero function. This is an oracle This means that U is the identity matrix. Also, U sreflects the quantum state |s>. Therefore, it has no effect on |s>, and thus we obtain the above result.

[0162] The first step of Grover's algorithm is to find each q i By applying Hadamard gate, we obtain a uniform superposition |s> of all quantum states. If the received vector r is not decodable, then according to the [auxiliary theorem], the oracle does not work. Therefore, we need to verify that Grover's search algorithm works properly. To verify this, after Grover's algorithm completes, we start from q1 and then q k Check that the quantum state of the qubit has not changed.

[0163] Grover's diffusion operator U s is defined as follows:

[0164]

[0165] So from q1 to q k When the quantum state of the qubit up to |s>, the operator U s When a NOT gate is applied to qubit p, a NOT gate is applied to qubit p. By applying XH to qubit p, it is converted to quantum state |0>. When the received vector x is an undecodable vector, from q1 to q k The quantum state of the qubit up to is |s>. Therefore, Grover's diffusion operator U s After applying , the quantum state of qubit p becomes |1>. However, if x is decodable, the probability of observing |1> is extremely low. Therefore, the quantum state of qubit p detects the possibility of decodability.

[0166] Next, we propose Algorithm 2 for decoding the codewords of binary linear codes.

[0167] [Algorithm 2]

[0168]

[0169]

[0170] In Step 0 of [Algorithm 2], k + 1 qubits are prepared and |0 k >|-> Initialize to state. Here, |0 k > represents k qubits where all qubits are in the 0 state, and |-> is a specific quantum state that is phase-shifted after applying the Hadamard gate to the 1 state, which is important in the Grover algorithm. In Step 1, a uniform superposition |s> of all states of k qubits is obtained, which represents all possible messages that can be encoded using the [n, k, d]-linear code. Then, XH (bit-flip and Hadamard) operations are applied to the remaining qubits. This is the system preparation step for executing the Grover algorithm. In Step 2, [Algorithm 1] is applied to amplify the probability of error-correcting decoding using the received vector x and the generating matrix G. Step 3 and Step 4 determine the decodability of the received vector x. Step 4 uses an ancilla qubit p to indicate whether it is decodable. If p = |1>, r is not decodable, otherwise it is decodable. Finally, in Step 5, if the received vector x is decodable, the decoded message m is obtained, otherwise, the first k pieces of information of the received vector x and 'not decodable' are output.

[0171] FIG. 7 is a schematic diagram of a quantum circuit for decoding a linear code by applying Algorithm 2 using the constructed oracle operator of FIG. 6 according to one embodiment of the present application.

[0172] FIG. 8 is an example of a probability distribution of an original message through a received vector according to one embodiment of the present application.

[0173] FIG. 9 is a schematic diagram illustrating a process of decoding a received vector 0100100 using a [7,4,3] Hamming code according to one embodiment of the present application.

[0174] Referring to FIGS. 7 to 9 and [Algorithm 2] together, for example, let C be a binary Hamming [7,4,3] code with a generating matrix.

[0175]

[0176]

[0177] It is easy to verify that the second row of G, vector 0100101, is the codeword of C. Figure 8 shows an oracle for decoding the received vector 0100100 with one error in the last position. Algorithm 2 traces how the quantum state changes at each step. [7,4,3] Since the dimension of the Hamming code is 4, Step 2 of [Algorithm 2] is repeated three times.

[0178] Step 0. Prepare the states of 15 qubits:

[0179]

[0180] To obtain the quantum state |s>, we apply the Hadamard gate to qubits q1 to q4. Then,

[0181]

[0182] It becomes.

[0183]

[0184] Operator Gen (q:r) The quantum state obtained after applying is:

[0185]

[0186]

[0187] Operator Rot (r:a) The quantum state obtained after applying is:

[0188]

[0189]

[0190] Expressing this in terms of frequency basis states:

[0191]

[0192]

[0193] Now, if we apply QFT3+ from a1 to a3, we can express:

[0194]

[0195]

[0196] To reverse the sign of the original message, If you apply:

[0197]

[0198]

[0199] To restore the quantum state of an ancilla qubit, we apply the reverse process to obtain the final quantum state:

[0200]

[0201] The following [Table 3] shows the probability distribution of the original message through the received vector.

[0202] [Table 3]

[0203]

[0204] A linear code decoding device using a quantum circuit, a binary linear code decoding device, and a method for decoding a binary linear code may be implemented as an application or may be implemented in the form of program commands that can be executed by various computer components and recorded on a computer-readable recording medium. The computer-readable recording medium may include program commands, data files, data structures, etc., singly or in combination.

[0205] The program commands recorded on the above computer-readable recording medium are specially designed and configured for the present application, but may also be known and available to those skilled in the art of computer software.

[0206] Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, and flash memory.

[0207] Examples of program instructions include not only machine language codes, such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules to perform processing according to the present application, and vice versa.

[0208] Although the above has been described with reference to embodiments, it will be understood by those skilled in the art that various modifications and changes can be made to the present application without departing from the spirit and scope of the present application as set forth in the claims below.

[0209] This paper addresses the efficiency issues faced by conventional decoding methods based on classical computers and leverages the advantages of quantum computing to improve the decoding process for linear and binary linear codes. Specifically, it provides a method for efficiently decoding linear and binary linear codes using quantum computing technology, based on exhaustive search and Grover search algorithms. Compared to classical algorithms, this method improves computational efficiency during the decoding process, enabling faster and more accurate restoration of the original message.

Claims

1. A linear code or binary code decoding device using a quantum circuit, wherein the device: A quantum circuit comprising the following components for decoding a linear code running on a quantum computer: The above components are: A generator matrix operation module that receives a received message vector and converts the received message vector into a codeword; and A linear code or binary code decoding device using a quantum circuit, comprising a Hamming weight calculation module that estimates the presence and number of errors by calculating the Hamming distance d between the converted codeword and the input vector.

2. In paragraph 1, The above quantum circuit, A linear or binary code decoding device using a quantum circuit, further comprising a sign inversion module that identifies a codeword whose calculated Hamming distance d is less than or equal to a specific threshold d'=[(d-1) / 2] and inverts the sign of the quantum state of the codeword.

3. In paragraph 2, The above quantum circuit, Further comprising a quantum Fourier inverse transformer that restores the frequency basis state based on the Hamming distance calculated by the above Hamming weight calculation module to the original calculation basis state; A linear code or binary code decoding device using a quantum circuit, characterized in that the above modules are interconnected to form a quantum circuit that corrects errors in input code words and restores the original message vector.

4. In paragraph 3, The above generator matrix operation module, Hamming weight calculation module, sign inversion module and quantum Fourier inverse transformer are repeatedly performed a predetermined number of times by applying Grover's search algorithm, The above predetermined number of times A linear code or binary code decoding device using a quantum circuit, characterized in that it is an integer closest to .

5. In paragraph 4, The above quantum circuit, A search module that identifies the closest codeword from an input vector containing errors by applying Grover's search algorithm; and A linear code or binary code decoding device using a quantum circuit, further comprising a quantum entanglement recovery module that restores a quantum state and quantum entanglement that have been transformed or lost to their original state through the performance of the generator matrix operation module, the Hamming weight calculation module, the sign inversion module, the quantum Fourier inverse transformer, and the search module.

6. A method for decoding a binary linear code using a quantum circuit, The above method is an oracle operator for retrieving the original message m. including the steps of building an oracle operator is a binary linear code of length n and dimension k, and given a generating matrix G of a [n,k,d] code C with Hamming distance d and a receiving vector x, it is an operator that finds the original message m from the codeword C = mG such that d(mG,x) is less than or equal to d'=[(d-1) / 2], The above oracle operator The steps to build are: A step of receiving a quantum state of k qubits |ψ>|-> , a received vector x, [n, k, d] - a generating matrix G of a binary linear code C; As a step of initializing the message vector state of k constituting the initial quantum state |ψ>, the error vector state |r> of length n, and the additional m qubit states |->, when m = [log2n], k+1+n+m qubits are sequentially q1...q k , ancilla qubits p, r1...r n , and a1...a m Labeling up to, qi ← |ψ>'s ith qubit, 1≤i≤k; ri ← |r> the ith qubit of the quantum state, 1≤i≤n; p ← |->; a i Step of assigning ← |+>, 1≤i≤m; Each qubit state q i , r i , a i For , the operation Gen is used to convert the codeword state including the error by applying the generator matrix G. (q:r) Steps to perform; Rot, which calculates the Hamming distance d between the transformed codeword state and the error vector x state. (r:a) Steps to perform; A method for decoding binary linear codes using a quantum computer, comprising: a step of inverting a sign of a corresponding codeword state when the Hamming distance d(mG,x) is less than or equal to a specific threshold d'=[(d-1) / 2]; 7. In paragraph 6, Constructed oracle operator It further includes a step of decoding by correcting an erroneous binary linear code based on Grover's algorithm using The above decoding steps are: A step of preparing k qubits q and ancilla qubit p; Let the quantum state of k qubits q |ψ> be |0 k Step to initialize with >|->; Applying Hadamard gate H to qubits q1 to qk to obtain a uniform superposition of all quantum states |ψ> = |s>, and applying XH to qubit p to transform it into quantum state p = |0>; and Constructed oracle operator By using , and the Gruber diffusion operator U, which inverts the probability amplitude in the vector space of the search target and diffuses it to |ψ>. s cast A method for decoding binary linear codes using a quantum computer, comprising: a step of repeatedly applying a number of times; 8. In paragraph 7, It further includes a step of checking the possibility of decoding using the ancilla qubit p = |0>, The step of checking the above decoding possibility is: If p = |0>, then the received vector x is decodable, and a step of measuring the resulting quantum state of the qubit and returning the measured vector m as a decoded message; and A method for decoding a binary linear code using a quantum computer, comprising: a step of outputting 'not decoding' when the received vector x is not decodable if p = |1>; 9. In paragraph 7, The above Grover's diffusion operator U s is calculated using the following formula, [formula] In the above formula, ⓧ represents tensor product, The above operation is, A step of applying Hadamard gate H to all k qubits; A step of applying NOT gate X to all k qubits; C, which flips the state of the target qubit only when all k qubits are |1> k Step of applying NOT gate; Step 2: Apply NOT gate to all k qubits again; A method for decoding binary linear codes using a quantum computer, comprising: a step of completing the operation by applying a Hadamard gate H to all k qubits again; wherein I is an identity operator.

10. A computer program stored in a computer-readable storage medium for performing a binary linear code decoding method using a quantum computer according to any one of claims 6 to 9.

Citation Information

Patent Citations

  • Computer-implemented methods for post-quantum protection of information and for post-quantum secure information matching and cryptographic systems to perform the computer-implemented methods

    EP4270862A1

  • KR20230038966A