Table of Contents
Fetching ...

Coinductive Techniques for Checking Satisfiability of Generalized Nested Conditions

Lara Stoltenow, Barbara König, Sven Schneider, Andrea Corradini, Leen Lambers, Fernando Orejas

TL;DR

This work studies nested conditions, a generalization of first-order logic to a categorical setting, and provides a tableau-based (semi-decision) procedure for checking (un)satisfiability and finite model generation, which generalizes earlier results on graph conditions.

Abstract

We study nested conditions, a generalization of first-order logic to a categorical setting, and provide a tableau-based (semi-decision) procedure for checking (un)satisfiability and finite model generation. This generalizes earlier results on graph conditions. Furthermore we introduce a notion of witnesses, allowing the detection of infinite models in some cases. To ensure completeness, paths in a tableau must be fair, where fairness requires that all parts of a condition are processed eventually. Since the correctness arguments are non-trivial, we rely on coinductive proof methods and up-to techniques that structure the arguments. We distinguish between two types of categories: categories where all sections are isomorphisms, allowing for a simpler tableau calculus that includes finite model generation; in categories where this requirement does not hold, model generation does not work, but we still obtain a sound and complete calculus.

Coinductive Techniques for Checking Satisfiability of Generalized Nested Conditions

TL;DR

This work studies nested conditions, a generalization of first-order logic to a categorical setting, and provides a tableau-based (semi-decision) procedure for checking (un)satisfiability and finite model generation, which generalizes earlier results on graph conditions.

Abstract

We study nested conditions, a generalization of first-order logic to a categorical setting, and provide a tableau-based (semi-decision) procedure for checking (un)satisfiability and finite model generation. This generalizes earlier results on graph conditions. Furthermore we introduce a notion of witnesses, allowing the detection of infinite models in some cases. To ensure completeness, paths in a tableau must be fair, where fairness requires that all parts of a condition are processed eventually. Since the correctness arguments are non-trivial, we rely on coinductive proof methods and up-to techniques that structure the arguments. We distinguish between two types of categories: categories where all sections are isomorphisms, allowing for a simpler tableau calculus that includes finite model generation; in categories where this requirement does not hold, model generation does not work, but we still obtain a sound and complete calculus.