English
Related papers

Related papers: Data Type Inference for Logic Programming

200 papers

Inductive and coinductive types are commonly construed as ontological (Church-style) types, denoting canonical data-sets such as natural numbers, lists, and streams. For various purposes, notably the study of programs in the context of…

Logic in Computer Science · Computer Science 2015-07-01 Daniel M Leivant

Functional logic languages can solve equations over user-defined data and functions. Thus, the definition of an appropriate meaning of equality has a long history in these languages, ranging from reflexive equality in early equational logic…

Programming Languages · Computer Science 2019-08-29 Michael Hanus , Finn Teegen

Garcia and Cimini study a type inference problem for the ITGL, an implicitly and gradually typed language with let-polymorphism, and develop a sound and complete inference algorithm for it. Soundness and completeness mean that, if the…

Programming Languages · Computer Science 2019-09-04 Yusuke Miyazaki , Taro Sekiyama , Atsushi Igarashi

Several formal systems, such as resolution and minimal model semantics, provide a framework for logic programming. In this paper, we will survey the use of structural proof theory as an alternative foundation. Researchers have been using…

Logic in Computer Science · Computer Science 2021-11-02 Dale Miller

Strong static type systems help programmers eliminate many errors without much burden of supplying type annotations. However, this flexibility makes it highly non-trivial to diagnose ill-typed programs, especially for novice programmers.…

Programming Languages · Computer Science 2022-10-10 Chuqin Geng , Haolin Ye , Yixuan Li , Tianyu Han , Brigitte Pientka , Xujie Si

Differentiable logics are a family of quantitative logics originated in the machine learning literature. Because of their origin, differentiable logics often come equipped with analytic properties that guarantee that they are…

Logic in Computer Science · Computer Science 2026-03-02 Reynald Affeldt , Alessandro Bruni , Ekaterina Komendantskaya , Natalia Ślusarz , Kathrin Stark

Dependently typed programs contain an excessive amount of static terms which are necessary to please the type checker but irrelevant for computation. To separate static and dynamic code, several static analyses and type systems have been…

Logic in Computer Science · Computer Science 2015-07-01 Andreas Abel , Gabriel Scherer

Today, many different probabilistic programming languages exist and even more inference mechanisms for these languages. Still, most logic programming based languages use backward reasoning based on SLD resolution for inference. While these…

Logic in Computer Science · Computer Science 2011-07-27 Bernd Gutmann , Ingo Thon , Angelika Kimmig , Maurice Bruynooghe , Luc De Raedt

Humans can generate reasonable answers to novel queries (Schulz, 2012): if I asked you what kind of food you want to eat for lunch, you would respond with a food, not a time. The thought that one would respond "After 4pm" to "What would you…

Artificial Intelligence · Computer Science 2022-10-05 Felix A. Sosa , Tomer Ullman

We propose a new type system for lambda-calculus ensuring that well-typed programs can be executed in polynomial time: Dual light affine logic (DLAL). DLAL has a simple type language with a linear and an intuitionistic type arrow, and one…

Logic in Computer Science · Computer Science 2016-08-31 Patrick Baillot , Kazushige Terui

Pluggable type systems allow programmers to extend the type system of a programming language to enforce semantic properties defined by the programmer. Pluggable type systems are difficult to deploy in legacy codebases because they require…

Software Engineering · Computer Science 2025-10-06 Kazi Amanul Islam Siddiqui , Martin Kellogg

Dynamic languages (such as Python and JavaScript) offer flexibility and simplified type handling for programming, but this can also lead to an increase in type-related errors and additional overhead for compile-time type inference. As a…

Software Engineering · Computer Science 2026-04-06 Teyu Lin , Minghao Fan , Huaxun Huang , Zhirong Shen , Rongxin Wu

Theorem provers are tools that help users to write machine readable proofs. Some of this tools are also interactive. The need of such softwares is increasing since they provide proofs that are more certified than the hand written ones. Agda…

Logic in Computer Science · Computer Science 2020-02-18 Luca Ciccone

We introduce a methodology and framework for expressing general preference information in logic programming under the answer set semantics. An ordered logic program is an extended logic program in which rules are named by unique terms, and…

Artificial Intelligence · Computer Science 2007-05-23 J. P. Delgrande , T. Schaub , H. Tompits

Python type inference is challenging in practice. Due to its dynamic properties and extensive dependencies on third-party libraries without type annotations, the performance of traditional static analysis techniques is limited. Although…

Software Engineering · Computer Science 2021-06-29 Siwei Cui , Gang Zhao , Zeyu Dai , Luochao Wang , Ruihong Huang , Jeff Huang

This paper seeks to apply categorical logic to the design of artificial intelligent agents that reason symbolically about objects more richly structured than sets. Using Johnstone's sequent calculus of terms- and formulae-in-context, we…

Artificial Intelligence · Computer Science 2025-04-29 Ralph Wojtowicz

Inference algorithms for probabilistic programming are complex imperative programs with many moving parts. Efficient inference often requires customising an algorithm to a particular probabilistic model or problem, sometimes called…

Programming Languages · Computer Science 2024-12-24 Minh Nguyen , Roly Perera , Meng Wang , Steven Ramsay

We introduce a new application for inductive logic programming: learning the semantics of programming languages from example evaluations. In this short paper, we explored a simplified task in this domain using the Metagol meta-interpretive…

Programming Languages · Computer Science 2019-07-23 Sándor Bartha , James Cheney

Linear constraints are the linear counterpart of Haskell's class constraints. Linearly typed parameters allow the programmer to control resources such as file handles and manually managed memory as linear arguments. Indeed, a linear type…

Programming Languages · Computer Science 2026-04-24 Arnaud Spiwack , Csongor Kiss , Jean-Philippe Bernardy , Nicolas Wu , Richard A. Eisenberg

A type system is introduced for a generic Object Oriented programming language in order to infer resource upper bounds. A sound andcomplete characterization of the set of polynomial time computable functions is obtained. As a consequence,…

Programming Languages · Computer Science 2018-02-20 Emmanuel Hainry , Romain Péchoux