[논문 리뷰] Combining typing and size constraints for checking the termination of higher-order conditional rewrite systems
이 논문은 크기 제약과 프레스버거 산술 제약를 통합하여 고차수 조건부 재작성 시스템에 대한 새로운 종료 기준을 제안한다. 이 기준은 입력-출력 크기 관계를 정밀하게 추적할 수 있게 하여, 이전의 유형 기반 방법보다 더 복잡한 함수의 종료성 검증을 가능하게 하며, 재작성 규칙 자체의 조건을 고려한 최초의 그러한 기준이다.
In a previous work, the first author extended to higher-order rewriting and dependent types the use of size annotations in types, a termination proof technique called type or size based termination and initially developed for ML-like programs. Here, we go one step further by considering conditional rewriting and explicit quantifications and constraints on size annotations. This allows to describe more precisely how the size of the output of a function depends on the size of its inputs. Hence, we can check the termination of more functions. We first give a general type-checking algorithm based on constraint solving. Then, we give a termination criterion with constraints in Presburger arithmetic. To our knowledge, this is the first termination criterion for higher-order conditional rewriting taking into account the conditions in termination.
연구 동기 및 목표
- 복잡한 크기 의존성을 가진 고차수 조건부 재작성 시스템을 다룰 수 없는 기존의 유형 기반 종료 기법의 한계를 해결하기 위해.
- 크기 표기, 명시적 기댓값, 크기 제약를 통합하여 입력 크기와 출력 크기 간의 관계를 정밀하게 모델링할 수 있는 형식적 프레임워크를 개발하기 위해.
- 이전 방법이 忽시한 조건부 재작성 규칙 내 조건을 고려한 종료 기준을 제공하기 위해.
- 프레스버거 산술 위에서의 제약 해결을 통한 자동 종료 검증을 가능하게 하여, 이전의 크기 기반 종료 기법을 확장하기 위해.
- Coq과 같은 증명 보조 도구에 통합하기 위한 기반을 마련하기 위해, 종속적이고 다형적인 유형을 지원하기 위해.
제안 방법
- 기본 유형이 크기 표기로 인덱싱된 유형 체계를 도입하여, 항목들이 크기 범위를 반영하는 유형을 할당받을 수 있도록 한다.
- 입력과 출력 간의 복잡한 크기 관계를 표현하기 위해 크기 변수에 대한 명시적 존재 기댓값과 전칭 기댓값을 도입하여 이를 확장한다.
- 조건부 재작성 규칙은 규칙이 적용되기 위해 만족되어야 할 제약 조건으로 표기되며, 이러한 제약 조건은 크기 감소와 일관성을 확인한다.
- 크기 제약 조건이 프레스버거 산술로 표현되는 제약 해결을 사용하는 일반적인 유형 검사 알고리즘을 정의한다.
- 모든 재귀 호출이 크기가 엄격히 작은 인수를 사용하여 이루어지도록 보장하는 것에 기반한 종료 기준이다. 이는 유형과 제약 체계에 의해 보장된다.
- 고차수 함수와 인덕티브 유형을 지원하며, 실용성을 위해 일阶 패턴 매칭에 중점을 둔다.
실험 결과
연구 질문
- RQ1조건부 재작성 규칙 내 조건을 고려하면서도 고차수 조건부 재작성 시스템에 대해 크기 기반 종료를 확장할 수 있는가?
- RQ2크기 표기와 제약 조건을 어떻게 유형 체계에 통합하여 재귀 호출에서의 크기 감소를 정밀하게 묘사할 수 있는가?
- RQ3프레스버거 산술 위에서 제약 해결을 사용하는 고차수 조건부 재작성에 대해 형식적인 종료 기준을 정의할 수 있는가?
- RQ4이러한 접근 방식은 단순한 부분항 순서에 따라 종료되지 않는 함수의 종료성을 검증할 수 있는가?
- RQ5이러한 시스템은 Coq과 같이 종속적이고 다형적인 유형을 사용하는 증명 보조 도구에 적합하게 어떻게 변환될 수 있는가?
주요 결과
- 제안된 방법은 부분항 순서에 따라 단순히 종료되지 않는 매카시의 91번 함수의 종료성을 성공적으로 검증하였다.
- 기본적으로 크기 변수에 대한 존재 기댓값을 통한 크기 분해를 고려해야 하는 '피봇(pivot)'과 같은 복잡한 함수의 유형 검사를 수행할 수 있었다.
- 이 기준은 조건부 재작성 규칙 내 조건을 종료 검증 시에 명시적으로 고려한 최초의 기준이다.
- 이 방법은 고차수 함수와 인덕티브 유형을 지원하며, 이전의 크기 기반 종료 기법을 조건부 및 더 표현력 있는 시스템으로 확장한다.
- 이 기준은 대상 시스템의 클래스에 대해 타당하고 완전하며, 프레스버거 산술의 제약 조건 하에서 크기 감소를 통해 종료성을 증명할 수 있다.
- 이 프레임워크는 다형적 및 종속적 유형 체계로 확장 가능하며, 초기 결과는 Coq과 같은 증명 보조 도구에의 통합 가능성에 대한 가능성을 시사한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.