{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,8,26]],"date-time":"2026-08-26T05:56:33Z","timestamp":1787723793235,"version":"build-2784847793"},"reference-count":0,"publisher":"IOS Press","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2015]]},"abstract":"<jats:p>Some parts of the software verification process require human annotation, but as much as possible of the rest should be automatic. An excellent candidate for full automation is change analysis, also known as the frame problem: how to determine which program properties remain unchanged under a given operation. The problem is particularly delcate in the case of programs using pointers or references, in particular object-oriented programs. The double frame inference strategy automates both frame specification and frame verification. On the specification side, it deduces the set of permissible changes of a routine (its &amp;ldquo;modifies clause&amp;rdquo;) from a simple examination of its postcondition. On the implementation side, it applies the change calculus, itself based on the alias calculus, to determine the set of expressions whose values the routine can actually change. Frame verification then consists of ascertaining that the actual change set is a subset of the permissible change set.<\/jats:p>","DOI":"10.3233\/978-1-61499-495-4-193","type":"book-chapter","created":{"date-parts":[[2025,2,19]],"date-time":"2025-02-19T19:11:46Z","timestamp":1739992306000},"source":"Crossref","is-referenced-by-count":1,"title":["Framing the Frame Problem"],"prefix":"10.3233","author":[{"family":"Meyer Bertrand","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"7437","container-title":["NATO Science for Peace and Security Series - D: Information and Communication Security","Dependable Software Systems Engineering"],"original-title":[],"deposited":{"date-parts":[[2025,2,19]],"date-time":"2025-02-19T19:20:49Z","timestamp":1739992849000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.medra.org\/servlet\/aliasResolver?alias=iospressISBN&isbn=978-1-61499-494-7&spage=193&doi=10.3233\/978-1-61499-495-4-193"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015]]},"references-count":0,"URL":"https:\/\/doi.org\/10.3233\/978-1-61499-495-4-193","relation":{},"ISSN":["1874-6268"],"issn-type":[{"value":"1874-6268","type":"print"}],"subject":[],"published":{"date-parts":[[2015]]}}}