Generalizing Inference Systems by Coaxioms

@inproceedings{Ancona2017GeneralizingIS,
  title={Generalizing Inference Systems by Coaxioms},
  author={Davide Ancona and Francesco Dagnino and Elena Zucca},
  booktitle={ESOP},
  year={2017}
}
After surveying classical results, we introduce a generalized notion of inference system to support structural recursion on non-well-founded data types. Besides axioms and inference rules with the usual meaning, a generalized inference system allows coaxioms, which are, intuitively, axioms which can only be applied "at infinite depth" in a proof tree. This notion nicely subsumes standard inference systems and their inductive and coinductive interpretation, while providing more flexibility… 
Coaxioms: flexible coinductive definitions by inference systems
TLDR
A generalized notion of inference system is introduced to support more flexible interpretations of recursive definitions, thus allowing formal reasoning in cases where the inductive and coinductive interpretation do not provide the intended meaning, but are rather mixed together.
Foundations of regular coinduction
TLDR
This paper shows that the natural proof-theoretic definition of the regular interpretation, based on regular trees, coincides with a rational fixed point and provides an equivalent inductive characterization, which leads to an algorithm which looks for a regular derivation of a judgment.
Modeling Infinite Behaviour by Corules
TLDR
It is shown that the approach can be successfully extended to more sophisticated notions of infinite behaviour, that is, to express that a diverging computation produces some possibly infinite result.
Reasoning on divergent computations with coaxioms
TLDR
A novel approach based on coaxioms to capture divergence in semantic definitions by allowing inductive and coinductive semantic rules to be merged together for defining a unique semantic judgment is proposed.
Flexible coinductive logic programming
TLDR
This work provides a detailed formal account of an extension of logic programming supporting flexible coinduction, and proves that the operational semantics is sound and complete with respect to declarative semantics restricted to finite comodels.
Extending Coinductive Logic Programming with Co-Facts
TLDR
A generalized logic programming paradigm where programs, consisting of facts and rules with the usual syntax, can be enriched by co-facts, which syntactically resemble facts but have a special meaning, hence inductive and coinductive predicates can coexist in the same program.
Flexible Coinduction in Agda
TLDR
This thesis presents how Agda supports inductive and coinductive types highlighting the fact that data structures and predicates are defined using the same constructs and investigates how generalized inference systems can be implemented and how their correctness can be proved.
Flexible Coinduction for Infinite Behaviour
TLDR
This communication surveys results of generalized inference systems successfully adopted to define semantic judgments which uniformly model finite and infinite computations and outlines directions for further developments.
An inductive abstract semantics for coFJ
TLDR
It is conjecture that completeness with respect to the regular subset of such semantics holds as well, based on the fact that in the proposed semantics detection of cycles is non-deterministic, that is, does not necessarily happens the first time a cycle is found.
Sound Regular Corecursion in coFJ
The aim of the paper is to provide solid foundations for a programming paradigm natively supporting the creation and manipulation of cyclic data structures. To this end, we describe coFJ, a Java-like
...
...

References

SHOWING 1-10 OF 60 REFERENCES
Reasoning on divergent computations with coaxioms
TLDR
A novel approach based on coaxioms to capture divergence in semantic definitions by allowing inductive and coinductive semantic rules to be merged together for defining a unique semantic judgment is proposed.
Extending Coinductive Logic Programming with Co-Facts
TLDR
A generalized logic programming paradigm where programs, consisting of facts and rules with the usual syntax, can be enriched by co-facts, which syntactically resemble facts but have a special meaning, hence inductive and coinductive predicates can coexist in the same program.
Regular corecursion in Prolog
TLDR
This paper proposes two main alternative vanilla meta-interpreters to support regular co-recursion in Prolog as an interesting programming style in its own right, able to elegantly solve problems that would require more complex code if conventional recursion were used.
Language Constructs for Non-Well-Founded Computation
TLDR
This paper proposes programming language constructs that would allow the specification of alternative solutions and methods to compute them, and gives numerous examples in which it would be useful to do so: free variables, α-conversion, and substitution in infinitary λ-terms; halting probabilities and expected running times of probabilistic protocols; abstract interpretation; and constructions involving finite automata.
Coinductive Type Systems for Object-Oriented Languages
TLDR
A novel approach based on coinductive logic to specify type systems of programming languages, which involves infinite terms and proof trees not representable in a finite way, thus providing a theoretical limit to type inference of object-oriented programs.
The power of parameterization in coinductive proof
TLDR
This paper shows how to support coinductive proofs that are both compositional and incremental, using a dead simple construction the authors call the parameterized greatest fixed point, and presents the lattice-theoretic foundations of parameterized coinduction, and explores its mechanization in proof assistants like Coq and Isabelle.
Sound and Complete Subtyping between Coinductive Types for Object-Oriented Languages
TLDR
This work studies semantic subtyping between coinductive types with records and unions, and develops and implements a sound and complete top-down direct and effective algorithm for deciding it.
Making choices lazily
TLDR
A natural semantics that models the untyped, normal order A-calculus plus McCarthy’s amb in the context of call-by-need parameter passing, allowing it to distinguish programs that differ only in their divergent behaviour and is more discriminating than current domain-theoretic models.
Elgot Algebras
TLDR
It is proved that the category of Elgot algebras is the Eilenberg–Moore category of the monad given by a free iterative theory, and two axioms stem canonically from Elgot’s iterative theories.
Wellfounded recursion with copatterns: a unified approach to termination and productivity
TLDR
A type-based approach to strong normalization of a core language based on System F-omega by tracking size information about finite and infinite data in the type which guarantees compositionality.
...
...