English
Related papers

Related papers: GAssert: A Fully Automated Tool to Improve Asserti…

200 papers

Unit testing represents the foundational basis of the software testing pyramid, beneath integration and end-to-end testing. Automated software testing researchers have proposed a variety of techniques to assist developers in this…

Software Engineering · Computer Science 2022-03-25 Michele Tufano , Dawn Drain , Alexey Svyatkovskiy , Neel Sundaresan

Automated test case generation is important. However, the automatically generated test input does not always make sense, and the automated assertion is difficult to validate against the program under test. In this paper, we propose…

Software Engineering · Computer Science 2025-05-12 Baoquan Cui , Rong Qu , Jian Zhang

Higher-order constructs extend the expressiveness of first-order (Constraint) Logic Programming ((C)LP) both syntactically and semantically. At the same time assertions have been in use for some time in (C)LP systems helping programmers…

Programming Languages · Computer Science 2014-06-03 Nataliia Stulova , José F. Morales , Manuel V. Hermenegildo

The development of complex software requires tools promoting fail-fast approaches, so that bugs and unexpected behavior can be quickly identified and fixed. Tools for data validation may save the day of computer programmers. In fact,…

Logic in Computer Science · Computer Science 2022-02-22 Mario Alviano , Carmine Dodaro , Arnel Zamayla

Automated test generation is crucial for ensuring the reliability and robustness of software applications while at the same time reducing the effort needed. While significant progress has been made in test generation research, generating…

Software Engineering · Computer Science 2025-01-30 Shaker Mahmud Khandaker , Fitsum Kifetew , Davide Prandi , Angelo Susi

Identifying the cause of a proof failure during deductive verification of programs is hard: it may be due to an incorrectness in the program, an incompleteness in the program annotations, or an incompleteness of the prover. The changes…

Logic in Computer Science · Computer Science 2021-08-09 Benedikt Becker , Cláudio Belo Lourenço , Claude Marché

A traditional assurance case employs a positive argument in which reasoning steps, grounded on evidence and assumptions, sustain a top claim that has external significance. Human judgement is required to check the evidence, the assumptions,…

Artificial Intelligence · Computer Science 2024-05-28 Robin Bloomfield , Kate Netkachova , John Rushby

Assertion-based verification (ABV) is a critical method to ensure logic designs comply with their architectural specifications. ABV requires assertions, which are generally converted from specifications through human interpretation by…

Hardware Architecture · Computer Science 2024-11-25 Zhiyuan Yan , Wenji Fang , Mengming Li , Min Li , Shang Liu , Zhiyao Xie , Hongce Zhang

Program verifiers such as Dafny automate proofs by outsourcing them to an SMT solver. This automation is not perfect, however, and the solver often requires hints in the form of assertions, creating a burden for the proof engineer. In this…

Logic in Computer Science · Computer Science 2025-03-05 Eric Mugnier , Emmanuel Anaya Gonzalez , Ranjit Jhala , Nadia Polikarpova , Yuanyuan Zhou

Testing is widely recognized as an important stage of the software development lifecycle. Effective software testing can provide benefits such as bug finding, preventing regressions, and documentation. In terms of documentation, unit tests…

Software Engineering · Computer Science 2022-04-22 Elizabeth Dinella , Gabriel Ryan , Todd Mytkowicz , Shuvendu K. Lahiri

The dramatic improvements in combinatorial optimization algorithms over the last decades have had a major impact in artificial intelligence, operations research, and beyond, but the output of current state-of-the-art solvers is often hard…

Logic in Computer Science · Computer Science 2022-09-27 Stephan Gocht , Jakob Nordström

Program verifiers for imperative languages such as C may be annotation-based, in which assertions and invariants are put into source files and then checked, or tactic-based, where proof scripts separate from programs are interactively…

Programming Languages · Computer Science 2023-10-27 Litao Zhou , Jianxing Qin , Qinshi Wang , Andrew W. Appel , Qinxiang Cao

ML models are increasingly deployed in settings with real world interactions such as vehicles, but unfortunately, these models can fail in systematic ways. To prevent errors, ML engineering teams monitor and continuously improve these…

Artificial Intelligence · Computer Science 2020-03-13 Daniel Kang , Deepti Raghavan , Peter Bailis , Matei Zaharia

We introduce Seshat, a new, simple and open-source software to efficiently manage annotations of speech corpora. The Seshat software allows users to easily customise and manage annotations of large audio corpora while ensuring compliance…

The boolean satisfiability (SAT) problem asks whether there exists an assignment of boolean values to the variables of an arbitrary boolean formula making the formula evaluate to True. It is well-known that all NP-problems can be coded as…

Machine Learning · Computer Science 2024-10-22 Christopher R. Serrano , Jonathan Gallagher , Kenji Yamada , Alexei Kopylov , Michael A. Warren

Unit testing attempts to validate the correctness of basic units of the software system under test and has a crucial role in software development and testing. Very recent work proposes a retrieve-and-edit approach to generate unit test…

Software Engineering · Computer Science 2025-02-25 Quanjun Zhang , Chunrong Fang , Yi Zheng , Ruixiang Qian , Shengcheng Yu , Yuan Zhao , Jianyi Zhou , Yun Yang , Tao Zheng , Zhenyu Chen

Error correction is widely used in automatic speech recognition (ASR) to post-process the generated sentence, and can further reduce the word error rate (WER). Although multiple candidates are generated by an ASR system through beam search,…

Computation and Language · Computer Science 2022-11-30 Yichong Leng , Xu Tan , Rui Wang , Linchen Zhu , Jin Xu , Wenjie Liu , Linquan Liu , Tao Qin , Xiang-Yang Li , Edward Lin , Tie-Yan Liu

Large language models (LLMs) excel at implementing code from functionality descriptions but struggle with algorithmic problems that require not only implementation but also identification of the suitable algorithm. Moreover, LLM-generated…

Computation and Language · Computer Science 2023-12-11 Kexun Zhang , Danqing Wang , Jingtao Xia , William Yang Wang , Lei Li

Machine learning (ML) applications have become an integral part of our lives. ML applications extensively use floating-point computation and involve very large/small numbers; thus, maintaining the numerical stability of such complex…

Software Engineering · Computer Science 2025-04-24 Shaila Sharmin , Anwar Hossain Zahid , Subhankar Bhattacharjee , Chiamaka Igwilo , Miryung Kim , Wei Le

Boolean optimization finds a wide range of application domains, that motivated a number of different organizations of Boolean optimizers since the mid 90s. Some of the most successful approaches are based on iterative calls to an NP oracle,…

Artificial Intelligence · Computer Science 2011-09-14 Antonio Morgado , Joao Marques-Silva