English
Related papers

Related papers: Refinement types for precisely named cache locatio…

200 papers

Developing and maintaining software commonly requires (1) adding new data type constructors to existing applications, but also (2) adding new functions that work on existing data. Most programming languages have native support for defining…

Programming Languages · Computer Science 2023-09-27 Cas van der Rest , Casper Bach Poulsen

Coded caching schemes are used to reduce computer network traffics in peak time. To determine the efficiency of the schemes, \cite{MN} defined the information rate of the schemes and gave a construction of optimal coded caching schemes.…

Information Theory · Computer Science 2024-03-08 Ruizhong Wei

Incrementalization speeds up computations by avoiding unnecessary recomputations and by efficiently reusing previous results. While domain-specific techniques achieve impressive speedups, e.g., in the context of database queries, they are…

Programming Languages · Computer Science 2026-05-26 Timon Böhler , Tobias Reinhard , David Richter , Mira Mezini

Natural language elements in source code, e.g., the names of variables and functions, convey useful information. However, most existing bug detection tools ignore this information and therefore miss some classes of bugs. The few existing…

Software Engineering · Computer Science 2018-05-31 Michael Pradel , Koushik Sen

Testing has become an indispensable activity of software development, yet writing good and relevant tests remains a quite challenging task. One well-known problem is that it often is impossible or unrealistic to test for every outcome, as…

Programming Languages · Computer Science 2017-08-18 Dimitri Racordon , Didier Buchs

We propose a path-based approach to program repair for imperative programs. Our repair framework takes as input a faulty program, a logic specification that is refuted, and a hint where the fault may be located. An iterative abstraction…

Programming Languages · Computer Science 2015-03-18 Heinz Riener , Rüdiger Ehlers , Görschwin Fey

End-to-End Translation Validation is the problem of verifying the executable code generated by a compiler against the corresponding input source code for a single compilation. This becomes particularly hard in the presence of…

Programming Languages · Computer Science 2025-10-01 Abhishek Rose , Sorav Bansal

In source code search, a common information-seeking strategy involves providing a short initial query with a broad meaning, and then iteratively refining the query using terms gleaned from the results of subsequent searches. This strategy…

Software Engineering · Computer Science 2022-01-26 Zachary Eberhart , Collin McMillan

Misleading method names in software projects can confuse developers, which may lead to software defects and affect code understandability. In this paper, we present DeepName, a context-based, deep learning approach to detect method name…

Software Engineering · Computer Science 2021-03-02 Yi Li , Shaohua Wang , Tien N. Nguyen

Identifiers, such as method and variable names, form a large portion of source code. Therefore, low-quality identifiers can substantially hinder code comprehension. To support developers in using meaningful identifiers, several…

Software Engineering · Computer Science 2022-12-13 Antonio Mastropaolo , Emad Aghajani , Luca Pascarella , Gabriele Bavota

This study investigates the use of reinforcement learning to guide a general purpose cache manager decisions. Cache managers directly impact the overall performance of computer systems. They govern decisions about which objects should be…

Machine Learning · Computer Science 2019-10-01 Sami Alabed

Process mining techniques aim to extract insights in processes from event logs. One of the challenges in process mining is identifying interesting and meaningful event labels that contribute to a better understanding of the process. Our…

Databases · Computer Science 2017-12-20 Niek Tax , Natalia Sidorova , Reinder Haakma , Wil M. P. van der Aalst

A circular program creates a data structure whose computation depends upon itself or refers to itself. The technique is used to implement the classic data structures circular and doubly-linked lists, threaded trees and queues, in a…

Programming Languages · Computer Science 2024-03-05 Lloyd Allison

A coverage type generalizes refinement types found in many functional languages with support for must-style underapproximate reasoning. Property-based testing frameworks are one particularly useful domain where such capabilities are useful…

Programming Languages · Computer Science 2025-09-03 Zhe Zhou , Benjamin Delaware , Suresh Jagannathan

Application-level caching is a form of caching that has been increasingly adopted to satisfy performance and throughput requirements. The key idea is to store the results of a computation, to improve performance by reusing instead of…

Software Engineering · Computer Science 2020-10-27 Jhonny Mertz , Ingrid Nunes , Luca Della Toffola , Marija Selakovic , Michael Pradel

Researchers develop models to explain the unknowns. These models typically involve parameters that capture tangible quantities, the estimation of which is desired. Parameter identifiability investigates the recoverability of the unknown…

Optimization and Control · Mathematics 2024-07-01 Anuththara Sarathchandra , Azadeh Aghaeeyan , Pouria Ramazi

In this paper we investigate the problem of automatically naming pieces of assembly code. Where by naming we mean assigning to an assembly function a string of words that would likely be assigned by a human reverse engineer. We formally and…

Machine Learning · Computer Science 2021-02-05 Fiorella Artuso , Giuseppe Antonio Di Luna , Luca Massarelli , Leonardo Querzoni

The real numbers are important in both mathematics and computation theory. Computationally, real numbers can be represented in several ways; most commonly using inexact floating-point data-types, but also using exact arbitrary-precision…

Logic in Computer Science · Computer Science 2024-01-18 Todd Waugh Ambridge

Coding conventions for naming, spacing, and other essentially stylistic properties are necessary for developers to effectively understand, review, and modify source code in large software projects. Consistent conventions in verification…

Programming Languages · Computer Science 2020-04-23 Pengyu Nie , Karl Palmskog , Junyi Jessy Li , Milos Gligoric

Iteratively improving and repairing source code with large language models (LLMs), known as refinement, has emerged as a popular way of generating programs that would be too complex to construct in one shot. Given a bank of test cases,…

Software Engineering · Computer Science 2024-10-31 Hao Tang , Keya Hu , Jin Peng Zhou , Sicheng Zhong , Wei-Long Zheng , Xujie Si , Kevin Ellis