이 논문은 Rust 프로그래밍 언어의 의미론에 대한 새로운 기여를 제시한다. 구체적으로:
LLBC(Low-Level Borrow Calculus)가 주소 기반 실행 모델인 PL(Pointer Language)에 대해 올바른 관점을 제공함을 증명한다. LLBC는 전통적인 메모리 모델을 정확하게 모델링하며, 빌림 중심 관점이 타당함을 보여준다.
LLBC의 기호적 의미론이 LLBC 프로그램에 대한 올바른 추상화이며, 기호적으로 검사된 LLBC 프로그램은 주소 및 힙 모델에서 실행될 때 막히지 않음을 증명한다. 이를 통해 LLBC의 기호적 의미론이 LLBC 프로그램에 대한 안전한 빌림 검사기로 작동함을 보여준다.
새로운 증명 기법인 하이브리드 상태를 도입하여 시뮬레이션 증명을 크게 단순화한다. 이를 통해 LLBC의 기호적 의미론에 join 연산을 추가하여 추상화와 빌림 검사 속성을 보존할 수 있음을 보여준다. 이는 Aeneas 프레임워크에 루프 지원을 추가하여 표현력을 높이는 데 활용된다.
إلى لغة أخرى
من محتوى المصدر
arxiv.org
الرؤى الأساسية المستخلصة من
by Son Ho,Aymer... في arxiv.org 04-04-2024
https://arxiv.org/pdf/2404.02680.pdfاستفسارات أعمق