We present a generalized Deutsch-Jozsa (DJ) quantum algorithm that not only determines both the global type of an unknown Boolean function (constant or balanced) but also determines explicit output values of the function in a single oracle query. Unlike the original DJ algorithm, which identifies only whether a function is constant or balanced, our generalization retrieves actual function output values at the same time with using a Bell state as ancilla. This makes a richer function characterization with minimal queries to have practical quantum advantages, e.g. data classification, logistic regression, and quantum cryptography.
In this paper, we briefly review the basic concepts of quantum computation, entanglement, quantum cryptography and quantum fourier transform. Quantum algorithms like Deutsch Jozsa, Shor’s factorization and Grover’s data search are developed using fourier transform and quantum computation concepts to build quantum computers. Researchers are finding a way to build quantum computer that works more efficiently than classical computer. Among the standard well known algorithms in the field of quantum computation and communication we describe mathematically Deutsch Jozsa algorithm in detail for 2 and 3 qubits. Calculation of balanced and unbalanced states is shown in the mathematical description of the algorithm.
Boolean functions are important building blocks in cryptography for their wide application in both stream and block cipher systems. For cryptanalysis of such systems one tries to find out linear functions that are correlated to the Boolean functions used in the crypto system. Let
f be an
n-variable Boolean function and its Walsh spectra is denoted by
Wf(ω) at the point
ω∈{0,1}n. The Boolean function is available in the form of an oracle. We like to find an
ω such that
Wf(ω)=0 as this will provide one of the linear functions which are correlated to
f. We show that the quantum algorithm proposed by Deutsch and Jozsa (1992) solves the above mentioned problem in constant time. However, the best known classical algorithm to solve this problem requires exponential time in
n. We also analyse certain classes of cryptographically significant Boolean functions and highlight how the basic Deutsch-Jozsa algorithm performs on them.