Abstrakt. Avancerade flertrådade program tillämpar konvergenskoncept på sofistikerade sätt. Till exempel använder de finkornig låsning för att öka parallellismen och ändra låsordningarna dynamiskt när datastrukturerna omorganiseras. I detta dokument presenteras en sund och modulär verifieringsmetod som kan hantera avancerade konvergensmönster i flertrådiga, objektbaserade program. Metoden är baserad på implicita dynamiska ramar och använder fraktionerade behörigheter för att stödja finkornig låsning. Den stöder koncept som multi-objekt övervaka invarianter, tråd lokala och delade objekt, tråd pre- och postvillkor, och dödläge förebyggande med en dynamiskt föränderlig låsordning. I dokumentet föreskrivs generering av verifieringsvillkor i första ordningen logik, väl lämpad för granskning av off-the-shälf SMT lösare. En kontrollör för metoden har implementerats för ett experimentellt språk, och har använts för att verifiera flera utmanande exempel, inklusive hand-över-hand-låsning för länkade listor och en låsomordningsalgoritm.
Leino m.fl. REF presenterade Chalice, en verifieringsmetod för att resonera om delad statlig inblandning i flertrådade program.
A basis for verifying multi-threaded programs
{'venue': 'ESOP', 'journal': None, 'mag_field_of_study': ['Computer Science']}