{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,28]],"date-time":"2025-03-28T01:02:14Z","timestamp":1743123734435,"version":"3.40.3"},"publisher-location":"Cham","reference-count":33,"publisher":"Springer Nature Switzerland","isbn-type":[{"type":"print","value":"9783031620751"},{"type":"electronic","value":"9783031620768"}],"license":[{"start":{"date-parts":[[2024,1,1]],"date-time":"2024-01-01T00:00:00Z","timestamp":1704067200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2024,1,1]],"date-time":"2024-01-01T00:00:00Z","timestamp":1704067200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2024]]},"DOI":"10.1007\/978-3-031-62076-8_9","type":"book-chapter","created":{"date-parts":[[2024,5,28]],"date-time":"2024-05-28T09:02:35Z","timestamp":1716886955000},"page":"124-141","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Jeopardy: An Invertible Functional Programming Language"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-1619-5944","authenticated-orcid":false,"given":"Joachim Tilsted","family":"Kristensen","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7672-799X","authenticated-orcid":false,"given":"Robin","family":"Kaarsgaard","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0922-3609","authenticated-orcid":false,"given":"Michael Kirkedal","family":"Thomsen","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2024,5,29]]},"reference":[{"issue":"2\u20133","key":"9_CR1","doi-asserted-by":"publisher","first-page":"193","DOI":"10.1016\/S0167-6423(02)00023-0","volume":"43","author":"S Abramov","year":"2002","unstructured":"Abramov, S., Gl\u00fcck, R.: The universal resolving algorithm and its correctness: inverse computation in a functional language. Sci. Comput. Program. 43(2\u20133), 193\u2013229 (2002)","journal-title":"Sci. Comput. Program."},{"issue":"6","key":"9_CR2","doi-asserted-by":"publisher","first-page":"525","DOI":"10.1147\/rd.176.0525","volume":"17","author":"CH Bennett","year":"1973","unstructured":"Bennett, C.H.: Logical reversibility of computation. IBM J. Res. Dev. 17(6), 525\u2013532 (1973)","journal-title":"IBM J. Res. Dev."},{"key":"9_CR3","doi-asserted-by":"crossref","unstructured":"Carette, J., Heunen, C., Kaarsgaard, R., Sabry, A.: With a few square roots, quantum computing is as easy as Pi. Proc. ACM Program. Lang. 8(POPL), 546\u2013574 (2024)","DOI":"10.1145\/3632861"},{"key":"9_CR4","doi-asserted-by":"publisher","first-page":"54","DOI":"10.1007\/BFb0014657","volume-title":"Program Inversion","author":"EW Dijkstra","year":"1979","unstructured":"Dijkstra, E.W.: Program Inversion, pp. 54\u201357. Springer, Heidelberg (1979). https:\/\/doi.org\/10.1007\/BFb0014657"},{"key":"9_CR5","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/3-540-11980-9_13","volume-title":"RIMS Symposia on Software Science and Engineering","author":"Y Futamura","year":"1983","unstructured":"Futamura, Y.: Partial computation of programs. In: Goto, E., Furukawa, K., Nakajima, R., Nakata, I., Yonezawa, A. (eds.) RIMS Symposia on Software Science and Engineering. LNCS, vol. 147, pp. 1\u201335. Springer, Heidelberg (1983). https:\/\/doi.org\/10.1007\/3-540-11980-9_13"},{"key":"9_CR6","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"370","DOI":"10.1007\/978-3-642-54804-8_26","volume-title":"Fundamental Approaches to Software Engineering","author":"E Giachino","year":"2014","unstructured":"Giachino, E., Lanese, I., Mezzina, C.A.: Causal-consistent reversible debugging. In: Gnesi, S., Rensink, A. (eds.) FASE 2014. LNCS, vol. 8411, pp. 370\u2013384. Springer, Heidelberg (2014). https:\/\/doi.org\/10.1007\/978-3-642-54804-8_26"},{"issue":"1","key":"9_CR7","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1016\/0304-3975(87)90045-4","volume":"50","author":"JY Girard","year":"1987","unstructured":"Girard, J.Y.: Linear logic. Theor. Comput. Sci. 50(1), 1\u2013101 (1987)","journal-title":"Theor. Comput. Sci."},{"key":"9_CR8","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. Theor. Comput. Sci. 953, 113429 (2023)","journal-title":"Theor. Comput. Sci."},{"key":"9_CR9","doi-asserted-by":"crossref","unstructured":"Heunen, C., Kaarsgaard, R.: Bennett and Stinespring, together at last. In: Proceedings 18th International Conference on Quantum Physics and Logic (QPL 2021). Electronic Proceedings in Theoretical Computer Science, vol.\u00a0343, pp. 102\u2013118. OPA (2021)","DOI":"10.4204\/EPTCS.343.5"},{"key":"9_CR10","doi-asserted-by":"crossref","unstructured":"Heunen, C., Kaarsgaard, R.: Quantum information effects. Proc. ACM Program. Lang. 6(POPL) (2022)","DOI":"10.1145\/3498663"},{"key":"9_CR11","doi-asserted-by":"crossref","unstructured":"Heunen, C., Kaarsgaard, R., Karvonen, M.: Reversible effects as inverse arrows. In: Mathematical Foundations of Programming Semantics XXXIV, Proceedings. Electronic Notes in Theoretical Computer Science, vol.\u00a0341, pp. 179\u2013199. Elsevier (2018)","DOI":"10.1016\/j.entcs.2018.11.009"},{"issue":"5","key":"9_CR12","doi-asserted-by":"publisher","first-page":"41","DOI":"10.1109\/TIT.1959.1057537","volume":"5","author":"DA Huffman","year":"1959","unstructured":"Huffman, D.A.: Canonical forms for information-lossless finite-state logical machines. IRE Trans. Inf. Theory 5(5), 41\u201359 (1959)","journal-title":"IRE Trans. Inf. Theory"},{"key":"9_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"304","DOI":"10.1007\/978-3-319-99498-7_21","volume-title":"Reversible Computation","author":"PAH Jacobsen","year":"2018","unstructured":"Jacobsen, P.A.H., Kaarsgaard, R., Thomsen, M.K.: $$\\sf CoreFun$$: a typed functional reversible core language. In: Kari, J., Ulidowski, I. (eds.) RC 2018. LNCS, vol. 11106, pp. 304\u2013321. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-99498-7_21"},{"key":"9_CR14","unstructured":"James, R.P., Sabry, A.: Theseus: a high level language for reversible computing (2014). Work in progress paper at RC 2014. www.cs.indiana.edu\/~sabry\/papers\/theseus.pdf"},{"key":"9_CR15","unstructured":"Kristensen, J.T., Kaarsgaard, R., Thomsen, M.K.: Branching execution symmetry in jeopardy by available implicit arguments analysis. In: Norwegian Informatics Conference, NIK, vol.\u00a01. 34th Norwegian ICT Conference for Research and Education, NIKT 2022 (2022, to appear)"},{"key":"9_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"73","DOI":"10.1007\/978-3-031-38100-3_6","volume-title":"Reversible Computation","author":"JT Kristensen","year":"2023","unstructured":"Kristensen, J.T., Kaarsgaard, R., Thomsen, M.K.: Tail recursion transformation for invertible functions. In: Kutrib, M., Meyer, U. (eds.) RC 2023. LNCS, vol. 13960, pp. 73\u201388. Springer, Cham (2023). https:\/\/doi.org\/10.1007\/978-3-031-38100-3_6"},{"issue":"3","key":"9_CR17","doi-asserted-by":"publisher","first-page":"261","DOI":"10.1147\/rd.53.0183","volume":"5","author":"R Landauer","year":"1961","unstructured":"Landauer, R.: Irreversibility and heat generation in the computing process. IBM J. Res. Dev. 5(3), 261\u2013269 (1961)","journal-title":"IBM J. Res. Dev."},{"key":"9_CR18","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"247","DOI":"10.1007\/978-3-319-90686-7_16","volume-title":"Functional and Logic Programming","author":"I Lanese","year":"2018","unstructured":"Lanese, I., Nishida, N., Palacios, A., Vidal, G.: CauDEr: a causal-consistent reversible debugger for erlang. In: Gallagher, J.P., Sulzmann, M. (eds.) FLOPS 2018. LNCS, vol. 10818, pp. 247\u2013263. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-90686-7_16"},{"key":"9_CR19","doi-asserted-by":"crossref","unstructured":"Laursen, J.S., Schultz, U.P., Ellekilde, L.P.: Automatic error recovery in robot assembly operations using reverse execution. In: 2015 IEEE\/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 1785\u20131792. IEEE (2015)","DOI":"10.1109\/IROS.2015.7353609"},{"key":"9_CR20","doi-asserted-by":"crossref","unstructured":"Lee, C.S., Jones, N.D., Ben-Amram, A.M.: The size-change principle for program termination. In: Symposium on Principles of Programming Languages, POPL 2001, pp. 81\u201392. ACM (2001)","DOI":"10.1145\/373243.360210"},{"key":"9_CR21","unstructured":"Lutz, C., Derby, H.: Janus: a time-reversible language. A letter to R. Landauer (1986). http:\/\/tetsuo.jp\/ref\/janus.pdf"},{"key":"9_CR22","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796823000126","volume":"34","author":"K Matsuda","year":"2024","unstructured":"Matsuda, K., Wang, M.: SPARCL: a language for partially invertible computation. J. Funct. Program. 34, e2 (2024). https:\/\/doi.org\/10.1017\/S0956796823000126","journal-title":"J. Funct. Program."},{"key":"9_CR23","doi-asserted-by":"crossref","unstructured":"McCarthy, J.: The inversion of functions defined by turing machines. In: Shannon, C.E., McCarthy, J. (eds.) Automata Studies. Princeton University Press (1956)","DOI":"10.1515\/9781400882618-009"},{"key":"9_CR24","volume-title":"Principles of Program Analysis","author":"F Nielson","year":"2015","unstructured":"Nielson, F., Nielson, H.R., Hankin, C.: Principles of Program Analysis. Springer, Heidelberg (2015)"},{"key":"9_CR25","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"95","DOI":"10.1007\/978-3-319-20860-2_6","volume-title":"Reversible Computation","author":"M Schordan","year":"2015","unstructured":"Schordan, M., Jefferson, D., Barnes, P., Oppelstrup, T., Quinlan, D.: Reverse code generation for parallel discrete event simulation. In: Krivine, J., Stefani, J.-B. (eds.) RC 2015. LNCS, vol. 9138, pp. 95\u2013110. Springer, Cham (2015). https:\/\/doi.org\/10.1007\/978-3-319-20860-2_6"},{"key":"9_CR26","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"187","DOI":"10.1007\/978-3-030-47361-7_9","volume-title":"Reversible Computation: Extending Horizons of Computing","author":"M Schordan","year":"2020","unstructured":"Schordan, M., Oppelstrup, T., Thomsen, M.K., Gl\u00fcck, R.: Reversible languages and incremental state saving in optimistic parallel discrete event simulation. In: Ulidowski, I., Lanese, I., Schultz, U.P., Ferreira, C. (eds.) RC 2020. LNCS, vol. 12070, pp. 187\u2013207. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-47361-7_9"},{"issue":"1","key":"9_CR27","doi-asserted-by":"publisher","first-page":"35","DOI":"10.1017\/S0263574710000664","volume":"29","author":"U Schultz","year":"2011","unstructured":"Schultz, U., Bordignon, M., Stoy, K.: Robust and reversible execution of self-reconfiguration sequences. Robotica 29(1), 35\u201357 (2011)","journal-title":"Robotica"},{"key":"9_CR28","doi-asserted-by":"crossref","unstructured":"Thomsen, M.K., Axelsen, H.B.: Interpretation and programming of the reversible functional language. In: Symposium on the Implementation and Application of Functional Programming Languages, IFL 2015, pp. 8:1\u20138:13. ACM (2016)","DOI":"10.1145\/2897336.2897345"},{"key":"9_CR29","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"200","DOI":"10.1007\/978-3-319-20860-2_13","volume-title":"Reversible Computation","author":"MK Thomsen","year":"2015","unstructured":"Thomsen, M.K., Kaarsgaard, R., Soeken, M.: Ricercar: a language for describing and\u00a0rewriting reversible circuits with ancillae and its permutation semantics. In: Krivine, J., Stefani, J.-B. (eds.) RC 2015. LNCS, vol. 9138, pp. 200\u2013215. Springer, Cham (2015). https:\/\/doi.org\/10.1007\/978-3-319-20860-2_13"},{"key":"9_CR30","doi-asserted-by":"crossref","unstructured":"Voichick, F., Li, L., Rand, R., Hicks, M.: Qunity: a unified language for quantum and classical computing. Proc. ACM Program. Lang. 7(POPL), 921\u2013951 (2023)","DOI":"10.1145\/3571225"},{"key":"9_CR31","doi-asserted-by":"crossref","unstructured":"Wadler, P.: Linear types can change the world! In: IFIP TC 2 Working Conference on Programming Concepts and Methods, pp. 347\u2013359. North Holland (1990)","DOI":"10.1145\/99370.99404"},{"key":"9_CR32","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"14","DOI":"10.1007\/978-3-642-29517-1_2","volume-title":"Reversible Computation","author":"T Yokoyama","year":"2012","unstructured":"Yokoyama, T., Axelsen, H.B., Gl\u00fcck, R.: Towards a reversible functional language. In: De Vos, A., Wille, R. (eds.) RC 2011. LNCS, vol. 7165, pp. 14\u201329. Springer, Heidelberg (2012). https:\/\/doi.org\/10.1007\/978-3-642-29517-1_2"},{"key":"9_CR33","doi-asserted-by":"crossref","unstructured":"Yokoyama, T., Gl\u00fcck, R.: A reversible programming language and its invertible self-interpreter. In: Partial Evaluation and Program Manipulation, PEPM 2007, pp. 144\u2013153. ACM (2007)","DOI":"10.1145\/1244381.1244404"}],"container-title":["Lecture Notes in Computer Science","Reversible Computation"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-62076-8_9","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,11,20]],"date-time":"2024-11-20T05:24:20Z","timestamp":1732080260000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-62076-8_9"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024]]},"ISBN":["9783031620751","9783031620768"],"references-count":33,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-62076-8_9","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2024]]},"assertion":[{"value":"29 May 2024","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"RC","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Reversible Computation","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Toru\u0144","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Poland","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":"4 July 2024","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"5 July 2024","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"16","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"rc2024","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/rc2024.mat.umk.pl\/index.php","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}