English
Related papers

Related papers: The Best of Both Worlds: Linear Functional Program…

200 papers

This paper introduces a simple type system for combinatory logic in which combinators have at most one type, whose polymorphism is revealed by application. The combinatory types exactly describe the structure of their values, which may be…

Logic in Computer Science · Computer Science 2026-04-15 Barry Jay , Johannes Bader

In machine learning (ML), researchers and engineers seem to be at odds. System implementers would prefer models to be declarative, with detailed type information and semantic restrictions that allow models to be optimised, rearranged and…

Programming Languages · Computer Science 2022-06-23 Michael Innes

We consider the non-deterministic extension of the call-by-value lambda calculus, which corresponds to the additive fragment of the linear-algebraic lambda-calculus. We define a fine-grained type system, capturing the right linearity…

Logic in Computer Science · Computer Science 2012-09-12 Alejandro Díaz-Caro , Barbara Petit

We propose a call-by-value lambda calculus extended with a new construct inspired by abductive inference and motivated by the programming idioms of machine learning. Although syntactically simple the abductive construct has a complex and…

Programming Languages · Computer Science 2017-10-12 Koko Muroya , Steven Cheung , Dan R. Ghica

Answer set programming - the most popular problem solving paradigm based on logic programs - has been recently extended to support uninterpreted function symbols. All of these approaches have some limitation. In this paper we propose a…

Artificial Intelligence · Computer Science 2010-07-22 Sabrina Baselice , Piero A. Bonatti

Among the various forms of reasoning studied in the context of artificial intelligence, qualitative reasoning makes it possible to infer new knowledge in the context of imprecise, incomplete information without numerical values. In this…

Artificial Intelligence · Computer Science 2026-02-10 Quentin Cohen-Solal , Alexandre Niveau , Maroua Bouzid

Ordered logics and type systems have been used in a variety of applications including computational linguistics, memory allocation, stream processing, logical frameworks, parametricity, and enforcing security protocols. In most…

Logic in Computer Science · Computer Science 2026-05-20 Sophia Roshal , Frank Pfenning

We present the guarded lambda-calculus, an extension of the simply typed lambda-calculus with guarded recursive and coinductive types. The use of guarded recursive types ensures the productivity of well-typed programs. Guarded recursive…

Logic in Computer Science · Computer Science 2019-03-14 Ranald Clouston , Aleš Bizjak , Hans Bugge Grathwohl , Lars Birkedal

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

It is widely acknowledged that function symbols are an important feature in answer set programming, as they make modeling easier, increase the expressive power, and allow us to deal with infinite domains. The main issue with their…

Artificial Intelligence · Computer Science 2020-02-19 Marco Calautti , Sergio Greco , Cristian Molinaro , Irina Trubitsyna

Fair termination is the property of programs that may diverge "in principle" but that terminate "in practice", i.e. under suitable fairness assumptions concerning the resolution of non-deterministic choices. We study a conservative…

Logic in Computer Science · Computer Science 2022-07-11 Luca Ciccone , Luca Padovani

Session types capture precise protocol structure in concurrent programming, but do not specify properties of the exchanged values beyond their basic type. Refinement types are a form of dependent types that can address this limitation,…

Logic in Computer Science · Computer Science 2012-11-20 Pedro Baltazar , Dimitris Mostrous , Vasco T. Vasconcelos

We present the guarded lambda-calculus, an extension of the simply typed lambda-calculus with guarded recursive and coinductive types. The use of guarded recursive types ensures the productivity of well-typed programs. Guarded recursive…

Programming Languages · Computer Science 2015-01-16 Ranald Clouston , Aleš Bizjak , Hans Bugge Grathwohl , Lars Birkedal

Effectful programs interact in ways that go beyond simple input-output, making compositional reasoning challenging. Existing work has shown that when such programs are ``separate'', i.e., when programs do not interfere with each other, it…

Programming Languages · Computer Science 2023-03-06 Pedro H. Azevedo de Amorim , Justin Hsu

Despite their simplicity, linear models perform well at time series forecasting, even when pitted against deeper and more expensive models. A number of variations to the linear model have been proposed, often including some form of feature…

Machine Learning · Computer Science 2024-03-26 William Toner , Luke Darlow

Types in logic programming have focused on conservative approximations of program semantics by regular types, on one hand, and on type systems based on a prescriptive semantics defined for typed programs, on the other. In this paper, we…

Logic in Computer Science · Computer Science 2019-09-19 João Barbosa , Mário Florido , Vítor Santos Costa

While modern software development heavily uses versioned packages, programming languages rarely support the concept of versions in their semantics, which makes software updates more bulky and unsafe. This paper proposes a programming…

Programming Languages · Computer Science 2021-07-16 Yudai Tanabe , Luthfan Anshar Lubis , Tomoyuki Aotani , Hidehiko Masuhara

We show that any multiple-valued function can be represented by a linear lambda term typed in a second-order polymorphic type system, using two distinct styles. The first is a circuit style, which mimics combinational circuits in switching…

Programming Languages · Computer Science 2026-03-30 Satoshi Matsuoka

Many logic programming based approaches can be used to describe and solve combinatorial search problems. On the one hand there are definite programs and constraint logic programs that compute a solution as an answer substitution to a query…

Logic in Computer Science · Computer Science 2007-05-23 Nikolay Pelov , Emmanuel De Mot , Maurice Bruynooghe

We show that time complexity analysis of higher-order functional programs can be effectively reduced to an arguably simpler (although computationally equivalent) verification problem, namely checking first-order inequalities for validity.…

Logic in Computer Science · Computer Science 2012-10-26 Ugo Dal Lago , Barbara Petit