{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,5,28]],"date-time":"2025-05-28T04:17:04Z","timestamp":1748405824126,"version":"3.41.0"},"publisher-location":"Singapore","reference-count":30,"publisher":"Springer Nature Singapore","isbn-type":[{"type":"print","value":"9789819789429"},{"type":"electronic","value":"9789819789436"}],"license":[{"start":{"date-parts":[[2024,10,28]],"date-time":"2024-10-28T00:00:00Z","timestamp":1730073600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2024,10,28]],"date-time":"2024-10-28T00:00:00Z","timestamp":1730073600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2025]]},"abstract":"<jats:title>Abstract<\/jats:title>\n          <jats:p>We propose a quantum programming paradigm where all data are familiar classical data, and the only non-classical element is a random number generator that can return results with negative probability. Currently, the vast majority of quantum programming languages instead work with quantum data types made up of qubits. The description of their behavior relies on heavy linear algebra and many interdependent concepts and intuitions from quantum physics, which takes dedicated study to understand. We demonstrate that the proposed view of quantum programming explains its central concepts and constraints in more accessible, computationally relevant terms. This is achieved by systematically reducing everything to the existence of that negative-probability random generator, avoiding mention of advanced physics. This makes quantum programming more accessible to programmers without a deep background in physics or linear algebra. The bulk of this paper is written with such an audience in mind. As a working vehicle, we lay out a simple quantum programming language under this paradigm, showing that not only can it express all quantum algorithms, it also naturally captures the semantics of measurement without ever mentioning qubits or collapse.<\/jats:p>","DOI":"10.1007\/978-981-97-8943-6_8","type":"book-chapter","created":{"date-parts":[[2024,10,28]],"date-time":"2024-10-28T08:45:29Z","timestamp":1730105129000},"page":"155-175","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Quantum Programming Without the Quantum Physics"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-2939-8337","authenticated-orcid":false,"given":"Jun","family":"Inoue","sequence":"first","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2024,10,28]]},"reference":[{"key":"8_CR1","unstructured":"Aaronson, S.: Is Quantum Mechanics an Island in Theoryspace? (2004). http:\/\/arxiv.org\/abs\/quant-ph\/0401062"},{"key":"8_CR2","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9780511979309","volume-title":"Quantum Computing Since Democritus","author":"S Aaronson","year":"2013","unstructured":"Aaronson, S.: Quantum Computing Since Democritus, 1st edn. Cambridge University Press, Cambridge (2013)","edition":"1"},{"key":"8_CR3","unstructured":"Aaronson, S.: What Makes Quantum Computing So Hard to Explain? Quanta Magazine (2021). https:\/\/www.quantamagazine.org\/why-is-quantum-computing-so-hard-to-explain-20210608\/"},{"key":"8_CR4","doi-asserted-by":"publisher","unstructured":"Aharonov, D.: A Simple Proof that Toffoli and Hadamard are Quantum Universal (2003). https:\/\/doi.org\/10.48550\/arXiv.quant-ph\/0301040","DOI":"10.48550\/arXiv.quant-ph\/0301040"},{"key":"8_CR5","doi-asserted-by":"publisher","unstructured":"Altenkirch, T., Grattage, J.: A functional quantum programming language. In: 20th Annual IEEE Symposium on Logic in Computer Science (LICS\u2019 05), pp. 249\u2013258 (2005). https:\/\/doi.org\/10.1109\/LICS.2005.1","DOI":"10.1109\/LICS.2005.1"},{"key":"8_CR6","doi-asserted-by":"publisher","unstructured":"Bernstein, E., Vazirani, U.: Quantum complexity theory. In: Proceedings of the Twenty-Fifth Annual ACM Symposium on Theory of Computing, pp. 11\u201320. STOC \u201993, Association for Computing Machinery, New York, NY, USA (1993). https:\/\/doi.org\/10.1145\/167088.167097, https:\/\/doi.org\/10.1145\/167088.167097","DOI":"10.1145\/167088.167097"},{"key":"8_CR7","doi-asserted-by":"publisher","unstructured":"Bichsel, B., Baader, M., Gehr, T., Vechev, M.: Silq: a high-level quantum language with safe uncomputation and intuitive semantics. In: Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 286\u2013300. ACM, London UK (2020). https:\/\/doi.org\/10.1145\/3385412.3386007","DOI":"10.1145\/3385412.3386007"},{"key":"8_CR8","doi-asserted-by":"publisher","DOI":"10.1017\/9781316219317","volume-title":"Picturing Quantum Processes: A First Course in Quantum Theory and Diagrammatic Reasoning","author":"B Coecke","year":"2017","unstructured":"Coecke, B., Kissinger, A.: Picturing Quantum Processes: A First Course in Quantum Theory and Diagrammatic Reasoning, 1st edn. Cambridge University Press, Cambridge, United Kingdom New York, NY Melbourne, VIC Delhi Singapore (2017)","edition":"1"},{"issue":"6","key":"8_CR9","doi-asserted-by":"publisher","first-page":"467","DOI":"10.1007\/BF02650179","volume":"21","author":"RP Feynman","year":"1982","unstructured":"Feynman, R.P.: Simulating physics with computers. Int. J. Theor. Phys. 21(6), 467\u2013488 (1982). https:\/\/doi.org\/10.1007\/BF02650179","journal-title":"Int. J. Theor. Phys."},{"key":"8_CR10","doi-asserted-by":"publisher","DOI":"10.1016\/j.tcs.2022.06.010","volume":"953","author":"R Gl\u00fcck","year":"2023","unstructured":"Gl\u00fcck, R., Yokoyama, T.: Reversible computing from a programming language perspective. Theoret. Comput. Sci. 953, 113429 (2023). https:\/\/doi.org\/10.1016\/j.tcs.2022.06.010","journal-title":"Theoret. Comput. Sci."},{"key":"8_CR11","doi-asserted-by":"publisher","unstructured":"Green, A.S., Lumsdaine, P.L., Ross, N.J., Selinger, P., Valiron, B.: Quipper: a scalable quantum programming language. In: Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 333\u2013342. PLDI \u201913, Association for Computing Machinery, New York, NY, USA (2013). https:\/\/doi.org\/10.1145\/2491956.2462177","DOI":"10.1145\/2491956.2462177"},{"key":"8_CR12","doi-asserted-by":"publisher","unstructured":"Quantum Computing: An Applied Approach. Springer, Cham (2021). https:\/\/doi.org\/10.1007\/978-3-030-83274-2_15","DOI":"10.1007\/978-3-030-83274-2_15"},{"key":"8_CR13","doi-asserted-by":"publisher","unstructured":"Jacobs, J.: Paradoxes of probabilistic programming: and how to condition on events of measure zero with infinitesimal probabilities. Proc. ACM Program. Lang. 5(POPL), 58:1\u201358:26 (2021). https:\/\/doi.org\/10.1145\/3434339","DOI":"10.1145\/3434339"},{"key":"8_CR14","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/11527800_1","volume-title":"Unconventional Programming Paradigms","author":"P Jorrand","year":"2005","unstructured":"Jorrand, P., Lalire, M.: From quantum physics to programming languages: a process algebraic approach. In: Ban\u00e2tre, J.-P., Fradet, P., Giavitto, J.-L., Michel, O. (eds.) UPP 2004. LNCS, vol. 3566, pp. 1\u201316. Springer, Heidelberg (2005). https:\/\/doi.org\/10.1007\/11527800_1"},{"key":"8_CR15","doi-asserted-by":"publisher","unstructured":"Knill, E.: Conventions for quantum pseudocode. Tech. Rep. LA-UR-96-2724, Los Alamos National Lab. (LANL), Los Alamos, NM (United States) (1996). https:\/\/doi.org\/10.2172\/366453","DOI":"10.2172\/366453"},{"key":"8_CR16","doi-asserted-by":"publisher","first-page":"85","DOI":"10.1016\/j.entcs.2008.04.020","volume":"210","author":"M Lampis","year":"2008","unstructured":"Lampis, M., Ginis, K.G., Papakyriakou, M.A., Papaspyrou, N.S.: Quantum data and control made easier. Electron. Notes Theor. Comput. Sci. 210, 85\u2013105 (2008). https:\/\/doi.org\/10.1016\/j.entcs.2008.04.020","journal-title":"Electron. Notes Theor. Comput. Sci."},{"key":"8_CR17","unstructured":"Mu, S.C., Bird, R.: Functional Quantum Programming (2001). https:\/\/www.cs.ox.ac.uk\/people\/richard.bird\/online\/MuBird2001Functional.pdf"},{"key":"8_CR18","doi-asserted-by":"crossref","unstructured":"Nielsen, M.A., Chuang, I.L.: Quantum Computation and Quantum Information, anniversary edn. 10th, Anniversary Cambridge University Press, Cambridge, New York (2011)","DOI":"10.1017\/CBO9780511976667"},{"key":"8_CR19","unstructured":"\u00d6mer, B.: Structured Quantum Programming. Ph.D. thesis, Vienna University of Technology, Vienna (2003)"},{"key":"8_CR20","doi-asserted-by":"publisher","unstructured":"Paradis, A., Bichsel, B., Steffen, S., Vechev, M.: Unqomp: synthesizing uncomputation in Quantum circuits. In: Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation, pp. 222\u2013236. PLDI 2021, Association for Computing Machinery, New York, NY, USA (2021). https:\/\/doi.org\/10.1145\/3453483.3454040","DOI":"10.1145\/3453483.3454040"},{"key":"8_CR21","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"562","DOI":"10.1007\/978-3-030-45231-5_29","volume-title":"Unconventional Programming Paradigms","author":"R P\u00e9choux","year":"2020","unstructured":"P\u00e9choux, R., Perdrix, S., Rennela, M., Zamdzhiev, V.: Quantum programming with inductive datatypes: causality and affine type theory. In: UPP 2004. LNCS, vol. 3566, pp. 562\u2013581. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-45231-5_29"},{"key":"8_CR22","doi-asserted-by":"publisher","first-page":"299","DOI":"10.4204\/EPTCS.287.17","volume":"287","author":"R Rand","year":"2019","unstructured":"Rand, R., Paykin, J., Lee, D.H., Zdancewic, S.: ReQWIRE: reasoning about reversible quantum circuits. Electron. Proc. Theor. Comput. Sci. 287, 299\u2013312 (2019). https:\/\/doi.org\/10.4204\/EPTCS.287.17","journal-title":"Electron. Proc. Theor. Comput. Sci."},{"key":"8_CR23","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"80","DOI":"10.1007\/10722010_6","volume-title":"Mathematics of Program Construction","author":"JW Sanders","year":"2000","unstructured":"Sanders, J.W., Zuliani, P.: Quantum programming. In: Backhouse, R., Oliveira, J.N. (eds.) MPC 2000. LNCS, vol. 1837, pp. 80\u201399. Springer, Heidelberg (2000). https:\/\/doi.org\/10.1007\/10722010_6"},{"key":"8_CR24","doi-asserted-by":"publisher","unstructured":"Selinger, P., Valiron, B.: Quantum lambda calculus. In: Mackie, I., Gay, S. (eds.) Semantic Techniques in Quantum Computation, pp. 135\u2013172. Cambridge University Press, Cambridge (2009).https:\/\/doi.org\/10.1017\/CBO9781139193313.005","DOI":"10.1017\/CBO9781139193313.005"},{"key":"8_CR25","doi-asserted-by":"publisher","unstructured":"Svore, K.M., Geller, A., Troyer, M., Azariah, J., Granade, C., Heim, B., Kliuchnikov, V., Mykhailova, M., Paz, A., Roetteler, M.: Q#: enabling scalable quantum computing and development with a high-level domain-specific language. In: Proceedings of the Real World Domain Specific Languages Workshop 2018, pp. 1\u201310 (2018). https:\/\/doi.org\/10.1145\/3183895.3183901","DOI":"10.1145\/3183895.3183901"},{"key":"8_CR26","doi-asserted-by":"publisher","unstructured":"van de Meent, J.W., Paige, B., Yang, H., Wood, F.: An Introduction to Probabilistic Programming (2021). https:\/\/doi.org\/10.48550\/arXiv.1809.10756","DOI":"10.48550\/arXiv.1809.10756"},{"key":"8_CR27","doi-asserted-by":"crossref","unstructured":"van Tonder, A.: A Lambda Calculus for Quantum Computation (2003)","DOI":"10.1137\/S0097539703432165"},{"key":"8_CR28","doi-asserted-by":"publisher","first-page":"453","DOI":"10.1017\/S0960129506005287","volume":"16","author":"J Vizzotto","year":"2006","unstructured":"Vizzotto, J., Altenkirch, T., Sabry, A.: Structuring quantum effects: superoperators as arrows. Math. Struct. Comput. Sci. 16, 453\u2013468 (2006). https:\/\/doi.org\/10.1017\/S0960129506005287","journal-title":"Math. Struct. Comput. Sci."},{"key":"8_CR29","doi-asserted-by":"publisher","unstructured":"Wecker, D., Svore, K.M.: LIQUi$$|>$$: A Software Design Architecture and Domain-Specific Language for Quantum Computing (2014). https:\/\/doi.org\/10.48550\/arXiv.1402.4467","DOI":"10.48550\/arXiv.1402.4467"},{"key":"8_CR30","doi-asserted-by":"publisher","unstructured":"Ying, M., Feng, Y., Duan, R., Ji, Z.: An algebra of quantum processes. ACM Trans. Comput. Log. 10(3), 19:1\u201319:36 (2009). https:\/\/doi.org\/10.1145\/1507244.1507249","DOI":"10.1145\/1507244.1507249"}],"container-title":["Lecture Notes in Computer Science","Programming Languages and Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-981-97-8943-6_8","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,5,27]],"date-time":"2025-05-27T16:52:57Z","timestamp":1748364777000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-981-97-8943-6_8"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,10,28]]},"ISBN":["9789819789429","9789819789436"],"references-count":30,"URL":"https:\/\/doi.org\/10.1007\/978-981-97-8943-6_8","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2024,10,28]]},"assertion":[{"value":"28 October 2024","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"The author has no competing interests to declare that are relevant to the content of this article.","order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Disclosure of Interests"}},{"value":"APLAS","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Asian Symposium on Programming Languages and Systems","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Kyoto","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Japan","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2024","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"23 October 2024","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"25 October 2024","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"22","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"aplas2024","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/conf.researchr.org\/home\/aplas-2024\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}