{"record_type":"pith_number_record","schema_url":"https://pith.science/schemas/pith-number/v1.json","pith_number":"pith:2018:JDA4AZPEWJY5JCLPDNY42XM7QP","short_pith_number":"pith:JDA4AZPE","schema_version":"1.0","canonical_sha256":"48c1c065e4b271d4896f1b71cd5d9f83cd300879baa813c2fef5c4d7680c38a4","source":{"kind":"arxiv","id":"1809.06274","version":1},"attestation_state":"computed","paper":{"title":"FormuLog: Datalog for static analysis involving logical formulae","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","headline":"","cross_cats":[],"primary_cat":"cs.PL","authors_text":"Aaron Bembenek, Stephen Chong","submitted_at":"2018-09-17T15:22:29Z","abstract_excerpt":"Datalog has become a popular language for writing static analyses. Because Datalog is very limited, some implementations of Datalog for static analysis have extended it with new language features. However, even with these features it is hard or impossible to express a large class of analyses because they use logical formulae to represent program state. FormuLog fills this gap by extending Datalog to represent, manipulate, and reason about logical formulae. We have used FormuLog to implement declarative versions of symbolic execution and abstract model checking, analyses previously out of the s"},"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":"1809.06274","kind":"arxiv","version":1},"metadata":{"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.PL","submitted_at":"2018-09-17T15:22:29Z","cross_cats_sorted":[],"title_canon_sha256":"0f6e08dfb3d539d77be5e0c42f6e08ea435ef1c1fa39a4593d06c2cf510f4b8c","abstract_canon_sha256":"febe591f1fc2a835ee0314ff3ee4df2ecec50b019bdbc705610e39b623089f83"},"schema_version":"1.0"},"receipt":{"kind":"pith_receipt","key_id":"pith-v1-2026-05","algorithm":"ed25519","signed_at":"2026-05-18T00:05:35.141626Z","signature_b64":"DgDjo8CYx6AqQqaOMythF+oPSAoLeWLxQFAxHl9jYrXD2RILSVTiXZEiVn8PC4g+7q/eBl+uqbVHL7q4KXf7Bw==","signed_message":"canonical_sha256_bytes","builder_version":"pith-number-builder-2026-05-17-v1","receipt_version":"0.3","canonical_sha256":"48c1c065e4b271d4896f1b71cd5d9f83cd300879baa813c2fef5c4d7680c38a4","last_reissued_at":"2026-05-18T00:05:35.141200Z","signature_status":"signed_v1","first_computed_at":"2026-05-18T00:05:35.141200Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"graph_snapshot":{"paper":{"title":"FormuLog: Datalog for static analysis involving logical formulae","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","headline":"","cross_cats":[],"primary_cat":"cs.PL","authors_text":"Aaron Bembenek, Stephen Chong","submitted_at":"2018-09-17T15:22:29Z","abstract_excerpt":"Datalog has become a popular language for writing static analyses. Because Datalog is very limited, some implementations of Datalog for static analysis have extended it with new language features. However, even with these features it is hard or impossible to express a large class of analyses because they use logical formulae to represent program state. FormuLog fills this gap by extending Datalog to represent, manipulate, and reason about logical formulae. We have used FormuLog to implement declarative versions of symbolic execution and abstract model checking, analyses previously out of the s"},"claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"1809.06274","kind":"arxiv","version":1},"verdict":{"id":null,"model_set":{},"created_at":null,"strongest_claim":"","one_line_summary":"","pipeline_version":null,"weakest_assumption":"","pith_extraction_headline":""},"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":"1809.06274","created_at":"2026-05-18T00:05:35.141261+00:00"},{"alias_kind":"arxiv_version","alias_value":"1809.06274v1","created_at":"2026-05-18T00:05:35.141261+00:00"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.1809.06274","created_at":"2026-05-18T00:05:35.141261+00:00"},{"alias_kind":"pith_short_12","alias_value":"JDA4AZPEWJY5","created_at":"2026-05-18T12:32:31.084164+00:00"},{"alias_kind":"pith_short_16","alias_value":"JDA4AZPEWJY5JCLP","created_at":"2026-05-18T12:32:31.084164+00:00"},{"alias_kind":"pith_short_8","alias_value":"JDA4AZPE","created_at":"2026-05-18T12:32:31.084164+00:00"}],"events":[],"event_summary":{},"paper_claims":[],"inbound_citations":{"count":1,"internal_anchor_count":1,"sample":[{"citing_arxiv_id":"2605.15406","citing_title":"Polymorphic Bottom-Up Weighted Relational Programming","ref_index":3,"is_internal_anchor":true}]},"formal_canon":{"evidence_count":0,"sample":[],"anchors":[]},"links":{"html":"https://pith.science/pith/JDA4AZPEWJY5JCLPDNY42XM7QP","json":"https://pith.science/pith/JDA4AZPEWJY5JCLPDNY42XM7QP.json","graph_json":"https://pith.science/api/pith-number/JDA4AZPEWJY5JCLPDNY42XM7QP/graph.json","events_json":"https://pith.science/api/pith-number/JDA4AZPEWJY5JCLPDNY42XM7QP/events.json","paper":"https://pith.science/paper/JDA4AZPE"},"agent_actions":{"view_html":"https://pith.science/pith/JDA4AZPEWJY5JCLPDNY42XM7QP","download_json":"https://pith.science/pith/JDA4AZPEWJY5JCLPDNY42XM7QP.json","view_paper":"https://pith.science/paper/JDA4AZPE","resolve_alias":"https://pith.science/api/pith-number/resolve?arxiv=1809.06274&json=true","fetch_graph":"https://pith.science/api/pith-number/JDA4AZPEWJY5JCLPDNY42XM7QP/graph.json","fetch_events":"https://pith.science/api/pith-number/JDA4AZPEWJY5JCLPDNY42XM7QP/events.json","actions":{"anchor_timestamp":"https://pith.science/pith/JDA4AZPEWJY5JCLPDNY42XM7QP/action/timestamp_anchor","attest_storage":"https://pith.science/pith/JDA4AZPEWJY5JCLPDNY42XM7QP/action/storage_attestation","attest_author":"https://pith.science/pith/JDA4AZPEWJY5JCLPDNY42XM7QP/action/author_attestation","sign_citation":"https://pith.science/pith/JDA4AZPEWJY5JCLPDNY42XM7QP/action/citation_signature","submit_replication":"https://pith.science/pith/JDA4AZPEWJY5JCLPDNY42XM7QP/action/replication_record"}},"created_at":"2026-05-18T00:05:35.141261+00:00","updated_at":"2026-05-18T00:05:35.141261+00:00"}