中文
相关论文

相关论文: Well-Typed Logic Programs Are not Wrong

200 篇论文

Refinement types enable lightweight verification of functional programs. Algorithms for statically inferring refinement types typically work by reduction to solving systems of constrained Horn clauses extracted from typing derivations. An…

编程语言 · 计算机科学 2020-11-11 Zvonimir Pavlinovic , Yusen Su , Thomas Wies

Many object-oriented dynamic languages allow programmers to _extract methods_ from objects and treat them as functions. This allows for flexible programming patterns, but presents challenges for type systems. In particular, a simple…

编程语言 · 计算机科学 2021-11-23 Yuquan Fu , Sam Tobin-Hochstadt

This work introduces the novel concept of kind refinement, which we develop in the context of an explicitly polymorphic ML-like language with type-level computation. Just as type refinements embed rich specifications by means of…

编程语言 · 计算机科学 2019-08-02 Luís Caires , Bernardo Toninho

Recursive relational specifications are commonly used to describe the computational structure of formal systems. Recent research in proof theory has identified two features that facilitate direct, logic-based reasoning about such…

计算机科学中的逻辑 · 计算机科学 2010-09-24 Andrew Gacek , Dale Miller , Gopalan Nadathur

We describe a type system for the linear-algebraic lambda-calculus. The type system accounts for the part of the language emulating linear operators and vectors, i.e. it is able to statically describe the linear combinations of terms…

计算机科学中的逻辑 · 计算机科学 2012-08-01 Pablo Arrighi , Alejandro Díaz-Caro , Benoît Valiron

Disjunctive finitary programs are a class of logic programs admitting function symbols and hence infinite domains. They have very good computational properties, for example ground queries are decidable while in the general case the stable…

人工智能 · 计算机科学 2009-05-25 Sabrina Baselice , Piero A. Bonatti , Giovanni Criscuolo

Higher-order logic programming is an interesting extension of traditional logic programming that allows predicates to appear as arguments and variables to be used where predicates typically occur. Higher-order characteristics are indeed…

编程语言 · 计算机科学 2018-12-04 Antonis Troumpoukis , Angelos Charalambidis

In the logic programming paradigm, a program is defined by a set of methods, each of which can be executed when specific conditions are met during the current state of an execution. The semantics of these programs can be elegantly…

计算机科学中的逻辑 · 计算机科学 2024-10-02 Matteo Acclavio , Roberto Maieli

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,…

编程语言 · 计算机科学 2018-02-20 Emmanuel Hainry , Romain Péchoux

Benefits of static type systems are well-known: they offer guarantees that no type error will occur during runtime and, inherently, inferred types serve as documentation on how functions are called. On the other hand, many type systems have…

编程语言 · 计算机科学 2020-08-31 Isabel Wingen , Philipp Körner

Type systems certify program properties in a compositional way. From a bigger program one can abstract out a part and certify the properties of the resulting abstract program by just using the type of the part that was abstracted away.…

计算机科学中的逻辑 · 计算机科学 2012-02-17 Andreas Abel

Guarded recursion is a powerful modal approach to recursion that can be seen as an abstract form of step-indexing. It is currently used extensively in separation logic to model programming languages with advanced features by solving domain…

计算机科学中的逻辑 · 计算机科学 2022-06-06 Magnus Baunsgaard Kristensen , Rasmus Ejlers Møgelberg , Andrea Vezzosi

Intersection types are an essential tool in the analysis of operational and denotational properties of lambda-terms and functional programs. Among them, non-idempotent intersection types provide precise quantitative information about the…

计算机科学中的逻辑 · 计算机科学 2019-11-06 Thomas Ehrhard

The semantics of the Prolog ``cut'' construct is explored in the context of some desirable properties of logic programming systems, referred to as the witness properties. The witness properties concern the operational consistency of…

编程语言 · 计算机科学 2007-05-23 James H. Andrews

Our position is that logic programming is not programming in the Horn clause sublogic of classical logic, but programming in a logic of (inductive) definitions. Thus, the similarity between prototypical Prolog programs (e.g., member,…

计算机科学中的逻辑 · 计算机科学 2023-04-27 Marc Denecker , David S. Warren

We introduce a method of verifying termination of logic programs with respect to concrete queries (instead of abstract query patterns). A necessary and sufficient condition is established and an algorithm for automatic verification is…

人工智能 · 计算机科学 2007-05-23 Yi-Dong Shen , Li-Yan Yuan , Jia-Huai You

Logic programming languages present clear advantages in terms of declarativeness and conciseness. However, the ideas of logic programming have been met with resistance in other programming communities, and have not generally been adopted by…

编程语言 · 计算机科学 2026-01-08 Ivan Perez , Angel Herranz

Logic programming has developed as a rich field, built over a logical substratum whose main constituent is a nonclassical form of negation, sometimes coexisting with classical negation. The field has seen the advent of a number of…

计算机科学中的逻辑 · 计算机科学 2011-05-09 Éric A. Martin

Processing programs as data is one of the successes of functional and logic programming. Higher-order functions, as program-processing programs are called in functional programming, and meta-programs, as they are called in logic…

计算机科学中的逻辑 · 计算机科学 2020-04-21 François Bry

Dynamically typed object-oriented languages enable programmers to write elegant, reusable and extensible programs. However, with the current methodology for program verification, the absence of static type information creates significant…

编程语言 · 计算机科学 2015-01-13 Björn Engelmann , Ernst-Rüdiger Olderog , Nils Erik Flick