Abstract
Inference systems are a widespread framework used to define possibly recursive predicates by means of inference rules. They allow both inductive and coinductive interpretations that are fairly well-studied. In this paper, we consider a middle way interpretation, called regular, which combines advantages of both approaches: it allows non-well-founded reasoning while being finite. We show that the natural proof-theoretic definition of the regular interpretation, based on regular trees, coincides with a rational fixed point. Then, we provide an equivalent inductive characterization, which leads to an algorithm which looks for a regular derivation of a judgment. Relying on these results, we define proof techniques for regular reasoning: the regular coinduction principle, to prove completeness, and an inductive technique to prove soundness, based on the inductive characterization of the regular interpretation. Finally, we show the regular approach can be smoothly extended to inference systems with corules, a recently introduced, generalised framework, which allows one to refine the coinductive interpretation, proving that also this flexible regular interpretation admits an equivalent inductive characterisation.
Highlights
Non-well-founded structures, such as graphs and streams, are ubiquitous in computer science
The resulting algorithm behaves as follows: we start from a judgement j with an empty set of circular hypotheses, we try to build a regular derivation for j using rules in I, exactly the same way as for standard regular coinduction; but, this time, when we find a cycle, say for a judgement j, we trigger another procedure, which looks for a finite derivation for j in μ I ∪ Ico
We have considered regular reasoning, an interesting middle way between induction and coinduction, combining advantages of both approaches: it is not restricted to finite derivations, overcoming limitations of the inductive approach, but it still has a finite nature, as a regular derivation can only contain finitely many judgements
Summary
Non-well-founded structures, such as graphs and streams, are ubiquitous in computer science. Defining and proving properties of this kind of structures in a natural way is a challenging problem. The natural way to deal with such structures is by coinduction, the dual of induction, which allows non-well-founded reasoning. A widespread approach to structure formal reasoning is by inference rules, which define the steps we can do to prove judgements we are interested in. They support both inductive and coinductive reasoning in a pretty natural way: in inductive reasoning we are only allowed to use finite derivations, while in the coinductive one we can prove judgements by arbitrary, finite or infinite, derivations, coinductive reasoning can properly handle non-well-founded structures. Key words and phrases: coinduction, inference systems, regular trees, fixed points
Published Version (
Free)
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have