中文
相关论文

相关论文: Refinement type contracts for verification of scie…

200 篇论文

Large language models are increasingly used to generate code from natural language, but ensuring correctness remains challenging. Formal verification offers a principled way to obtain such guarantees by proving that a program satisfies a…

机器学习 · 计算机科学 2026-04-14 Zhe Ye , Aidan Z. H. Yang , Huangyuan Su , Zhenyu Liao , Samuel Tenka , Zhizhen Qin , Udaya Ghai , Dawn Song , Soonho Kong

The correctness of the Solidity compiler is crucial for ensuring the security of smart contracts. However, the implementation complexity of its type system often introduces elusive defects. This paper presents the first systematic empirical…

软件工程 · 计算机科学 2025-12-23 Lantian Li , Yue Pan , Dan Wang , Jingwen Wu , Zhongxing Yu

Context: Research software is essential for developing advanced tools and models to solve complex research problems and drive innovation across domains. Therefore, it is essential to ensure its correctness. Software testing plays a vital…

软件工程 · 计算机科学 2025-01-30 Nasir U. Eisty , Upulee Kanewala , Jeffrey C. Carver

Python is a widely adopted programming language, valued for its simplicity and flexibility. However, its dynamic type system poses significant challenges for automated refactoring - an essential practice in software evolution aimed at…

软件工程 · 计算机科学 2025-11-20 Jonhnanthan Oliveira , Rohit Gheyi , Márcio Ribeiro , Alessandro Garcia

Cyber-Physical Systems (CPS) consist of software interacting with the physical world, such as robots, vehicles, and industrial processes. CPS are frequently responsible for the safety of lives, property, or the environment, and so software…

Verification of C++ programs has seen considerable progress in several areas, but not for programs that use these languages' mathematical libraries. The reason is that all libraries in widespread use come with no guarantees about the…

编程语言 · 计算机科学 2022-06-23 Roberto Bagnara , Michele Chiari , Roberta Gori , Abramo Bagnara

Formal Methods are mathematically-based techniques for software design and engineering, which enable the unambiguous description of and reasoning about a system's behaviour. Autonomous systems use software to make decisions without human…

软件工程 · 计算机科学 2021-07-29 Matt Luckcuck

Formal methods for software correctness are critical to the future of software engineering - and so must be an essential part of software engineering education. Unfortunately, formal methods are often resisted by students due to perceived…

软件工程 · 计算机科学 2022-05-03 James Noble , David Streader , Isaac Oscar Gariano , Miniruwani Samarakoon

Iterative self-refinement is a popular inference-time reliability technique, but its effectiveness in code-mode tool use depends heavily on the structure of the feedback signal: unstructured critique helps inconsistently across models, and…

机器学习 · 计算机科学 2026-05-19 Will LeVine , Brendan Evers , Sam Saltwick , Abhay Venkatesh

Stepwise refinement of algebraic specifications is a well known formal methodology for program development. However, traditional notions of refinement based on signature morphisms are often too rigid to capture a number of relevant…

计算机科学中的逻辑 · 计算机科学 2015-07-01 Manuel A. Martins , Alexandre Madeira , Luis S. Barbosa

Smart contracts are susceptible to critical vulnerabilities. Hybrid dynamic analyses, such as concolic execution assisted fuzzing and foundation model assisted fuzzing, have emerged as highly effective testing techniques for smart contract…

软件工程 · 计算机科学 2024-09-10 Sally Junsong Wang , Jianan Yao , Kexin Pei , Hidedaki Takahashi , Junfeng Yang

Practical checkers based on refinement types use the combination of implicit semantic sub-typing and parametric polymorphism to simplify the specification and automate the verification of sophisticated properties of programs. However, a…

编程语言 · 计算机科学 2022-07-13 Michael Borkowski , Niki Vazou , Ranjit Jhala

Smart contracts are autonomous and immutable pieces of code that are deployed on blockchain networks and run by miners. They were first introduced by Ethereum in 2014 and have since been used for various applications such as security…

软件工程 · 计算机科学 2024-07-08 Mahdi Fooladgar , Fathiyeh Faghih

Interactive proof assistants are computer programs carefully constructed to check a human-designed proof of a mathematical claim with high confidence in the implementation. However, this only validates truth of a formal claim, which may…

编程语言 · 计算机科学 2022-05-17 Colin S. Gordon , Sergey Matskevich

We introduce Flux, which shows how logical refinements can work hand in glove with Rust's ownership mechanisms to yield ergonomic type-based verification of low-level pointer manipulating programs. First, we design a novel refined type…

编程语言 · 计算机科学 2022-11-15 Nico Lehmann , Adam Geller , Niki Vazou , Ranjit Jhala

Unit tests are widely used to check source code quality, but they can be too coarse-grained or ill-suited for testing individual program statements. We introduce inline tests to make it easier to check for faults in statements. We motivate…

软件工程 · 计算机科学 2022-09-15 Yu Liu , Pengyu Nie , Owolabi Legunsen , Milos Gligoric

Smart Contracts are programs running logic in the Blockchain network by executing operations through immutable transactions. The Blockchain network validates such transactions, storing them into sequential blocks of which integrity is…

软件工程 · 计算机科学 2024-03-13 Francesco Salzano , Simone Scalabrino , Rocco Oliveto , Remo Pareschi

Modern automotive software is highly complex and consists of millions lines of code. For safety-relevant automotive software, it is recommended to use sound static program analysis to prove the absence of runtime errors. However, the…

软件工程 · 计算机科学 2023-10-26 Jesko Hecking-Harbusch , Jochen Quante , Maximilian Schlund

Liquid typing provides a decidable refinement inference mechanism that is convenient but subject to two major issues: (1) inference is global and requires top-level annotations, making it unsuitable for inference of modular code components…

编程语言 · 计算机科学 2019-10-31 Niki Vazou , Éric Tanter , David Van Horn

Many tools and libraries are readily available to build and operate distributed Web applications. While the setup of operational environments is comparatively easy, practice shows that their continuous secure operation is more difficult to…

密码学与安全 · 计算机科学 2012-07-13 Matteo Maria Casalino , Michele Mangili , Henrik Plate , Serena Elisa Ponta