Sebuah aturan bingkai , seperti yang diberikan di bawah ini, menangkap gagasan bahwa, mengingat program cdengan prasyarat pyang memegang sebelum berjalan dan postcondition qyang memegang sesudahnya, beberapa kondisi menguraikan rharus memegang baik sebelum dan sesudah cberjalan. ( Konektif *mensyaratkan bahwa argumennya terpisah.) Seringkali, kondisi pra dan pasca adalah keadaan tumpukan, dan cmerupakan program yang efektif yang memodifikasi tumpukan dengan beberapa cara.
{p} c {q}
----------------- (where no free variable in r is modified by c)
{p * r} c {q * r}
Diskusi tentang aturan bingkai yang saya lihat selalu tampak berfokus pada bagaimana bagian yang terpisah dari tumpukan, rdipertahankan. Ini memungkinkan "penalaran lokal": ketika berpikir tentang efek yang cdimilikinya, kita dapat mengabaikan rbagian tumpukan dan hanya memusatkan perhatian pada bagian yang benar-benar berubah. Tetapi cara lain untuk melihatnya adalah bahwa perubahan dari pkeq dipertahankan, meskipun rsekarang duduk di sana. Dengan kata lain, penting bahwa kita berakhir dengan kondisi akhir {q * r}, bukan {q' * r}untuk beberapa lainnya q'.
Jadi, pertanyaan saya adalah apakah ada perawatan dari aturan frame yang dibahas atau merek penggunaan pelestarian-of-perubahan-dari- p-to- qhal.