{"state_type":"pith_open_graph_state","state_version":"1.0","pith_number":"pith:2019:7DTHRV3CA23OCQA6RQ2X6WCHOD","merge_version":"pith-open-graph-merge-v1","event_count":2,"valid_event_count":2,"invalid_event_count":0,"equivocation_count":0,"current":{"canonical_record":{"metadata":{"abstract_canon_sha256":"55e2d6d7a8fa0189f867a724dc4720357a794de03c235a3b3ef3f775864ef09d","cross_cats_sorted":["cs.PL"],"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.SE","submitted_at":"2019-02-14T15:30:01Z","title_canon_sha256":"f1eebcb88c393b3eef35de4f5e557e4cf769094a22991fdb319467023b1a4b5d"},"schema_version":"1.0","source":{"id":"1902.05436","kind":"arxiv","version":1}},"source_aliases":[{"alias_kind":"arxiv","alias_value":"1902.05436","created_at":"2026-05-17T23:54:00Z"},{"alias_kind":"arxiv_version","alias_value":"1902.05436v1","created_at":"2026-05-17T23:54:00Z"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.1902.05436","created_at":"2026-05-17T23:54:00Z"},{"alias_kind":"pith_short_12","alias_value":"7DTHRV3CA23O","created_at":"2026-05-18T12:33:12Z"},{"alias_kind":"pith_short_16","alias_value":"7DTHRV3CA23OCQA6","created_at":"2026-05-18T12:33:12Z"},{"alias_kind":"pith_short_8","alias_value":"7DTHRV3C","created_at":"2026-05-18T12:33:12Z"}],"graph_snapshots":[{"event_id":"sha256:d7a8f843dbacff4c152d38c6c129a6ddf1375efc54f6c6ce1a60c1beed95216f","target":"graph","created_at":"2026-05-17T23:54:00Z","signer":{"key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signer_id":"pith.science","signer_type":"pith_registry"},"payload":{"graph_snapshot":{"author_claims":{"count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57","strong_count":0},"builder_version":"pith-number-builder-2026-05-17-v1","claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"formal_canon":{"evidence_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"paper":{"abstract_excerpt":"Verifying whether a procedure is observationally pure is useful in many software engineering scenarios. An observationally pure procedure always returns the same value for the same argument, and thus mimics a mathematical function. The problem is challenging when procedures use private mutable global variables, e.g., for memoization of frequently returned answers, and when they involve recursion.\n  We present a novel verification approach for this problem. Our approach involves encoding the procedure's code as a formula that is a disjunction of path constraints, with the recursive calls being ","authors_text":"(2) Microsoft Research), Bangalore, G. Ramalingam (2) ((1) Indian Institute of Science, Himanshu Arora (1), Raghavan Komondoor (1)","cross_cats":["cs.PL"],"headline":"","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.SE","submitted_at":"2019-02-14T15:30:01Z","title":"Checking Observational Purity of Procedures"},"references":{"count":0,"internal_anchors":0,"resolved_work":0,"sample":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"1902.05436","kind":"arxiv","version":1},"verdict":{"created_at":null,"id":null,"model_set":{},"one_line_summary":"","pipeline_version":null,"pith_extraction_headline":"","strongest_claim":"","weakest_assumption":""}},"verdict_id":null}}],"author_attestations":[],"timestamp_anchors":[],"storage_attestations":[],"citation_signatures":[],"replication_records":[],"corrections":[],"mirror_hints":[],"record_created":{"event_id":"sha256:c923146724ff6670b53466cfdb2e5052bc6451a9121f894e59037cfd92c27a18","target":"record","created_at":"2026-05-17T23:54:00Z","signer":{"key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signer_id":"pith.science","signer_type":"pith_registry"},"payload":{"attestation_state":"computed","canonical_record":{"metadata":{"abstract_canon_sha256":"55e2d6d7a8fa0189f867a724dc4720357a794de03c235a3b3ef3f775864ef09d","cross_cats_sorted":["cs.PL"],"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.SE","submitted_at":"2019-02-14T15:30:01Z","title_canon_sha256":"f1eebcb88c393b3eef35de4f5e557e4cf769094a22991fdb319467023b1a4b5d"},"schema_version":"1.0","source":{"id":"1902.05436","kind":"arxiv","version":1}},"canonical_sha256":"f8e678d76206b6e1401e8c357f584770fa508aaa185e97bb575751c19c0346a8","receipt":{"algorithm":"ed25519","builder_version":"pith-number-builder-2026-05-17-v1","canonical_sha256":"f8e678d76206b6e1401e8c357f584770fa508aaa185e97bb575751c19c0346a8","first_computed_at":"2026-05-17T23:54:00.773311Z","key_id":"pith-v1-2026-05","kind":"pith_receipt","last_reissued_at":"2026-05-17T23:54:00.773311Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","receipt_version":"0.3","signature_b64":"cvStLX6rJ1IwwTQbZudVj9LpKPs81WorJ9vKnBVRYQtQMHZ4Fj7ivRewsrNFN/DQwThl4NRl9dJ9UOxd0LvFCQ==","signature_status":"signed_v1","signed_at":"2026-05-17T23:54:00.774020Z","signed_message":"canonical_sha256_bytes"},"source_id":"1902.05436","source_kind":"arxiv","source_version":1}}},"equivocations":[],"invalid_events":[],"applied_event_ids":["sha256:c923146724ff6670b53466cfdb2e5052bc6451a9121f894e59037cfd92c27a18","sha256:d7a8f843dbacff4c152d38c6c129a6ddf1375efc54f6c6ce1a60c1beed95216f"],"state_sha256":"0cfead85ced2094b6047b4cae33c36767876361ca87db386b002b82886ea30d0"}