{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,24]],"date-time":"2025-11-24T07:16:27Z","timestamp":1763968587951,"version":"3.44.0"},"publisher-location":"New York, NY, USA","reference-count":55,"publisher":"ACM","license":[{"start":{"date-parts":[[2023,8,29]],"date-time":"2023-08-29T00:00:00Z","timestamp":1693267200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"UCPH Data+","award":["High-Performance Land Change Assessment"],"award-info":[{"award-number":["High-Performance Land Change Assessment"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2023,8,29]]},"DOI":"10.1145\/3652561.3652575","type":"proceedings-article","created":{"date-parts":[[2024,6,19]],"date-time":"2024-06-19T18:19:52Z","timestamp":1718821192000},"page":"1-14","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Reverse-Mode AD of Multi-Reduce and Scan in Futhark"],"prefix":"10.1145","author":[{"ORCID":"https:\/\/orcid.org\/0009-0007-5705-4201","authenticated-orcid":false,"given":"Lotte Maria","family":"Bruun","sequence":"first","affiliation":[{"name":"Department of Computer Science (DIKU), University of Copenhagen, Denmark"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0009-5572-2047","authenticated-orcid":false,"given":"Ulrik Stuhr","family":"Larsen","sequence":"additional","affiliation":[{"name":"Department of Computer Science (DIKU), University of Copenhagen, Denmark"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7559-0939","authenticated-orcid":false,"given":"Nikolaj Hey","family":"Hinnerskov","sequence":"additional","affiliation":[{"name":"Department of Computer Science (DIKU), University of Copenhagen, Denmark"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-5421-6876","authenticated-orcid":false,"given":"Cosmin Eugen","family":"Oancea","sequence":"additional","affiliation":[{"name":"Department of Computer Science (DIKU), University of Copenhagen, Denmark"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2024,6,19]]},"reference":[{"key":"e_1_3_2_1_1_1","volume-title":"12th USENIX symposium on operating systems design and implementation (OSDI 16)","author":"Abadi Mart\u00edn","year":"2016","unstructured":"Mart\u00edn Abadi, Paul Barham, Jianmin Chen, Zhifeng Chen, Andy Davis, Jeffrey Dean, Matthieu Devin, Sanjay Ghemawat, Geoffrey Irving, Michael Isard, 2016. TensorFlow: A system for large-scale machine learning. In 12th USENIX symposium on operating systems design and implementation (OSDI 16). 265\u2013283."},{"key":"e_1_3_2_1_2_1","volume-title":"Proceedings of the European Congress on Computational Methods in Applied Sciences and Engineering (ECCOMAS 2004","author":"M.","year":"2004","unstructured":"M. Araya-Polo and Laurent Hasco\u00ebt. 2004. Data Flow Algorithms in the Tapenade Tool for Automatic Differentiation. In Proceedings of the European Congress on Computational Methods in Applied Sciences and Engineering (ECCOMAS 2004), P.\u00a0Neittaanm\u00e4ki, T.\u00a0Rossi, S.\u00a0Korotov, E.\u00a0O\u00f1ate, J.\u00a0P\u00e9riaux, and D.\u00a0Kn\u00f6rzer (Eds.). University of Jyv\u00e4skyl\u00e4, Jyv\u00e4skyl\u00e4, Finland. online at http:\/\/www.mit.jyu.fi\/eccomas2004\/proceedings\/pdf\/550.pdf."},{"key":"e_1_3_2_1_3_1","first-page":"1","article-title":"Automatic Differentiation in Machine Learning: A Survey","volume":"18","author":"Baydin At\u0131l\u0131m\u00a0G\u00fcnes","year":"2017","unstructured":"At\u0131l\u0131m\u00a0G\u00fcnes Baydin, Barak\u00a0A. Pearlmutter, Alexey\u00a0Andreyevich Radul, and Jeffrey\u00a0Mark Siskind. 2017. Automatic Differentiation in Machine Learning: A Survey. J. Mach. Learn. Res. 18, 1 (Jan. 2017), 5595\u20135637.","journal-title":"J. Mach. Learn. Res."},{"key":"e_1_3_2_1_4_1","unstructured":"Atilim\u00a0Gunes Baydin Barak\u00a0A. Pearlmutter and Jeffrey\u00a0Mark Siskind. 2015. DiffSharp: Automatic Differentiation Library. arxiv:1511.07727\u00a0[cs.MS]"},{"key":"e_1_3_2_1_5_1","doi-asserted-by":"publisher","unstructured":"Gilbert Bernstein Michael Mara Tzu-Mao Li Dougal Maclaurin and Jonathan Ragan-Kelley. 2020. Differentiating a Tensor Language. https:\/\/doi.org\/10.48550\/ARXIV.2008.11256","DOI":"10.48550\/ARXIV.2008.11256"},{"key":"e_1_3_2_1_6_1","first-page":"1526","article-title":"Scans as Primitive Parallel Operations. Computers","volume":"38","author":"Blelloch E.","year":"1989","unstructured":"Guy\u00a0E. Blelloch. 1989. Scans as Primitive Parallel Operations. Computers, IEEE Transactions 38, 11 (1989), 1526\u20131538.","journal-title":"IEEE Transactions"},{"key":"e_1_3_2_1_7_1","unstructured":"Guy\u00a0E. Blelloch. 1990. Prefix sums and their applications."},{"key":"e_1_3_2_1_8_1","unstructured":"James Bradbury Roy Frostig Peter Hawkins Matthew\u00a0James Johnson Chris Leary Dougal Maclaurin George Necula Adam Paszke Jake VanderPlas Skye Wanderman-Milne and Qiao Zhang. 2018. JAX: composable transformations of Python+NumPy programs. http:\/\/github.com\/google\/jax"},{"key":"e_1_3_2_1_9_1","volume-title":"Proc. 6th International Symposium on Symbolic and Numeric Algorithms for Scientific Comput.Mirton Publishing House, 119\u2013130","author":"Chicha Y.","year":"2004","unstructured":"Y. Chicha, M. Lloyd, C. Oancea, and S.\u00a0M. Watt. 2004. Parametric Polymorphism for Computer Algebra Software Components. In Proc. 6th International Symposium on Symbolic and Numeric Algorithms for Scientific Comput.Mirton Publishing House, 119\u2013130."},{"volume-title":"Regular Segmented Single-pass Scan in Futhark. Master\u2019s thesis. Department of Computer Science","author":"Clausen Morten\u00a0Tychsen","key":"e_1_3_2_1_10_1","unstructured":"Morten\u00a0Tychsen Clausen. 2021. Regular Segmented Single-pass Scan in Futhark. Master\u2019s thesis. Department of Computer Science, Faculty of Science, University of Copenhagen,. https:\/\/futhark-lang.org\/student-projects\/morten-msc-thesis.pdf"},{"key":"e_1_3_2_1_11_1","volume-title":"Compiling machine learning programs via high-level tracing. Systems for Machine Learning","author":"Frostig Roy","year":"2018","unstructured":"Roy Frostig, Matthew\u00a0James Johnson, and Chris Leary. 2018. Compiling machine learning programs via high-level tracing. Systems for Machine Learning (2018), 23\u201324."},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE48307.2020.00040"},{"volume-title":"Programming Languages: Implementations, Logics, and Programs, Herbert Kuchen and S.\u00a0Doaitse\u00a0Swierstra (Eds.)","author":"Gorlatch Sergei","key":"e_1_3_2_1_13_1","unstructured":"Sergei Gorlatch. 1996. Systematic extraction and implementation of divide-and-conquer parallelism. In Programming Languages: Implementations, Logics, and Programs, Herbert Kuchen and S.\u00a0Doaitse\u00a0Swierstra (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 274\u2013288."},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/229473.229474"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","unstructured":"Marc Henrard. 2017. Algorithmic Differentiation in Finance Explained. https:\/\/doi.org\/10.1007\/978-3-319-53979-9","DOI":"10.1007\/978-3-319-53979-9"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/3460944.3464310"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.5555\/3433701.3433830"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/2935323.2935326"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/2502323.2502328"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/2627373.2627388"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/3062341.3062354"},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/3293883.3295707"},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPPS.1998.669896"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/3337821.3337906"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","unstructured":"Jan H\u00fcckelheim and Laurent Hasco\u00ebt. 2021. Source-to-Source Automatic Differentiation of OpenMP Parallel Loops. https:\/\/doi.org\/10.48550\/ARXIV.2111.01861","DOI":"10.48550\/ARXIV.2111.01861"},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","unstructured":"Tim Kaler Tao\u00a0B. Schardl Brian Xie Charles\u00a0E. Leiserson Jie Chen Aldo Pareja and Georgios Kollias. 2021. PARAD: A Work-Efficient Parallel Algorithm for Reverse-Mode Automatic Differentiation. 144\u2013158. https:\/\/doi.org\/10.1137\/1.9781611976489.11 arXiv:https:\/\/epubs.siam.org\/doi\/pdf\/10.1137\/1.9781611976489.11","DOI":"10.1137\/1.9781611976489.11"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/3122948.3122952"},{"volume-title":"Recent Advances in Algorithmic Differentiation","author":"Lauvernet Claire","key":"e_1_3_2_1_28_1","unstructured":"Claire Lauvernet, Laurent Hasco\u00ebt, Fran\u00e7ois-Xavier Le\u00a0Dimet, and Fr\u00e9d\u00e9ric Baret. 2012. Using Automatic Differentiation to Study the Sensitivity of a Crop Model. In Recent Advances in Algorithmic Differentiation, Shaun Forth, Paul Hovland, Eric Phipps, Jean Utke, and Andrea Walther (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 59\u201369."},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.3390\/rs12030492"},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1002\/widm.1305"},{"key":"e_1_3_2_1_31_1","unstructured":"Duane Merrill and Michael Garland. 2016. Single-pass Parallel Prefix Scan with Decoupled Lookback. NVIDIA Technical Report NVR-2016-002 March 2016. NVIDIA. https:\/\/research.nvidia.com\/sites\/default\/files\/pubs\/2016-03_Single-pass-Parallel-Prefix\/nvr-2016-002.pdf"},{"key":"e_1_3_2_1_32_1","volume-title":"Moses and Valentin Churavy","author":"S.","year":"2020","unstructured":"William\u00a0S. Moses and Valentin Churavy. 2020. Instead of Rewriting Foreign Code for Machine Learning, Automatically Synthesize Fast Gradients. In Advances in Neural Information Processing Systems 33."},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/3458817.3476165"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/SC41404.2022.00065"},{"volume-title":"Trends in Functional Programming, Vikt\u00f3ria Zs\u00f3k and John Hughes (Eds.)","author":"Munksgaard Philip","key":"e_1_3_2_1_35_1","unstructured":"Philip Munksgaard, Svend\u00a0Lund Breddam, Troels Henriksen, Fabian\u00a0Cristian Gieseke, and Cosmin Oancea. 2021. Dataset Sensitive Autotuning of Multi-versioned Code Based on Monotonic Properties. In Trends in Functional Programming, Vikt\u00f3ria Zs\u00f3k and John Hughes (Eds.). Springer International Publishing, Cham, 3\u201323."},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1109\/SC41404.2022.00036"},{"volume-title":"Implementing Single-Pass Scan in the Futhark Compiler. Master\u2019s thesis. Department of Computer Science","author":"Nicolaisen Andreas","key":"e_1_3_2_1_37_1","unstructured":"Andreas Nicolaisen and Marco\u00a0Aslak Persson. 2020. Implementing Single-Pass Scan in the Futhark Compiler. Master\u2019s thesis. Department of Computer Science, Faculty of Science, University of Copenhagen,. https:\/\/futhark-lang.org\/student-projects\/marco-andreas-scan.pdf"},{"key":"e_1_3_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/2364474.2364484"},{"key":"e_1_3_2_1_39_1","volume-title":"Oancea and Alan Mycroft","author":"E.","year":"2008","unstructured":"Cosmin\u00a0E. Oancea and Alan Mycroft. 2008. Set-Congruence Dynamic Analysis for Thread-Level Speculation (TLS). In Languages and Compilers for Parallel Computing, Jos\u00e9\u00a0Nelson Amaral (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg, 156\u2013171."},{"key":"e_1_3_2_1_40_1","volume-title":"Oancea and Lawrence Rauchwerger","author":"E.","year":"2013","unstructured":"Cosmin\u00a0E. Oancea and Lawrence Rauchwerger. 2013. A Hybrid Approach to Proving Memory Reference Monotonicity. In Languages and Compilers for Parallel Computing, Sanjay Rajopadhye and Michelle Mills\u00a0Strout (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 61\u201375."},{"key":"e_1_3_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/1094811.1094823"},{"volume-title":"Interlingual Automatic Differentiation: Software 2.0 between PyTorch and Julia","author":"O\u2019Malley Daniel","key":"e_1_3_2_1_42_1","unstructured":"Daniel O\u2019Malley, Javier E.\u00a0Santos, and Nicholas Lubbers. 2022. Interlingual Automatic Differentiation: Software 2.0 between PyTorch and Julia. Association for the Advancement of Artificial Intelligence."},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1080\/10556788.2018.1435650"},{"key":"e_1_3_2_1_44_1","volume-title":"PyTorch: An imperative style, high-performance deep learning library. Advances in neural information processing systems 32","author":"Paszke Adam","year":"2019","unstructured":"Adam Paszke, Sam Gross, Francisco Massa, Adam Lerer, James Bradbury, Gregory Chanan, Trevor Killeen, Zeming Lin, Natalia Gimelshein, Luca Antiga, 2019. PyTorch: An imperative style, high-performance deep learning library. Advances in neural information processing systems 32 (2019), 8026\u20138037."},{"key":"e_1_3_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/3473593"},{"key":"e_1_3_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/3471873.3472975"},{"key":"e_1_3_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/1330017.1330018"},{"volume-title":"EGU General Assembly Conference Abstracts(EGU General Assembly Conference Abstracts). 7439","author":"Pinty B.","key":"e_1_3_2_1_48_1","unstructured":"B. Pinty, M. Clerici, T. Lavergne, T. Kaminski, M. Taberner, and I. Andredakis. 2009. Application of Automatic Differentiation technique to retrieve land surface parameters and associated uncertainties from satellite products.. In EGU General Assembly Conference Abstracts(EGU General Assembly Conference Abstracts). 7439."},{"key":"e_1_3_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1080\/10556788.2018.1471140"},{"key":"e_1_3_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/3356900"},{"key":"e_1_3_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1111\/j.1365-246X.2007.03400.x"},{"key":"e_1_3_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1109\/SC41404.2022.00063"},{"key":"e_1_3_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/3341701"},{"key":"e_1_3_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1080\/10556788.2018.1459621"},{"key":"e_1_3_2_1_55_1","unstructured":"Chengbo Wang. 2020. Financial Applications of Algorithmic Differentiation. Ph.\u00a0D. Dissertation. Advisor(s) Maciej Klimek . AAI28078040."}],"event":{"name":"IFL 2023: The 35th Symposium on Implementation and Application of Functional Languages","acronym":"IFL 2023","location":"Braga Portugal"},"container-title":["The 35th Symposium on Implementation and Application of Functional Languages"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3652561.3652575","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3652561.3652575","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,8,26]],"date-time":"2025-08-26T19:10:36Z","timestamp":1756235436000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3652561.3652575"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,8,29]]},"references-count":55,"alternative-id":["10.1145\/3652561.3652575","10.1145\/3652561"],"URL":"https:\/\/doi.org\/10.1145\/3652561.3652575","relation":{},"subject":[],"published":{"date-parts":[[2023,8,29]]},"assertion":[{"value":"2024-06-19","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}