English
Related papers

Related papers: Refactoring = Substitution + Rewriting

200 papers

Essentially, in a reversible programming language, for each forward computation from state $S$ to state $S'$, there exists a constructive method to go backwards from state $S'$ to state $S$. Besides its theoretical interest, reversible…

Programming Languages · Computer Science 2017-10-10 Naoki Nishida , Adrián Palacios , Germán Vidal

This paper presents general syntactic conditions ensuring the strong normalization and the logical consistency of the Calculus of Algebraic Constructions, an extension of the Calculus of Constructions with functions and predicates defined…

Logic in Computer Science · Computer Science 2016-08-16 Frédéric Blanqui

We introduce a modified version of the well-known dependency pair framework that is suitable for the termination analysis of rewriting under forbidden pattern restrictions. By attaching contexts to dependency pairs that represent the…

Logic in Computer Science · Computer Science 2010-12-30 Bernhard Gramlich , Felix Schernhammer

The most important way to achieve higher performance in computer systems is through heterogeneous computing, i.e., by adopting hardware platforms containing more than one type of processor, such as CPUs, GPUs, and FPGAs. Several types of…

Software Engineering · Computer Science 2020-05-19 Hugo Andrade , Ivica Crnkovic , Jan Bosch

In order to define graph transformations by the simultaneous application of concurrent rules, we have adopted in previous work a structure of attributed graphs stable by unions. We analyze the consequences on parallel independence, a…

Logic in Computer Science · Computer Science 2021-02-05 Thierry Boy de la Tour

Term rewriting is a Turing complete model of computation. When taught to students of computer science, key properties of computation as well as techniques to analyze programs on an abstract level are conveyed. This paper gives a swift…

Logic in Computer Science · Computer Science 2020-03-02 Sarah Winkler , Aart Middeldorp

Creating functions is at the center of writing computer programs. But there has been little empirical research on how this is done and what are the considerations that developers use. We design an experiment in which we can compare the…

Software Engineering · Computer Science 2022-09-05 Alexey Braver , Dror G. Feitelson

In this paper, we conduct a critical review of existing theories and frameworks on human-human collaborative writing to assess their relevance to the current human-AI paradigm in organizational workplace settings, and draw seven insights…

Human-Computer Interaction · Computer Science 2025-09-25 Daisuke Yukita , Tim Miller , Joel Mackenzie

Reduced-rank decompositions provide descriptions of the variation among the elements of a matrix or array. In such decompositions, the elements of an array are expressed as products of low-dimensional latent factors. This article presents a…

Methodology · Statistics 2010-06-01 Peter Hoff

Differential replication through copying refers to the process of replicating the decision behavior of a machine learning model using another model that possesses enhanced features and attributes. This process is relevant when external…

Machine Learning · Computer Science 2023-02-08 Nahuel Statuto , Irene Unceta , Jordi Nin , Oriol Pujol

Transliteration is a task of translating named entities from a language to another, based on phonetic similarity. The task has embraced deep learning approaches in recent years, yet, most ignore the phonetic features of the involved…

Computation and Language · Computer Science 2022-01-24 Shi Cheng , Zhuofei Ding , Songpeng Yan

Graphs, and graph transformation systems, are used in many areas within Computer Science: to represent data structures and algorithms, to define computation models, as a general modelling tool to study complex systems, etc. Research in term…

Symbolic Computation · Computer Science 2021-02-04 Patrick Bahr

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

Style transfer is the task of rephrasing the text to contain specific stylistic properties without changing the intent or affect within the context. This paper introduces a new method for automatic style transfer. We first learn a latent…

Computation and Language · Computer Science 2018-05-25 Shrimai Prabhumoye , Yulia Tsvetkov , Ruslan Salakhutdinov , Alan W Black

In Knowledge Management, variations in information expressions have proven a real challenge. In particular, classical semantic relations (e.g. synonymy) do not connect words with different parts-of-speech. The method proposed tries to…

Information Retrieval · Computer Science 2010-10-28 Bernard Jacquemin

Large Language Models (LLMs), like ChatGPT, have gained widespread popularity and usage in various software engineering tasks, including refactoring, testing, code review, and program comprehension. Despite recent studies delving into…

Software Engineering · Computer Science 2024-02-12 Eman Abdullah AlOmar , Anushkrishna Venkatakrishnan , Mohamed Wiem Mkaouer , Christian D. Newman , Ali Ouni

Refactoring is a software engineering practice that aims to improve code quality without altering program behavior. Although automated refactoring tools have been extensively studied, their practical applicability remains limited. Recent…

Software Engineering · Computer Science 2026-01-21 Alessandro Midolo , Emiliano Tramontana , Massimiliano Di Penta

Refactorings must not alter the program's functionality. However, not all refactorings fulfill this requirement. Hence, one must explicitly check that a refactoring does not alter the functionality. Since one rarely has a formal…

Logic in Computer Science · Computer Science 2021-03-24 Marie-Christine Jakobs

We present a new and powerful algebraic framework for graph rewriting, based on drags, a class of graphs enjoying a novel composition operator. Graphs are embellished with roots and sprouts, which can be wired together to form edges. Drags…

Logic in Computer Science · Computer Science 2024-06-28 Nachum Dershowitz , Jean-Pierre Jouannaud , Fernando Orejas

Predictive models are fundamental to engineering reliable software systems. However, designing conservative, computable approximations for the behavior of programs (static analyses) remains a difficult and error-prone process for modern…

Programming Languages · Computer Science 2011-05-10 David Van Horn , Matthew Might