English
Related papers

Related papers: Semi-continuous Sized Types and Termination

200 papers

This paper introduces a new methodology for the complexity analysis of higher-order functional programs, which is based on three components: a powerful type system for size analysis and a sound type inference procedure for it, a ticking…

Logic in Computer Science · Computer Science 2017-04-20 Martin Avanzini , Ugo Dal Lago

Several authors devised type-based termination criteria for ML-like languages allowing non-structural recursive calls. We extend these works to general rewriting and dependent types, hence providing a powerful termination criterion for the…

Logic in Computer Science · Computer Science 2007-05-23 Frederic Blanqui

We introduce an operational rewriting-based semantics for strictly positive nested higher-order (co)inductive types. The semantics takes into account the "limits" of infinite reduction sequences. This may be seen as a refinement and…

Logic in Computer Science · Computer Science 2023-06-22 Łukasz Czajka

Termination is a central property in sequential programming models: a term is terminating if all its reduction sequences are finite. Termination is also important in concurrency in general, and for message-passing programs in particular. A…

Logic in Computer Science · Computer Science 2023-08-03 Joseph W. N. Paulus , Jorge A. Pérez , Daniele Nantes-Sobrinho

A standard informal method for analyzing the asymptotic complexity of a program is to extract a recurrence that describes its cost in terms of the size of its input, and then to compute a closed-form upper bound on that recurrence. We give…

Programming Languages · Computer Science 2022-08-09 Norman Danner , Daniel R. Licata

Pattern-matching programming is an example of a rule-based programming style developed in functional languages. This programming style is intensively used in dialects of ML but is restricted to algebraic data-types. This restriction limits…

Programming Languages · Computer Science 2009-12-25 Julien Cohen

This paper introduces a new methodology for the complexity analysis of higher-order functional programs, which is based on three ingredients: a powerful type system for size analysis and a sound type inference procedure for it, a ticking…

Logic in Computer Science · Computer Science 2017-06-29 Martin Avanzini , Ugo Dal Lago

This dissertation introduces executable refinement types, which refine structural types by semi-decidable predicates, and establishes their metatheory and accompanying implementation techniques. These results are useful for undecidable type…

Programming Languages · Computer Science 2014-03-14 Kenneth Knowles

In this paper, we survey the complexity of distinct methods that allow the programmer to synthesize a sup-interpretation, a function providing an upper- bound on the size of the output values computed by a program. It consists in a static…

Computational Complexity · Computer Science 2012-11-29 Romain Péchoux

We explore recursive programming with extensible data types. Row types make the structure of data types first class, and can express a variety of type system features including record subtyping and combination of case branches. Our goal is…

Programming Languages · Computer Science 2025-07-23 Alex Hubers , Apoorv Ingle , Andrew Marmaduke , J. Garrett Morris

Active object systems are a model of distributed computation that has been adopted for modelling distributed systems and business process workflows. This field of modelling is, in essence, concurrent and resource-aware, motivating the…

Programming Languages · Computer Science 2025-08-22 Francesco Dagnino , Paola Giannini , Violet Ka I Pun , Ulises Torrella

This paper proposes a type-and-effect system called Teqt, which distinguishes terminating terms and total functions from possibly diverging terms and partial functions, for a lambda calculus with general recursion and equality types. The…

Programming Languages · Computer Science 2010-12-23 Aaron Stump , Vilhelm Sjöberg , Stephanie Weirich

We consider the dimensions of finite type of representations of a partially ordered set, i.e. such that there is only finitely many isomorphism classes of representations of this dimension. We give a criterion for a dimension to be of…

Representation Theory · Mathematics 2012-01-24 Yuriy A. Drozd , Eugene A. Kubichka

We present a rich type system with subtyping for an extension of System F. Our type constructors include sum and product types, universal and existential quantifiers, inductive and coinductive types. The latter two size annotations allowing…

Logic in Computer Science · Computer Science 2017-07-12 Rodolphe Lepigre , Christophe Raffalli

Proving program termination is typically done by finding a well-founded ranking function for the program states. Existing termination provers typically find ranking functions using either linear algebra or templates. As such they are often…

Logic in Computer Science · Computer Science 2014-10-21 Cristina David , Daniel Kroening , Matt Lewis

Termination is a major question in both logic and computer science. In logic, termination is at the heart of proof theory where it is usually called strong normalization (of cut elimination). In computer science, termination has always been…

Logic in Computer Science · Computer Science 2016-08-16 Frédéric Blanqui , Jean-Pierre Jouannaud , Albert Rubio

Motivated by recent results of Kapron and Steinberg (LICS 2018) we introduce new forms of iteration on length in the setting of applied lambda-calculi for higher-type poly-time computability. In particular, in a type-two setting, we…

Computational Complexity · Computer Science 2019-08-15 Bruce M. Kapron , Florian Steinberg

Session types, types for structuring communication between endpoints in distributed systems, are recently being integrated into mainstream programming languages. In practice, a very important notion for dealing with such types is that of…

Programming Languages · Computer Science 2023-06-22 Mario Bravetti , Marco Carbone , Julien Lange , Nobuko Yoshida , Gianluigi Zavattaro

This paper proposes bimorphic recursion, which is restricted polymorphic recursion such that every recursive call in the body of a function definition has the same type. Bimorphic recursion allows us to assign two different types to a…

Logic in Computer Science · Computer Science 2011-06-08 Makoto Tatsuta , Ferruccio Damiani

We define the syntax and reduction relation of a recursively typed lambda calculus with a parallel case-function (a parallel conditional). The reduction is shown to be confluent. We interpret the recursive types as information systems in a…

Logic in Computer Science · Computer Science 2008-06-12 Fritz Müller