English
Related papers

Related papers: Get rid of inline assembly through verification-or…

200 papers

Inline assembly is still a common practice in low-level C programming, typically for efficiency reasons or for accessing specific hardware resources. Such embedded assembly codes in the GNU syntax (supported by major compilers such as GCC,…

Programming Languages · Computer Science 2021-02-16 Frédéric Recoules , Sébastien Bardin , Richard Bonichon , Matthieu Lemerre , Laurent Mounier , Marie-Laure Potet

How to apply automated verification technology such as model checking and static program analysis to millions of lines of embedded C/C++ code? How to package this technology in a way that it can be used by software developers and engineers,…

Software Engineering · Computer Science 2013-01-03 Ralf Huuck

Formal verification techniques are widely used for detecting design flaws in software systems. Formal verification can be done by transforming an already implemented source code to a formal model and attempting to prove certain properties…

Software Engineering · Computer Science 2017-08-28 Gyula Sallai , Ákos Hajdu , Tamás Tóth , Zoltán Micskei

Large Language Models (LLMs) typically excel at coding tasks involving high-level programming languages, as opposed to lower-level programming languages, such as assembly. We propose a synthetic data generation method named C-ing Clearly,…

Computation and Language · Computer Science 2025-12-17 Teodor Poncu , Ioana Pintilie , Marius Dragoi , Dragos Tantaru , Florin Brad

This paper introduces the theory and practice of formal verification of self-assembling systems. We interpret a well-studied abstraction of nanomolecular self assembly, the Abstract Tile Assembly Model (aTAM), into Computation Tree Logic…

Logic in Computer Science · Computer Science 2010-07-22 Aaron Sterling

The development of user-friendly embedded prototyping systems like Arduino has made creating interactive devices more accessible. However, debugging these systems is challenging due to the intertwined nature of software and hardware issues.…

Human-Computer Interaction · Computer Science 2026-03-05 Andrea Bianchi , Zhi Lin Yap , Punn Lertjaturaphat , Austin Z. Henley , Kongpyung Justin Moon , Yoonji Kim

Programs written in C/C++ often include inline assembly: a snippet of architecture-specific assembly code used to access low-level functionalities that are impossible or expensive to simulate in the source language. Although inline assembly…

Programming Languages · Computer Science 2024-09-04 Paulo Emílio de Vilhena , Ori Lahav , Viktor Vafeiadis , Azalea Raad

Refinement transforms an abstract system model into a concrete, executable program, such that properties established for the abstract model carry over to the concrete implementation. Refinement has been used successfully in the development…

Logic in Computer Science · Computer Science 2021-10-27 Aurel Bílý , Christoph Matheja , Peter Müller

Formal verification of software is a bit of a niche activity: it is only applied to the most safety-critical or security-critical software and it is typically only performed by specialized verification engineers. This paper considers…

Logic in Computer Science · Computer Science 2020-11-02 Alastair Reid , Luke Church , Shaked Flur , Sarah de Haas , Maritza Johnson , Ben Laurie

Domain-specific languages (DSLs) are integral to various software workflows. Such languages offer domain-specific optimizations and abstractions that improve code readability and maintainability. However, leveraging these languages requires…

Programming Languages · Computer Science 2024-06-06 Sahil Bhatia , Jie Qiu , Niranjan Hasabnis , Sanjit A. Seshia , Alvin Cheung

Large language models (LLMs) are increasingly integrated in software development, but ensuring correctness in LLM-generated code remains challenging and often requires costly manual review. Verifiable code generation -- jointly generating…

Machine Learning · Computer Science 2026-03-18 Zhe Ye , Zhengxu Yan , Jingxuan He , Timothe Kasriel , Kaiyu Yang , Dawn Song

Formal methods provide systematic and rigorous techniques for software development. We strongly believe that they must be taught in computer science curricula. In this paper we present the pedagogic rationale and the concrete implementation…

Logic in Computer Science · Computer Science 2021-11-17 Salwa Souaf , Frédéric Loulergue

We present \synver{}, a novel synthesis and verification framework for C programs, that deploys a Large Language Model (LLM) to search for a candidate program that satisfies the given specification. Our key idea is to impose syntactic and…

Programming Languages · Computer Science 2025-10-21 Prasita Mukherjee , Benjamin Delaware

Deep learning operators are fundamental components of modern deep learning frameworks. With the growing demand for customized operators, it has become increasingly common for developers to create their own. However, designing and…

Machine Learning · Computer Science 2024-12-31 Qi Zhan , Xing Hu , Xin Xia , Shanping Li

Over the past decade, machine learning has demonstrated impressive results, often surpassing human capabilities in sensing tasks relevant to autonomous flight. Unlike traditional aerospace software, the parameters of machine learning models…

Machine Learning · Computer Science 2023-10-06 Jean-Guillaume Durand , Arthur Dubois , Robert J. Moss

Safety-critical software systems are in many cases designed and implemented as families of products, usually referred to as Software Product Lines (SPLs). Products within an SPL vary from each other in terms of which features they include.…

Software Engineering · Computer Science 2021-05-04 Ramy Shahin , Sahar Kokaly , Marsha Chechik

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

A software analysis is a computer program that takes some representation of a software product as input and produces some useful information about that product as output. A software product line encompasses \emph{many} software product…

Programming Languages · Computer Science 2020-10-05 Ramy Shahin , Marsha Chechik

Software testing plays a critical role in ensuring that systems behave as intended. However, existing automated testing approaches struggle to match the capabilities of human engineers due to key limitations such as test locality, lack of…

Software Engineering · Computer Science 2025-06-16 Kangping Xu , Yifan Luo , Yang Yuan , Andrew Chi-Chih Yao

Research project "Platform-independent approach to formal specification and verification of standard mathematical functions" is aimed onto a development of an incremental combined approach to the specification and verification of the…

Logic in Computer Science · Computer Science 2019-01-14 Nikolay V. Shilov , Boris L. Faifel , Svetlana O. Shilova , Aleksey V. Promsky
‹ Prev 1 2 3 10 Next ›