English
Related papers

Related papers: Translating declarative control elements to impera…

200 papers

Testing is one of the most indispensable tasks in software engineering. The role of testing in software development has grown significantly because testing is able to reveal defects in the code in an early stage of development. Many unit…

Software Engineering · Computer Science 2010-12-07 Norbert Pataki

In a recent paper, a realizability technique has been used to give a semantics of a quantum lambda calculus. Such a technique gives rise to an infinite number of valid typing rules, without giving preference to any subset of those. In this…

Logic in Computer Science · Computer Science 2023-06-22 Alejandro Díaz-Caro , Octavio Malherbe

Developers relax restrictions on a type to reuse methods with other types. While type casts are prevalent, in weakly typed languages such as C++, they are also extremely permissive. Assignments where a source expression is cast into a new…

Software Engineering · Computer Science 2023-04-17 Constantin Cezar Petrescu , Sam Smith , Rafail Giavrimis , Santanu Kumar Dash

Motivations like domain adaptation, transfer learning, and feature learning have fueled interest in inducing embeddings for rare or unseen words, n-grams, synsets, and other textual features. This paper introduces a la carte embedding, a…

Computation and Language · Computer Science 2018-05-16 Mikhail Khodak , Nikunj Saunshi , Yingyu Liang , Tengyu Ma , Brandon Stewart , Sanjeev Arora

Description Logics (DLs) are a family of knowledge representation formalisms mainly characterised by constructors to build complex concepts and roles from atomic ones. Expressive role constructors are important in many applications, but can…

Logic in Computer Science · Computer Science 2007-05-23 Ian Horrocks , Ulrike Sattler , Stephan Tobies

Incremental computation has recently been studied using the concepts of change structures and derivatives of programs, where the derivative of a function allows updating the output of the function based on a change to its input. We…

Programming Languages · Computer Science 2018-11-26 Mario Alvarez-Picallo , Alex Eyers-Taylor , Michael Peyton Jones , C. -H. Luke Ong

Extending the lambda-calculus with a construct for sharing, such as let expressions, enables a special representation of terms: iterated applications are decomposed by introducing sharing points in between any two of them, reducing to the…

Logic in Computer Science · Computer Science 2019-07-16 Beniamino Accattoli , Andrea Condoluci , Giulio Guerrieri , Claudio Sacerdoti Coen

Automatic verification of concurrent programs faces state explosion due to the exponential possible interleavings of its sequential components coupled with large or infinite state spaces. An alternative is deductive verification, where…

Programming Languages · Computer Science 2024-01-01 Yuan Xia , Jyotirmoy V. Deshmukh , Mukund Raghothaman , Srivatsan Ravi

We define a compilation scheme for a constructor-based, strongly-sequential, graph rewriting system which shortcuts some needed steps. The object code is another constructor-based graph rewriting system. This system is normalizing for the…

Programming Languages · Computer Science 2015-05-28 Sergio Antoy , Jacob Johannsen , Steven Libby

Modular deductive verification is a powerful technique capable to show that each function in a program satisfies its contract. However, function contracts do not provide a global view of which high-level (e.g. security-related properties of…

Software Engineering · Computer Science 2019-02-26 Virgile Robles , Nikolai Kosmatov , Virgile Prevosto , Louis Rilling , Pascale Le Gall

We define a new decidable logic for expressing and checking invariants of programs that manipulate dynamically-allocated objects via pointers and destructive pointer updates. The main feature of this logic is the ability to limit the…

Logic in Computer Science · Computer Science 2007-06-13 Greta Yorsh , Alexander Rabinovich , Mooly Sagiv , Antoine Meyer , Ahmed Bouajjani

Large language model (LLM)-based systems are becoming increasingly popular for solving tasks by constructing executable workflows that interleave LLM calls, information retrieval, tool use, code execution, memory updates, and verification.…

Artificial Intelligence · Computer Science 2026-03-25 Ling Yue , Kushal Raj Bhandari , Ching-Yun Ko , Dhaval Patel , Shuxin Lin , Nianjun Zhou , Jianxi Gao , Pin-Yu Chen , Shaowu Pan

Modular reasoning about class invariants is challenging in the presence of dependencies among collaborating objects that need to maintain global consistency. This paper presents semantic collaboration: a novel methodology to specify and…

Software Engineering · Computer Science 2014-05-08 Nadia Polikarpova , Julian Tschannen , Carlo A. Furia , Bertrand Meyer

We present a novel and well automatable approach to formal verification of programs with underspecified semantics, i.e., a language semantics that leaves open the order of certain evaluations. First, we reduce this problem to…

Programming Languages · Computer Science 2022-02-14 Eduard Kamburjan , Nathan Wasser

The paper introduces a novel representation for Generalized Planning (GP) problems, and their solutions, as C++ programs. Our C++ representation allows to formally proving the termination of generalized plans, and to specifying their…

Artificial Intelligence · Computer Science 2022-06-30 Javier Segovia-Aguas , Yolanda E-Martín , Sergio Jiménez

Loop invariants play a central role in the verification of imperative programs. However, finding these invariants is often a difficult and time-consuming task for the programmer. We have previously shown how program transformation can be…

Logic in Computer Science · Computer Science 2017-08-25 G. W. Hamilton

LMNtal is a programming and modeling language based on hierarchical graph rewriting that uses logical variables to represent connectivity and membranes to represent hierarchy. On the theoretical side, it allows logical interpretation based…

Programming Languages · Computer Science 2024-09-18 Haruto Mishina , Kazunori Ueda

Logically constrained term rewriting is a rewriting framework that supports built-in data structures such as integers and bit vectors. Recently, constrained terms play a key role in various analyses and applications of logically constrained…

Logic in Computer Science · Computer Science 2025-12-16 Kanta Takahata , Jonas Schöpf , Naoki Nishida , Takahito Aoto

In this functional pearl, we examine the use of definitional interpreters as a basis for abstract interpretation of higher-order programming languages. As it turns out, definitional interpreters, especially those written in monadic style,…

Programming Languages · Computer Science 2017-07-18 David Darais , Nicholas Labich , Phuc C. Nguyen , David Van Horn

Pull-tabbing is an evaluation approach for functional logic computations, based on a graph transformation recently proposed, which avoids making irrevocable non-deterministic choices that would jeopardize the completeness of computations.…

Programming Languages · Computer Science 2011-08-02 Sergio Antoy
‹ Prev 1 4 5 6 7 8 10 Next ›