{"record_type":"pith_number_record","schema_url":"https://pith.science/schemas/pith-number/v1.json","pith_number":"pith:2021:JOJYXWOJU7ZL3TSOTBHB7ZFVIH","short_pith_number":"pith:JOJYXWOJ","schema_version":"1.0","canonical_sha256":"4b938bd9c9a7f2bdce4e984e1fe4b541cd6dd3737eac925582288c8e3aabe5bc","source":{"kind":"arxiv","id":"2109.12449","version":2},"attestation_state":"computed","paper":{"title":"AbstractDifferentiation.jl: Backend-Agnostic Differentiable Programming in Julia","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","headline":"","cross_cats":["cs.LG","cs.SE"],"primary_cat":"cs.MS","authors_text":"Chris Rackauckas, Frank Sch\\\"afer, Lyndon White, Mohamed Tarek","submitted_at":"2021-09-25T22:19:12Z","abstract_excerpt":"No single Automatic Differentiation (AD) system is the optimal choice for all problems. This means informed selection of an AD system and combinations can be a problem-specific variable that can greatly impact performance. In the Julia programming language, the major AD systems target the same input and thus in theory can compose. Hitherto, switching between AD packages in the Julia Language required end-users to familiarize themselves with the user-facing API of the respective packages. Furthermore, implementing a new, usable AD package required AD package developers to write boilerplate code"},"verification_status":{"content_addressed":true,"pith_receipt":true,"author_attested":false,"weak_author_claims":0,"strong_author_claims":0,"externally_anchored":false,"storage_verified":false,"citation_signatures":0,"replication_records":0,"graph_snapshot":true,"references_resolved":false,"formal_links_present":false},"canonical_record":{"source":{"id":"2109.12449","kind":"arxiv","version":2},"metadata":{"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.MS","submitted_at":"2021-09-25T22:19:12Z","cross_cats_sorted":["cs.LG","cs.SE"],"title_canon_sha256":"f9b7b635a185e72d6d0177c9da0bb9131f5e70e85786c67ed12fc4792b772e50","abstract_canon_sha256":"2adb834445ac8e4f23003ee916baefde2c468ce4aa3b06511d078a38932d25b0"},"schema_version":"1.0"},"receipt":{"kind":"pith_receipt","key_id":"pith-v1-2026-05","algorithm":"ed25519","signed_at":"2026-07-05T03:54:23.827189Z","signature_b64":"+w/0KXgLdt8q+AJmW2Jll7YGHoF9ymUYNsl6IF0fZYtIAUosdwH0D+gsrHBejolt2Oz1Ad97WaaGceQ7D+4tAA==","signed_message":"canonical_sha256_bytes","builder_version":"pith-number-builder-2026-05-17-v1","receipt_version":"0.3","canonical_sha256":"4b938bd9c9a7f2bdce4e984e1fe4b541cd6dd3737eac925582288c8e3aabe5bc","last_reissued_at":"2026-07-05T03:54:23.826708Z","signature_status":"signed_v1","first_computed_at":"2026-07-05T03:54:23.826708Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"graph_snapshot":{"paper":{"title":"AbstractDifferentiation.jl: Backend-Agnostic Differentiable Programming in Julia","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","headline":"","cross_cats":["cs.LG","cs.SE"],"primary_cat":"cs.MS","authors_text":"Chris Rackauckas, Frank Sch\\\"afer, Lyndon White, Mohamed Tarek","submitted_at":"2021-09-25T22:19:12Z","abstract_excerpt":"No single Automatic Differentiation (AD) system is the optimal choice for all problems. This means informed selection of an AD system and combinations can be a problem-specific variable that can greatly impact performance. In the Julia programming language, the major AD systems target the same input and thus in theory can compose. Hitherto, switching between AD packages in the Julia Language required end-users to familiarize themselves with the user-facing API of the respective packages. Furthermore, implementing a new, usable AD package required AD package developers to write boilerplate code"},"claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"2109.12449","kind":"arxiv","version":2},"verdict":{"id":null,"model_set":{},"created_at":null,"strongest_claim":"","one_line_summary":"","pipeline_version":null,"weakest_assumption":"","pith_extraction_headline":""},"integrity":{"clean":true,"summary":{"advisory":0,"critical":0,"by_detector":{},"informational":0},"endpoint":"/pith/2109.12449/integrity.json","findings":[],"available":true,"detectors_run":[],"snapshot_sha256":"c28c3603d3b5d939e8dc4c7e95fa8dfce3d595e45f758748cecf8e644a296938"},"references":{"count":0,"sample":[],"resolved_work":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57","internal_anchors":0},"formal_canon":{"evidence_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"author_claims":{"count":0,"strong_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"builder_version":"pith-number-builder-2026-05-17-v1"},"aliases":[{"alias_kind":"arxiv","alias_value":"2109.12449","created_at":"2026-07-05T03:54:23.826769+00:00"},{"alias_kind":"arxiv_version","alias_value":"2109.12449v2","created_at":"2026-07-05T03:54:23.826769+00:00"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.2109.12449","created_at":"2026-07-05T03:54:23.826769+00:00"},{"alias_kind":"pith_short_12","alias_value":"JOJYXWOJU7ZL","created_at":"2026-07-05T03:54:23.826769+00:00"},{"alias_kind":"pith_short_16","alias_value":"JOJYXWOJU7ZL3TSO","created_at":"2026-07-05T03:54:23.826769+00:00"},{"alias_kind":"pith_short_8","alias_value":"JOJYXWOJ","created_at":"2026-07-05T03:54:23.826769+00:00"}],"events":[],"event_summary":{},"paper_claims":[],"inbound_citations":{"count":1,"internal_anchor_count":0,"sample":[{"citing_arxiv_id":"2605.01202","citing_title":"Sampling Pfaffian point processes and the symplectic Arnoldi method","ref_index":45,"is_internal_anchor":false}]},"formal_canon":{"evidence_count":0,"sample":[],"anchors":[]},"links":{"html":"https://pith.science/pith/JOJYXWOJU7ZL3TSOTBHB7ZFVIH","json":"https://pith.science/pith/JOJYXWOJU7ZL3TSOTBHB7ZFVIH.json","graph_json":"https://pith.science/api/pith-number/JOJYXWOJU7ZL3TSOTBHB7ZFVIH/graph.json","events_json":"https://pith.science/api/pith-number/JOJYXWOJU7ZL3TSOTBHB7ZFVIH/events.json","paper":"https://pith.science/paper/JOJYXWOJ"},"agent_actions":{"view_html":"https://pith.science/pith/JOJYXWOJU7ZL3TSOTBHB7ZFVIH","download_json":"https://pith.science/pith/JOJYXWOJU7ZL3TSOTBHB7ZFVIH.json","view_paper":"https://pith.science/paper/JOJYXWOJ","resolve_alias":"https://pith.science/api/pith-number/resolve?arxiv=2109.12449&json=true","fetch_graph":"https://pith.science/api/pith-number/JOJYXWOJU7ZL3TSOTBHB7ZFVIH/graph.json","fetch_events":"https://pith.science/api/pith-number/JOJYXWOJU7ZL3TSOTBHB7ZFVIH/events.json","actions":{"anchor_timestamp":"https://pith.science/pith/JOJYXWOJU7ZL3TSOTBHB7ZFVIH/action/timestamp_anchor","attest_storage":"https://pith.science/pith/JOJYXWOJU7ZL3TSOTBHB7ZFVIH/action/storage_attestation","attest_author":"https://pith.science/pith/JOJYXWOJU7ZL3TSOTBHB7ZFVIH/action/author_attestation","sign_citation":"https://pith.science/pith/JOJYXWOJU7ZL3TSOTBHB7ZFVIH/action/citation_signature","submit_replication":"https://pith.science/pith/JOJYXWOJU7ZL3TSOTBHB7ZFVIH/action/replication_record"}},"created_at":"2026-07-05T03:54:23.826769+00:00","updated_at":"2026-07-05T03:54:23.826769+00:00"}