A Simple Functional Presentation and an Inductive Correctness Proof of the Horn Algorithm

09/13/2018
by   António Ravara, et al.
0

We present a recursive formulation of the Horn algorithm for deciding the satisfiability of propositional clauses. The usual presentations in imperative pseudo-code are informal and not suitable for simple proofs of its main properties. By defining the algorithm as a recursive function (computing a least fixed-point), we achieve: 1) a concise, yet rigorous, formalisation; 2) a clear form of visualising executions of the algorithm, step-by-step; 3) precise results, simple to state and with clean inductive proofs.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/20/2018

Breaking the Loop: Recursive Proofs for Coinductive Predicates in Fibrations

The purpose of this paper is to develop and study recursive proofs of co...
research
07/14/2022

On Pitts' Relational Properties of Domains

Andrew Pitts' framework of relational properties of domains is a powerfu...
research
04/29/2021

Extracting total Amb programs from proofs

We present a logical system CFP (Concurrent Fixed Point Logic) from whos...
research
09/13/2019

Reasoning about call-by-value: a missing result in the history of Hoare's logic

We provide a sound and relatively complete Hoare-like proof system for r...
research
04/22/2021

Ackermann's Function in Iterative Form: A Proof Assistant Experiment

Ackermann's function can be expressed using an iterative algorithm, whic...
research
01/23/2019

The Size-Change Principle for Mixed Inductive and Coinductive types

This paper describes how to use Lee, Jones and Ben Amram's size-change p...
research
04/16/2020

Removing Algebraic Data Types from Constrained Horn Clauses Using Difference Predicates

We address the problem of proving the satisfiability of Constrained Horn...

Please sign up or login with your details

Forgot password? Click here to reset