Core Concepts
결과 분리 논리(OSL)는 다양한 계산 효과를 가진 프로그램에서 정확성과 부정확성 추론을 모두 지원하는 프로그램 논리이다. OSL은 분리 논리와 유사한 프레임 규칙을 가지지만, 더 넓은 범위의 속성에 대한 국소적 추론을 가능하게 하는 다른 기본 가정을 사용한다.
Abstract
이 논문은 결과 분리 논리(Outcome Separation Logic, OSL)를 소개한다. OSL은 프로그램의 정확성과 부정확성 추론을 모두 지원하는 프로그램 논리이다.
OSL은 분리 논리와 유사한 프레임 규칙을 가지지만, 더 넓은 범위의 속성에 대한 국소적 추론을 가능하게 하는 다른 기본 가정을 사용한다. 이를 통해 OSL은 다양한 계산 효과(nondeterminism, probability 등)를 가진 프로그램에 대해 정확성과 부정확성 추론을 모두 지원할 수 있다.
OSL의 핵심 기여는 다음과 같다:
정확성과 부정확성 추론을 모두 지원하는 Outcome Separation Logic 정의
프레임 규칙의 건전성 증명
양방향 추론(bi-abduction)과 삼방향 추론(tri-abduction)을 활용한 상징적 실행 알고리즘 정의
이 논문은 OSL의 기반이 되는 프로그램 의미론을 정의하고, 프레임 규칙의 건전성을 증명한다. 또한 OSL을 활용한 상징적 실행 알고리즘을 제시하여, 정확성과 부정확성 추론을 통합할 수 있음을 보인다.