답변:
나는 좋은 튜토리얼 자료를 알지 못하지만 (나 같은) 대학원생을위한 초급 논문이 있습니다. 첫 번째는 당신이 찾고있는 것일 수도 있습니다 (강조는 내 것입니다).
정적 분석 및 프로그램 변환을위한 간단한 관계형 정확성 증명 , Nick Benton. 2004.
우리는 명령형 프로그램에 대한 몇 가지 고전적인 정적 분석과 그들이 사용할 수있는 최적화 변환이 어떻게 기본 논리 및 폐기 기술을 사용하여 표현되고 입증 될 수 있는지 보여줍니다 . 핵심 요소는 술어가 아닌 관계로 프로그램 속성을 해석하는 것입니다. 많은 프로그램 분석이 전통적으로 매우 강렬한 용어로 공식화되어 있지만 관련 변환이 실제로보다 자유로운 확장 속성에 의해 가능하다는 인식입니다.
이 논문은 또한 당신에게 관심이있을 수 있습니다. 그들은 나를 크게 도와주었습니다!
표기법을 현대화해야하지만 McCarthy와 Painter의 산술 표현에 대한 컴파일러 의 정확성 은 간단하고 훌륭하며 역사적인 관심도 있습니다 (내가 아는 한 가장 중요하기 때문에 주제에 대한 첫 번째 논문이기 때문에).
Adam Chlipala의 Lambda Calculus에서 Assembly Language에 이르기까지 공인 형식 보존 컴파일러는 교정 방법을 사용하여 간단한 컴파일러 정확성 증명의 좋은 예인 것으로 보이며 증명 어시스턴트에서 완전히 공식화되었다는 이점이 있습니다.
Graham Hutton은 자신의 저서 "Programming in Haskell"에 작은 예가 있습니다.
필자는 PhD에 대해 한 보고서 에서 McCarthy-Painter 컴파일러의 몇 가지 기계화 된 증거 (다양한 논리)를 가지고 있습니다.
아마도 가장 간단한 예는 아니지만 Xavier Leroy는 공식적으로 검증 된 C 컴파일러 와 같은이 분야에서 많은 작업을 수행했습니다 . 그는 작은 명령형 언어 IMP를 사용하여 여름 학교 프리젠 테이션 을했으며 이는 고급 작업에 대한 접근 가능한 소개입니다.