The Extended Theory of Trees and Algebraic (Co)datatypes

by   Fabian Zaiser, et al.

The first-order theory of finite and infinite trees has been studied since the eighties, especially by the logic programming community. Following Djelloul, Dao and Frühwirth, we consider an extension of this theory with an additional predicate for finiteness of trees, which is useful for expressing properties about (not just datatypes but also) codatatypes. Based on their work, we present a simplification procedure that determines whether any given (not necessarily closed) formula is satisfiable, returning a simplified formula which enables one to read off all possible models. Our extension makes the algorithm usable for algebraic (co)datatypes, which was impossible in their original work due to restrictive assumptions. We also provide a prototype implementation of our simplification procedure and evaluate it on instances from the SMT-LIB.


page 1

page 2

page 3

page 4


Politeness for the Theory of Algebraic Datatypes

Algebraic datatypes, and among them lists and trees, have attracted a lo...

On Computing the Measures of First-Order Definable Sets of Trees

We consider the problem of computing the measure of a regular language o...

MSO+nabla is undecidable

This paper is about an extension of monadic second-order logic over infi...

Monitoring of Traffic Manoeuvres with Imprecise Information

In monitoring, we algorithmically check if a single behavior satisfies a...

Extension of Boolean algebra by a Bayesian operator; application to the definition of a Deterministic Bayesian Logic

This work contributes to the domains of Boolean algebra and of Bayesian ...

Nominal C-Unification

Nominal unification is an extension of first-order unification that take...

Type-Theoretic Approaches to Ordinals

In a constructive setting, no concrete formulation of ordinal numbers ca...