Взгляните на «Механизированную семантику для конструирования и разрушения объектов C ++ с приложениями для управления ресурсами» ( страница , другая версия PDF ), которая, по-видимому, была представленаPOPL 2012;но AFAIK еще не был рецензирован.
Есть раздел, специально посвященный RAII, хотя он может не доказать, что вы хотите:
Мы не можем доказать общий результат, гарантирующий надлежащийинкапсуляция ресурсов в классах: это вопрос проверки программы.Однако мы можем доказать, что в завершающей программе каждая конструкция подобъекта корректно сопоставляется с уничтожением.
Отказ от ответственности: я только кратко просмотрел статью и почти ничего не знаю о формальномсемантика языка.