English
Related papers

Related papers: On the Relationship between Code Verifiability and…

200 papers

Software is among the most complex endeavors of the human mind; large scale systems can have tens of millions of lines of source code. However, seldom is complexity measured above the lowest level of code, and sometimes source code files or…

Software Engineering · Computer Science 2011-05-13 Alejandro Fernández

Humans often specify tasks incompletely, so assistants must know when and how to ask clarifying questions. However, effective clarification remains challenging in software engineering tasks as not all missing information is equally…

Software Engineering · Computer Science 2026-04-17 Sanidhya Vijayvargiya , Vijay Viswanathan , Graham Neubig

Satisfiability solvers are increasingly playing a key role in software verification, with particularly effective use in the analysis of security vulnerabilities. String processing is a key part of many software applications, such as…

Computational Complexity · Computer Science 2009-03-17 Susmit Jha , Sanjit A. Seshia , Rhishikesh Limaye

Nowadays, software testing professionals are commonly required to develop coding skills to work on test automation. One essential skill required from those who code is the ability to implement code refactoring, a valued quality aspect of…

This essay is divided in four parts: In section (I) I explain why I think detecting hot-spots in verification is complicated and in particular, more complicated than detection when developing crude software. In section (II) I introduce the…

Software Engineering · Computer Science 2014-02-27 Pablo González de Aledo

Background: Recent advancements in large language models have motivated the practical use of such models in code generation and program synthesis. However, little is known about the effects of such tools on code readability and visual…

Software Engineering · Computer Science 2022-09-02 Naser Al Madi

Background: Research software is software developed by and/or used by researchers, across a wide variety of domains, to perform their research. Because of the complexity of research software, developers cannot conduct exhaustive testing. As…

Software Engineering · Computer Science 2021-10-29 Nasir U. Eisty , Jeffrey C. Carver

Testability is the probability whether tests will detect a fault, given that a fault in the program exists. How efficiently the faults will be uncovered depends upon the testability of the software. Various researchers have proposed…

Software Engineering · Computer Science 2013-08-16 Sujata Khatri , R. S. Chhillar , V. B. Singh

Code obfuscation is a popular approach to turn program comprehension and analysis harder, with the aim of mitigating threats related to malicious reverse engineering and code tampering. However, programming languages that compile to high…

Software Engineering · Computer Science 2019-01-16 Davide Pizzolotto , Mariano Ceccato

Deductive verification is an effective method to ensure that a given system exposes the intended behavior. In spite of its proven usefulness and feasibility in selected projects, deductive verification is still not a mainstream technique.…

Software Engineering · Computer Science 2026-01-26 Lea Salome Brugger , Xavier Denis , Peter Müller

Synthetic verification techniques such as generating test cases and reward modelling are common ways to enhance the coding capabilities of large language models (LLM) beyond predefined tests. Additionally, code verification has recently…

Artificial Intelligence · Computer Science 2025-07-31 Aleksander Ficek , Somshubra Majumdar , Vahid Noroozi , Boris Ginsburg

Testing is the primary approach for detecting software defects. A major challenge faced by testers lies in crafting efficient test suites, able to detect a maximum number of bugs with manageable effort. To do so, they rely on coverage…

Software Engineering · Computer Science 2018-02-07 Michaël Marcozzi , Sébastien Bardin , Nikolai Kosmatov , Mike Papadakis , Virgile Prevosto , Loïc Correnson

Real software, the kind working programmers produce by the kLOC to solve real-world problems, tends to be "natural", like speech or natural language; it tends to be highly repetitive and predictable. Researchers have captured this…

Software Engineering · Computer Science 2015-09-11 Baishakhi Ray , Vincent Hellendoorn , Saheel Godhane , Zhaopeng Tu , Alberto Bacchelli , Premkumar Devanbu

Satisfiability solving is a common technique for formal verification forming the basis of many proof and model checking systems. Failure to show a proof obligation will produce a counterexample or failure trace with typically many thousands…

Logic in Computer Science · Computer Science 2026-03-24 Lars-Henrik Eriksson

This paper introduces several techniques that improve the scalability of the deductive verification of data-level programs working on arrays and matrices. First of all, we introduce a technique to rewrite expressions with (nested)…

Software Engineering · Computer Science 2026-05-14 Lars B. van den Haak , Anton Wijs , Marieke Huisman

The area of software development and secure coding can benefit significantly from advancements in virtual assistants. Research has shown that many coders neglect security in favor of meeting deadlines. This shortcoming leaves systems…

Cryptography and Security · Computer Science 2021-05-14 Fitzroy D. Nembhard , Marco M. Carvalho

Context: Application Programming Interface (API) code examples are an essential knowledge resource for learning APIs. However, a few user studies have explored how the structural characteristics of the source code in code examples impact…

Software Engineering · Computer Science 2024-04-04 Seham Alharbi , Dimitris Kolovos

Approximate computing (AC) is an emerging paradigm for energy-efficient computation. The basic idea of AC is to sacrifice high precision for low energy by allowing for hardware which only carries out "approximately correct" calculations.…

Software Engineering · Computer Science 2016-05-10 Tobias Isenberg , Marie-Christine Jakobs , Felix Pauck , Heike Wehrheim

With increasing awareness of the hallucination risks of generative artificial intelligence (AI), we see a growing shift toward providing information tooling to help users determine the veracity of AI-generated answers for themselves. User…

Human-Computer Interaction · Computer Science 2026-03-13 Jessica Irons , Patrick Cooper , Necva Bolucu , Roelien Timmer , Huichen Yang , Changhyun Lee , Brian Jin , Andreas Duenser , Stephen Wan

Evaluating the effectiveness of software protection is crucial for selecting the most effective methods to safeguard assets within software applications. Obfuscation involves techniques that deliberately modify software to make it more…

Cryptography and Security · Computer Science 2025-11-27 Leonardo Regano , Daniele Canavese , Cataldo Basile , Marco Torchiano