English
Related papers

Related papers: Synthesizing Database Programs for Schema Refactor…

200 papers

Reactive synthesis transforms a specification of a reactive system, given in a temporal logic, into an implementation. The main advantage of synthesis is that it is automatic. The main disadvantage is that the implementation is usually very…

Logic in Computer Science · Computer Science 2021-01-01 Tom Baumeister , Bernd Finkbeiner , Hazem Torfah

Reactive synthesis is the task of automatically deriving a correct implementation from a specification. It is a promising technique for the development of verified programs and hardware. Despite recent advances in terms of algorithms and…

Logic in Computer Science · Computer Science 2021-12-17 Bernd Finkbeiner , Gideon Geier , Noemi Passing

Dynamic program slicing can significantly reduce the code developers need to inspect by narrowing it down to only a subset of relevant program statements. However, despite an extensive body of research showing its usefulness, dynamic…

Software Engineering · Computer Science 2022-01-04 Bogdan Alexandru Stoica , Swarup K. Sahoo , James R. Larus , Vikram S. Adve

Analytical SQL is widely used in modern database applications and data analysis. However, its partitioning and grouping operators are challenging for novice users. Unfortunately, programming by example, shown effective on standard SQL, are…

Programming Languages · Computer Science 2022-04-26 Xiangyu Zhou , Rastislav Bodik , Alvin Cheung , Chenglong Wang

Database applications are typically written using a mixture of imperative languages and declarative frameworks for data processing. Application logic gets distributed across the declarative and imperative parts of a program. Often, there is…

Databases · Computer Science 2018-02-27 K. Venkatesh Emani , S. Sudarshan

Program synthesis is the generation of a program from a specification. Correct synthesis is difficult, and methods that provide formal guarantees suffer from scalability issues. On the other hand, neural networks are able to generate…

Logic in Computer Science · Computer Science 2020-01-28 Elizabeth Polgreen , Ralph Abboud , Daniel Kroening

The synthesis of DNA strands remains the most costly part of the DNA storage system. Thus, to make DNA storage system more practical, the time and materials used in the synthesis process have to be optimized. We consider the most common…

Information Theory · Computer Science 2023-05-15 Johan Chrisnata , Han Mao Kiah , Van Long Phuoc Pham

In this paper, a new approach is proposed for automated software maintenance. The tool is able to perform 26 different refactorings. It also contains a large selection of metrics to measure the impact of the refactorings on the software and…

Software Engineering · Computer Science 2017-10-17 Michael Mohan , Des Greer

We propose a novel method for automatic program synthesis. P-Tree Programming represents the program search space through a single probabilistic prototype tree. From this prototype tree we form program instances which we evaluate on a given…

Artificial Intelligence · Computer Science 2017-07-13 Christian Oesch

SQL is one of the most popular tools for data analysis, and it is now used by an increasing number of users without having expertise in databases. Several studies have proposed programming-by-example approaches to help such non-experts to…

Software Engineering · Computer Science 2021-08-16 Keita Takenouchi , Takashi Ishio , Joji Okada , Yuji Sakata

A deductive program synthesis tool takes a specification as input and derives a program that satisfies the specification. The drawback of this approach is that search spaces for such correct programs tend to be enormous, making it difficult…

Neural and Evolutionary Computing · Computer Science 2023-01-23 Yutaka Nagashima

Online streaming algorithms, tailored for continuous data processing, offer substantial benefits but are often more intricate to design than their offline counterparts. This paper introduces a novel approach for automatically synthesizing…

Programming Languages · Computer Science 2024-05-10 Ziteng Wang , Shankara Pailoor , Aaryan Prakash , Yuepeng Wang , Isil Dillig

Multimodal program synthesis, which leverages different types of user input to synthesize a desired program, is an attractive way to scale program synthesis to challenging settings; however, it requires integrating noisy signals from the…

Computation and Language · Computer Science 2021-09-16 Xi Ye , Qiaochu Chen , Isil Dillig , Greg Durrett

Although software managers are generally good at new project estimation, their experience of scheduling rework tends to be poor. Inconsistent or incorrect effort estimation can increase the risk that the completion time for a project will…

Software Engineering · Computer Science 2010-07-30 Bee Bee Chua , June Verner

Developers often refactor source code to improve its quality during software development. A challenge in refactoring is to determine if it can be applied or not. To help with this decision-making process, we aim to search for past…

Software Engineering · Computer Science 2023-10-04 Motoki Abe , Shinpei Hayashi

In this paper a tool called RDBNorma is proposed, that uses a novel approach to represent a relational database schema and its functional dependencies in computer memory using only one linked list and used for semi-automating the process of…

Databases · Computer Science 2011-03-04 Y. V. Dongare , P. S. Dhabe , S. V. Deshmukh

This paper describes a way to improve the scalability of program synthesis by exploiting modularity: larger programs are synthesized from smaller programs. The key issue is to make each "larger-created-from-smaller" synthesis sub-problem be…

Programming Languages · Computer Science 2023-08-15 Kanghee Park , Keith J. C. Johnson , Loris D'Antoni , Thomas Reps

Refactoring is a critical process in software development, aiming at improving the internal structure of code while preserving its external behavior. Refactoring engines are integral components of modern Integrated Development Environments…

Software Engineering · Computer Science 2024-09-24 Haibo Wang , Zhuolin Xu , Huaien Zhang , Nikolaos Tsantalis , Shin Hwei Tan

Composing regexes is a common but challenging engineering activity. Software engineers struggle with regex complexity, leading to defects, performance issues, and security vulnerabilities. Researchers have proposed tools to synthesize…

Software Engineering · Computer Science 2025-09-25 Berk Çakar , Charles M. Sale , Sophie Chen , Dongyoon Lee , James C. Davis

Beginning programmers struggle with the complex grammar of modern programming languages like Java, and make lot of syntax errors. The diagnostic syntax error messages from compilers and IDEs are sometimes useful, but often the messages are…

Software Engineering · Computer Science 2022-10-14 Toufique Ahmed , Noah Rose Ledesma , Premkumar Devanbu