Поддержка модульной верификации под слабыми моделями памяти для Generic Model Checker
Суть моей работы — ускорение верификации многопоточных программ, использующих различные конкурентные структуры данных в GenMC. Само ускорение достигается за счет подмены имплементаций конкурентных структур данных на более простые спецификации.
В рамках данной работы я расширил модель памяти RC11 до модели памяти dRC11. Также я заметил некоторые прежде неизвестные проблемы в теории, стоящей за abstraction theorem в dRC11 и сформулировал новую, более понятную и корректно работающую версию abstraction theorem. Она позволяет определить, можно ли использовать одну структуру данных вместо другой без потери каких-либо поведений клиента, тем самым отвечая на вопрос, можно ли использовать спецификацию вместо имлементации в любой программе.
Что такое Generic Model Checker