{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,25]],"date-time":"2025-03-25T14:37:50Z","timestamp":1742913470399,"version":"3.40.3"},"publisher-location":"Cham","reference-count":19,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030452308"},{"type":"electronic","value":"9783030452315"}],"license":[{"start":{"date-parts":[[2020,1,1]],"date-time":"2020-01-01T00:00:00Z","timestamp":1577836800000},"content-version":"tdm","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":[[2020]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Cartesian differential categories are categories equipped with a differential combinator which axiomatizes the directional derivative. Important models of Cartesian differential categories include classical differential calculus of smooth functions and categorical models of the differential <jats:inline-formula><jats:alternatives><jats:tex-math>$$\\lambda $$<\/jats:tex-math><mml:math xmlns:mml=\"http:\/\/www.w3.org\/1998\/Math\/MathML\">\n                  <mml:mi>\u03bb<\/mml:mi>\n                <\/mml:math><\/jats:alternatives><\/jats:inline-formula>-calculus. However, Cartesian differential categories cannot account for other interesting notions of differentiation such as the calculus of finite differences or the Boolean differential calculus. On the other hand, change action models have been shown to capture these examples as well as more \u201cexotic\u201d examples of differentiation. However, change action models are very general and do not share the nice properties of a Cartesian differential category. In this paper, we introduce Cartesian difference categories as a bridge between Cartesian differential categories and change action models. We show that every Cartesian differential category is a Cartesian difference category, and how certain well-behaved change action models are Cartesian difference categories. In particular, Cartesian difference categories model both the differential calculus of smooth functions and the calculus of finite differences. Furthermore, every Cartesian difference category comes equipped with a tangent bundle monad whose Kleisli category is again a Cartesian difference category.<\/jats:p>","DOI":"10.1007\/978-3-030-45231-5_4","type":"book-chapter","created":{"date-parts":[[2020,4,17]],"date-time":"2020-04-17T10:02:53Z","timestamp":1587117773000},"page":"57-76","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":2,"title":["Cartesian Difference Categories"],"prefix":"10.1007","author":[{"given":"Mario","family":"Alvarez-Picallo","sequence":"first","affiliation":[]},{"given":"Jean-Simon Pacaud","family":"Lemay","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2020,4,17]]},"reference":[{"key":"4_CR1","doi-asserted-by":"crossref","unstructured":"Alvarez-Picallo, M., Eyers-Taylor, A., Jones, M.P., Ong, C.H.L.: Fixing incremental computation. In: European Symposium on Programming. pp. 525\u2013552. Springer (2019)","DOI":"10.1007\/978-3-030-17184-1_19"},{"key":"4_CR2","doi-asserted-by":"crossref","unstructured":"Alvarez-Picallo, M., Ong, C.H.L.: Change actions: models of generalised differentiation. In: International Conference on Foundations of Software Science and Computation Structures. pp. 45\u201361. Springer (2019)","DOI":"10.1007\/978-3-030-17127-8_3"},{"key":"4_CR3","doi-asserted-by":"crossref","unstructured":"Blute, R.F., Cockett, J.R.B., Seely, R.A.G.: Differential categories. Mathematical structures in computer science 16(06), 1049\u20131083 (2006)","DOI":"10.1017\/S0960129506005676"},{"key":"4_CR4","unstructured":"Blute, R.F., Cockett, J.R.B., Seely, R.A.G.: Cartesian differential categories. Theory and Applications of Categories 22(23), 622\u2013672 (2009)"},{"key":"4_CR5","unstructured":"Bradet-Legris, J., Reid, H.: Differential forms in non-linear cartesian differential categories (2018), Foundational Methods in Computer Science"},{"key":"4_CR6","doi-asserted-by":"crossref","unstructured":"Cai, Y., Giarrusso, P.G., Rendel, T., Ostermann, K.: A theory of changes for higher-order languages: Incrementalizing $$\\lambda $$-calculi by static differentiation. In: ACM SIGPLAN Notices. vol. 49, pp. 145\u2013155. ACM (2014)","DOI":"10.1145\/2666356.2594304"},{"key":"4_CR7","doi-asserted-by":"crossref","unstructured":"Cockett, J.R.B., Cruttwell, G.S.H.: Differential structure, tangent structure, and sdg. Applied Categorical Structures 22(2), 331\u2013417 (2014)","DOI":"10.1007\/s10485-013-9312-0"},{"key":"4_CR8","unstructured":"Cockett, J., Cruttwell, G.: Connections in tangent categories. Theory and Applications of Categories 32(26), 835\u2013888 (2017)"},{"key":"4_CR9","doi-asserted-by":"crossref","unstructured":"Cruttwell, G.S.: Cartesian differential categories revisited. Mathematical Structures in Computer Science 27(1), 70\u201391 (2017)","DOI":"10.1017\/S0960129515000055"},{"key":"4_CR10","doi-asserted-by":"crossref","unstructured":"Ehrhard, T., Regnier, L.: The differential lambda-calculus. Theoretical Computer Science 309(1), 1\u201341 (2003)","DOI":"10.1016\/S0304-3975(03)00392-X"},{"key":"4_CR11","doi-asserted-by":"crossref","unstructured":"Ehrhard, T.: An introduction to differential linear logic: proof-nets, models and antiderivatives. Mathematical Structures in Computer Science 28(7), 995\u20131060 (2018)","DOI":"10.1017\/S0960129516000372"},{"key":"4_CR12","unstructured":"Kelly, R., Pearlmutter, B.A., Siskind, J.M.: Evolving the incremental $$\\{$$$$\\backslash $$lambda$$\\}$$ calculus into a model of forward automatic differentiation (ad). arXiv preprint arXiv:1611.03429 (2016)"},{"key":"4_CR13","doi-asserted-by":"crossref","unstructured":"Kock, A.: Synthetic differential geometry, vol. 333. Cambridge University Press (2006)","DOI":"10.1017\/CBO9780511550812"},{"key":"4_CR14","doi-asserted-by":"crossref","unstructured":"Manzonetto, G.: What is a categorical model of the differential and the resource $$\\lambda $$-calculi? Mathematical Structures in Computer Science 22(3), 451\u2013520 (2012)","DOI":"10.1017\/S0960129511000594"},{"key":"4_CR15","unstructured":"Manzyuk, O.: Tangent bundles in differential lambda-categories. arXiv preprint arXiv:1202.0411 (2012)"},{"key":"4_CR16","unstructured":"Richardson, C.H.: An introduction to the calculus of finite differences. Van Nostrand (1954)"},{"key":"4_CR17","unstructured":"Sprunger, D., Jacobs, B.: The differential calculus of causal functions. arXiv preprint arXiv:1904.10611 (2019)"},{"key":"4_CR18","doi-asserted-by":"crossref","unstructured":"Sprunger, D., Katsumata, S.y.: Differentiable causal computations via delayed trace. In: 2019 34th Annual ACM\/IEEE Symposium on Logic in Computer Science (LICS). pp. 1\u201312. IEEE (2019)","DOI":"10.1109\/LICS.2019.8785670"},{"key":"4_CR19","doi-asserted-by":"crossref","unstructured":"Steinbach, B., Posthoff, C.: Boolean differential calculus. In: Logic Functions and Equations, pp. 75\u2013103. Springer (2009)","DOI":"10.1007\/978-1-4020-9595-5_4"}],"container-title":["Lecture Notes in Computer Science","Foundations of Software Science and Computation Structures"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-45231-5_4","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,1,7]],"date-time":"2021-01-07T13:29:57Z","timestamp":1610026197000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-030-45231-5_4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020]]},"ISBN":["9783030452308","9783030452315"],"references-count":19,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-45231-5_4","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2020]]},"assertion":[{"value":"17 April 2020","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"FoSSaCS","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Foundations of Software Science and Computation Structures","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Dublin","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Ireland","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2020","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"25 April 2020","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"30 April 2020","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"23","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"fossacs2020","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/www.etaps.org\/2020\/fossacs","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"EasyChair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"98","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"31","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"0","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"32% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"12","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"The conference could not take place due to the COVID-19 pandemic. There was an online event on July 2, 2020.","order":10,"name":"additional_info_on_review_process","label":"Additional Info on Review Process","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}