Skip to main content
QUICK REVIEW

[논문 리뷰] Program Verification via Predicate Constraint Satisfiability Modulo Theories

Hiroshi Unno, Yuki Satake|arXiv (Cornell University)|2020. 07. 07.
Formal Methods in Verification참고 문헌 61인용 수 6
한 줄 요약

이 논문은 내부적으로 인도적 및 코인도적 술어를 중첩할 수 있는 제약 논리 프로그래밍(CL)의 확장인 $μ$CLP와, 제약 홀른 문(Clause, CHC)을 임의의 문장, 함수 변수, 잘 서운한 조건을 포함하도록 일반화한 $π$CSP$^{\Downarrow\lambda}$를 기반으로 한 새로운 검증 프레임워크를 제안한다. 이 프레임워크는 $μ$CLP에서 $π$CSP$^{\Downarrow\lambda}$로의 타당하고 완전한 축소를 통해 복잡한 검증 작업—예를 들어 종료성, 비종료성, 전체 모달 μ-논리 모델 체킹—을 표현할 수 있으며, 계층적 반례 유도 귀납적 합성(CEGIS)을 사용하여 상대적 완전성과 안정적인 수렴을 달성한다.

ABSTRACT

This paper presents a verification framework based on a new class of predicate Constraint Satisfaction Problems called pCSP where constraints are represented as clauses modulo first-order theories over function variables and predicate variables that may represent well-founded predicates. The verification framework generalizes an existing one based on Constrained Horn Clauses (CHCs) to arbitrary clauses, function variables, and well-foundedness constraints. While it is known that the satisfiability of CHCs and the validity of queries for Constrained Logic Programs (CLP) are inter-reducible, we show that, thanks to the added expressiveness, pCSP is expressive enough to express muCLP queries. muCLP itself is a new extension of CLP that we propose in this paper. It extends CLP with arbitrarily nested inductive and co-inductive predicates and is equi-expressive as first-order fixpoint logic. We show that muCLP can naturally encode a wide variety of verification problems including but not limited to termination/non-termination verification and even full modal mu-calculus model checking of programs written in various languages. To establish our verification framework, we present (1) a sound and complete reduction algorithm from muCLP to pCSP and (2) a constraint solving method for pCSP based on stratified CounterExample-Guided Inductive Synthesis (CEGIS) of (co-)inductive invariants, ranking functions, and Skolem functions witnessing existential quantifiers. Stratified CEGIS combines CEGIS with stratified families of templates to achieve relative completeness and faster and stable convergence of CEGIS by avoiding the overfitting problem. We have implemented the proposed framework and obtained promising results on diverse verification problems that are beyond the scope of the previous verification frameworks based on CHCs.

연구 동기 및 목표

  • 안전성과 보완 유형을 초월한 더 넓은 범위의 검증 문제를 지원하기 위해 CHC 기반 검증 프레임워크를 일반화하기 위해.
  • 복잡한 검증 작업을 균일하게 표현할 수 있도록 임의의 중첩된 인도적 및 코인도적 술어를 갖는 새로운 CLP 확장인 $μ$CLP를 도입하기 위해.
  • 더 표현력 있는 문제를 위해 기존의 CHC 해법 기법을 활용할 수 있도록 $μ$CLP에서 $π$CSP$^{\Downarrow\lambda}$로의 타당하고 완전한 축소를 개발하기 위해.
  • 계층적 CEGIS를 통해 상대적 완전성과 안정적인 수렴을 보장하는 $π$CSP$^{\Downarrow\lambda}$를 위한 제약 해법 방법을 설계하기 위해.
  • 기존의 CHC 기반 시스템이 다루지 못하는 분야를 넘어 다양한 검증 문제에 대한 실용적 적용 가능성을 입증하기 위해.

제안 방법

  • 인도적 및 코인도적 술어의 임의의 중첩을 허용하는 CLP의 확장인 $μ$CLP를 제안하며, 이는 일阶 고정점 논리와 등가이다.
  • CHC의 일반화로, 임의의 문장, 함수 변수, 잘 서운한 술어 변수를 허용하는 $π$CSP$^{\Downarrow\lambda}$를 도입한다.
  • $μ$CLP 쿼리를 $π$CSP$^{\Downarrow\lambda}$ 제약 조건으로 타당하고 완전한 축소를 개발하며, 술어 및 함수 변수의 기호적 조작을 통해 타당성을 유지한다.
  • 계층적 반례 유도 귀납적 합성(CEGIS)을 사용하여 계층적 템플릿 가족을 기반으로 불변성, 랭킹 함수, 스코렘 함수를 반복적으로 합성한다.
  • 검증 검사에서의 불타당한 코어를 이용해 템플릿을 개선하고 과적합을 방지하여 안정적이고 빠른 수렴을 보장한다.
  • 기존의 CHC 해법 기법과 템플릿 기반 합성을 통합하여, 비-홀른 및 고차원 제약 조건을 처리할 수 있도록 확장한다.

실험 결과

연구 질문

  • RQ1일반화된 술어 제약 만족 프레임워크는 종료성, 비종료성, 전체 모달 μ-논리 모델 체킹과 같은 복잡한 검증 문제를 표현할 수 있는가?
  • RQ2$μ$CLP에서 $π$CSP$^{\Downarrow\lambda}$로의 타당하고 완전한 축소가 존재하여 제약 조건 해법을 통한 균일한 검증이 가능한가?
  • RQ3계층적 CEGIS는 $π$CSP$^{\Downarrow\lambda}$에 대해 (코)인도적 불변성과 랭킹 함수를 합성할 때 상대적 완전성과 안정적인 수렴을 달성할 수 있는가?
  • RQ4제안된 프레임워크는 표준 CHC의 표현력 이상의 실용적 검증 작업에 스케일링 가능한가?
  • RQ5이 프레임워크는 배열, 힙, 대수적 데이터 유형과 같은 더 풍부한 일阶 이론을 지원하도록 확장될 수 있는가?

주요 결과

  • 프레임워크는 표준 CHC 기반 시스템이 다루지 못하는 범위를 넘어서 전체 모달 μ-논리 모델 체킹을 포함한 다양한 검증 문제를 성공적으로 인코딩한다.
  • $μ$CLP에서 $π$CSP$^{\Downarrow\lambda}$로의 축소는 타당하고 완전하여 검증 과정의 정확성을 보장한다.
  • 계층적 CEGIS는 계층적 템플릿 가족을 통해 반례에 대한 과적합을 방지함으로써 상대적 완전성과 더 빠르고 안정적인 수렴을 가능하게 한다.
  • 구현은 종료성 및 비종료성 분석을 포함한 다양한 검증 작업에서 유망한 결과를 보이며, 이는 이전에 CHC 전용 프레임워크로는 실현 불가능했던 영역이다.
  • 프레임워크는 배열, 힙, 대수적 데이터 유형과 같은 더 풍부한 이론으로 확장 가능하며, 향후 고차원 및 확률적 술어 지원을 위한 연구가 진행 중이다.
  • $π$CSP$^{\Downarrow\lambda}$의 전체 클래스는 $μ$CLP보다 더 표현력이 뛰어나, 현재의 검증 요구를 초월한 추가 응용 가능성이 있음을 시사한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.