Computer Scientist’s and Programmer’s View on Quantum Algorithms: Mapping Functions’ APIs and Inputs to Oracles

Conference paper
Part of the Lecture Notes in Networks and Systems book series (LNNS, volume 283)


Quantum Computing (QC) is a promising approach which is expected to boost the development of new services and applications. Specific addressable problems can be tackled through acceleration in computational time and advances with respect to the complexity of the problems, for which QC algorithms can support the solution search. However, QC currently remains a domain that is strongly dominated by a physics’ perspective. Indeed, in order to bring QC to industrial grade applications we need to consider multiple perspectives, especially the one of software engineering and software application/service programming. Following this line of thought, the current paper presents our computer scientist’s view on the aspect of black-box oracles, which are a key construct for the majority of currently available QC algorithms. Thereby, we observe the need for the input of API functions from the traditional world of software engineering and (web-)services to be mapped to the above mentioned black-box oracles. Hence, there is a clear requirement for automatically generating oracles for specific types of problems/algorithms based on the concrete input to the belonging APIs. In this paper, we discuss the above aspects and illustrate them on two QC algorithms, namely Deutsch-Jozsa and the Grover’s algorithm.


Quantum computing Grover’s algorithm Oracle API 


  1. 1.
    QOSF Learning Resources on Quantum Computing: Accessed 20 Oct 2020
  2. 2.
    Haney, B., Quantum Patents (March 16, 2020). 27 B.U. J. Sci. Tech. L. (2020). (Forthcoming). Available at SSRN:
  3. 3.
    IBM Quantum Roadmap: Accessed 20 Oct 2020
  4. 4.
    Manin, Yu.I.: Computable and Noncomputable Sov. Radio (1980)Google Scholar
  5. 5.
    Benioff, P.: The computer as a physical system: a microscopic quantum mechanical hamiltonian model of computers as represented by turing machines. J. Stat. Phys. 22(5), 563–591 (1980). Scholar
  6. 6.
    Feynman, R.P.: Simulating physics with computers. Int. J. Theore. Phys. 21, Nos. 6/7 (1982)Google Scholar
  7. 7.
    Benioff, P.: Quantum mechanical models of turing machines that dissipate no energy. Phys. Rev. Lett. 48(23), 1581–1585 (1982)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Deutsch, D., Jozsa, R.: Rapid solutions of problems by quantum computation. Proc. R. Soc. London, 439, 53–558 (1992).
  9. 9.
    Cleve, R., Ekert, A., Macchiavello, C., Mosca, M.: Quantum algorithms revisited. Proc. R. Soc. London 454(1969), 339–354 (1998). Scholar
  10. 10.
    Grover, L.K.: A fast quantum mechanical algorithm for database search. In: Proceedings, 28th Annual ACM Symposium on the Theory of Computing, p. 212, May 1996Google Scholar
  11. 11.
    Chuang, I.L., Gershenfeld, N., Kubinec, M.: Experimental implementation of fast quantum searching. Phys. Rev. Lett. 80 (15), 3408–3411 (1998).
  12. 12.
    O’Brien, J.L., Pryde, G.J., White, A.G., Ralph, T.C., Branning, D.: Demonstration of an all-optical quantum controlled-NOT gate. Nature 426(6964), 264–267 (2003). Scholar
  13. 13.
    Gulde, S., et al.: Implementation of the Deutsch-Jozsa algorithm on an ion-trap quantum computer. Nature 421(6918), 48–50 (2003). Scholar
  14. 14.
    Clarke, J., Wilhelm, F.K.: Superconducting quantum bits. Nature. 453(7198), 1031–1042 (2008).
  15. 15.
    Last, T., Quantum Inspire: QuTech’s platform for co-development and collaboration in quantum computing. In: Proceedings SPIE 11324, Novel Patterning Technologies for Semiconductors, MEMS/NEMS and MOEMS 2020, 113240J (2020).
  16. 16.
    IBM Q-Experience: 15 July 2020
  17. 17.
    Rigetti: 15 July 2020
  18. 18.
    D-Wave: Accessed 15 July 2020
  19. 19.
    Bristol QCloud, Available: Accessed 15 Sept 2020
  20. 20.
    Quantum Playground: Accessed 15 Sept 2020
  21. 21.
    Amazon Braket: Accessed 15 Sept 2020
  22. 22.
    List of open source QC Software: Accessed 15 Sept 2020
  23. 23.
    Jaques, S., Naehrig, M., Roetteler, M., Virdia, F.: Implementing grover oracles for quantum key search on AES and LowMC. In: Canteaut, A., Ishai, Y. (eds.) EUROCRYPT 2020. LNCS, vol. 12106, pp. 280–310. Springer, Cham (2020). Scholar
  24. 24.
    Gilliam, A., Woerner, S., Gonciulea, C.: Grover Adaptive Search for Constrained Polynomial Binary Optimization, arXiv e-prints (2019)Google Scholar
  25. 25.
    Baritompa, W., Bulger, D., Wood, G.: Grover’s quantum algorithm applied to global optimization. SIAM J. Optim. 15, 1170–1184 (2005). Scholar
  26. 26.
    Borujeni, S.E., Harikrishnakumar, R., Nannapaneni, S.: Quantum Grover search-based optimization for innovative material discovery. In: 2019 IEEE International Conference on Big Data (Big Data), Los Angeles, CA, USA, pp. 4486–4489 (2019).
  27. 27.
    Gilliam, A., Pistoia, M., Gonciulea, C.: Optimizing Quantum Search Using a Generalized Version of Grover’s Algorithm, arXiv e-prints (2020)Google Scholar
  28. 28.
    Huang, H., Wu, D., Fan, D., Zhu, X.: Superconducting Quantum Computing: A Review (2020). arXiv:2006.10433
  29. 29.
    Venturelli, D., Kondratyev, A.: Reverse Quantum Annealing Approach to Portfolio Optimization Problems, Papers, (2018).
  30. 30.
    Kieu, T.D.: The travelling salesman problem and adiabatic quantum computation: an algorithm. Quantum Inf. Process. 18(3), 1–19 (2019). Scholar
  31. 31.
    Elfving, V.E.: How will quantum computers provide an industrially relevant computational advantage in quantum chemistry? arXiv e-prints (2020)Google Scholar
  32. 32.
    Boneh, D., Dagdelen, Ö., Fischlin, M., Lehmann, A., Schaffner, C., Zhandry, M.: Random oracles in a quantum world. In: Lee, D.H., Wang, X. (eds.) ASIACRYPT 2011. LNCS, vol. 7073, pp. 41–69. Springer, Heidelberg (2011). Scholar
  33. 33.
    Deutsch, D.: Quantum theory, the church–turing principle and the universal quantum computer. In: Proc. R. Soc. London. A. Math. Phys. Sci. 400(1818), 97–117 (1985)Google Scholar
  34. 34.
    Richard, J.: Characterizing classes of functions computable by quantum parallelism. Proc. R. Soc. London. Ser. Math. Phys. Sci. 435(1895), 563–574 (1991)Google Scholar
  35. 35.
    Kiss, A., Varga, K.: Comparing two quantum oracles using the Deutsch-Jozsa algorithm. Ann. Univ. Sci. Budapest., Sect. Comp. 50 199–217 (2020)Google Scholar
  36. 36.
    Salman, T., Baram, Y.: Quantum set intersection and its applicationto associative memory. J. Mach. Learn. Res. 13, 3177–3206 (2012)MathSciNetzbMATHGoogle Scholar
  37. 37.
    Nagata, K., Nakamura, T.: The Deutsch-Jozsa algorithm can be used for quantum key distribution. Open Access Libr. J. 2, e1798 (2015)Google Scholar
  38. 38.
    Alexandru, C.-M., Bridgett-Tomkinson, E., Linden, N., MacManus, J., Montanaro, A., Morris, H. Quantum speedups of some general-purpose numerical optimisation algorithms. Quant. Sci. Technol. 5(4) (2020).
  39. 39.
    Mosca, M.: Quantum Algorithms, arXiv:0808.0369, submitted: Mon, 4 August 2008.
  40. 40.
    de Jonge, G., Sprij, A.: 10. In: 36 zieke kinderen, pp. 39–42. Bohn Stafleu van Loghum, Houten (2012). Scholar
  41. 41.
  42. 42.
    Figgatt, C., Maslov, D., Landsman, K.A., et al.: Complete 3-Qubit grover search on a programmable quantum computer. Nat Commun 8, 1918 (2017). Scholar
  43. 43.
    Strömberg, P., Blomkvist Karlsson, V.: 4-qubit Grover’s algorithm implemented for the ibmqx5 architecture (Dissertation) (2018).
  44. 44.
    Mandviwalla, A., Ohshiro, K., Ji, B.: Implementing Grover’s algorithm on the IBM quantum computers. In: 2018 IEEE International Conference on Big Data (Big Data), Seattle, WA, USA, pp. 2531–2537 (2018).
  45. 45.
    Wang, P., Liu, G., Liu, L.: A generic variable inputs quantum algorithm for 3-sat problem. In: 2020 IEEE International Conference on Advances in Electrical Engineering and Computer Applications (AEECA), Dalian, China, pp. 308–312 (2020).
  46. 46.
    Gilliam, A., Pistoia, M., Gonciulea, C.: Canonical Construction of Quantum Oracles, arXiv:2006.10656 (2020)
  47. 47.
    Dhawan, S., Perkowski, M., comparison of influence of two data-encoding methods for grover algorithm on quantum costs. In: 41st IEEE International Symposium on Multiple-Valued Logic. Tuusula 2011, 176–181 (2011). Scholar
  48. 48.
    Tsai, E., Perkowski, M.: A Quantum Algorithm for Automata Encoding.
  49. 49.
    Gheorghe-Pop, I.D., Tcholtchev, N., Ritter, T., Hauswirth, M.: Quantum devops: towards reliable and applicable NISQ quantum computing (forthcoming). In:12 IEEE GLOBECOM 2020Google Scholar
  50. 50.
    Bertels, K., Almudever, C.G., Hogaboam, J.W., Ashraf, I., Guerreschi, G. G., Khammassi, N.: (2018–05–24). cQASM v1.0: Towards a Common Quantum Assembly Language. arXiv:1805.09607v1 (2010)

Copyright information

© The Author(s), under exclusive license to Springer Nature Switzerland AG 2022

Authors and Affiliations

  1. 1.Fraunhofer Institute for Open Communication Systems (FOKUS) Kaiserin-Augusta-Allee 31BerlinGermany
  2. 2.Technische Universität BerlinBerlinGermany

Personalised recommendations