A Verified Efficient Implementation of the Weighted Path Order

07/27/2023
by   René Thiemann, et al.
0

The Weighted Path Order of Yamada is a powerful technique for proving termination. It is also supported by CeTA, a certifier for checking untrusted termination proofs. To be more precise, CeTA contains a verified function that computes for two terms whether one of them is larger than the other for a given WPO, i.e., where all parameters of the WPO have been fixed. The problem of this verified function is its exponential runtime in the worst case. Therefore, in this work we develop a polynomial time implementation of WPO that is based on memoization. It also improves upon an earlier verified implementation of the Recursive Path Order: the RPO-implementation uses full terms as keys for the memory, a design which simplified the soundness proofs, but has some runtime overhead. In this work, keys are just numbers, so that the lookup in the memory is faster. Although trivial on paper, this change introduces some challenges for the verification task.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/20/2023

Automated Termination Proofs for C Programs with Lists (Short WST Version)

There are many techniques and tools for termination of C programs, but u...
research
12/28/2021

A proof system for graph (non)-isomorphism verification

In order to be able to apply graph isomorphism checking within interacti...
research
05/20/2023

Proving Termination of C Programs with Lists

There are many techniques and tools to prove termination of C programs, ...
research
06/13/2018

TTT2 with Termination Templates for Teaching

On the one hand, checking specific termination proofs by hand, say using...
research
02/05/2023

The Marriage of Effects and Rewrites

In the research on computational effects, defined algebraically, effect ...
research
12/07/2019

Modular Termination Checking Theorems for Second-Order Computation

We present new theorems of modular termination checking for second-order...

Please sign up or login with your details

Forgot password? Click here to reset