English
Related papers

Related papers: The role of logical interpretations in program dev…

200 papers

Refinement Reflection turns your favorite programming language into a proof assistant by reflecting the code implementing a user-defined function into the function's (output) refinement type. As a consequence, at uses of the function, the…

Programming Languages · Computer Science 2016-10-18 Niki Vazou , Ranjit Jhala

Algorithmic and data refinement are well studied topics that provide a mathematically rigorous approach to gradually introducing details in the implementation of software. Program refinements are performed in the context of some programming…

Programming Languages · Computer Science 2016-06-08 Jason Koenig , K. Rustan M. Leino

Modern program verifiers use logic-based encodings of the verification problem that are discharged by a back end reasoning engine. However, instances of such encodings for large programs can quickly overwhelm these back end solvers. Hence,…

Logic in Computer Science · Computer Science 2016-07-18 Peter Schrammel

The paper discusses the role of interpretations, understood as multifunctions that preserve and reflect logical consequence, as refinement witnesses in the general setting of pi-institutions. This leads to a smooth generalization of the…

Logic in Computer Science · Computer Science 2019-08-15 César Rodrigues , Manuel A. Martins , Alexandre Madeira , Luis S. Barbosa

Many tools used to process programs, like compilers, analyzers, or verifiers, perform transformations on their intermediate program representation, like abstract syntax trees. Implementing such program transformations is a non-trivial task,…

Programming Languages · Computer Science 2026-01-21 Michael Hanus , Steven Libby

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

Modern answer set programming solvers such as CLINGO support advanced language constructs that improve the expressivity and conciseness of logic programs. Conditional literals are one such construct. They form "subformulas" that behave as…

Logic in Computer Science · Computer Science 2025-11-04 Zachary Hansen , Yuliya Lierler

We consider a simple extension of logic programming where variables may range over goals and goals may be arguments of predicates. In this language we can write logic programs which use goals as data. We give practical evidence that, by…

Programming Languages · Computer Science 2007-05-23 Alberto Pettorossi , Maurizio Proietti

The language of epistemic specifications and epistemic logic programs extends disjunctive logic programs under the stable model semantics with modal constructs called subjective literals. Using subjective literals, it is possible to check…

Artificial Intelligence · Computer Science 2021-10-06 Jorge Fandinno , Wolfgang Faber , Michael Gelfond

Early stages of system development involve outlining desired features such as functionality, availability, or usability. Specifications are derived from these features that concretize vague ideas presented in natural languages. The…

Software Engineering · Computer Science 2014-10-09 Rongjie Yan , Chih-Hong Cheng , Guangquan Zhang , Yesheng Chai

Refinement types turn typechecking into lightweight verification. The classic form of refinement type is the datasort refinement, in which datasorts identify subclasses of inductive datatypes. Existing type systems for datasort refinements…

Programming Languages · Computer Science 2020-11-17 Jana Dunfield

The possibility of translating logic programs into functional ones has long been a subject of investigation. Common to the many approaches is that the original logic program, in order to be translated, needs to be well-moded and this has…

Programming Languages · Computer Science 2007-05-23 S. Etalle , J. Mountjoy

The fast development of Large Language Models (LLMs) offers growing opportunities to further improve sequential recommendation systems. Yet for some practitioners, integrating LLMs to their existing base recommendation systems raises…

Information Retrieval · Computer Science 2025-04-17 Nanshan Jia , Chenfei Yuan , Yuhang Wu , Zeyu Zheng

Formal software specification is known to enable early error detection and explicit invariants, yet it has seen limited industrial adoption due to its high notation overhead and the expertise required to use traditional formal languages.…

Software Engineering · Computer Science 2026-01-16 Antonio Abu Nassar , Eitan Farchi

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…

Programming Languages · Computer Science 2019-08-02 Luís Caires , Bernardo Toninho

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

This thesis introduces the "method of structural refinement", which serves as a means of transforming the relational semantics of a modal and/or constructive logic into an 'economical' proof system by connecting two proof-theoretic…

Logic in Computer Science · Computer Science 2021-08-02 Tim Lyon

This paper aims at integrating heterogeneous documents used in pragmatic software develpoment methods to describe views with a formal refinement based software development process. Therefore we propose an integrated semantics of…

Software Engineering · Computer Science 2014-10-16 Barbara Paech , Bernhard Rumpe

In David Schmidt's PhD work he explored the use of denotational semantics as a programming language. It was part of an effort to not only treat formal semantics as specifications but also as interpreters and input to compiler generators.…

Programming Languages · Computer Science 2013-09-23 Mads Rosendahl

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