SoS contract verification using statistical model checking
系统的体系(SoS)的详尽形式化验证是不切实际的,不能大规模应用。在本文中,我们提出使用统计模型检验的有效验证的SoS。我们解决三个相关方面的系统的系统:1)的模型的体系,其中包括随机方面; 2)的形式化的体系的合同的形式化的体系的需求; 3)的工具链,以支持统计模型检验的体系。我们适应SMC技术应用到异构体系结构。我们扩展了UPDM/SysML规约语言,以表达在体系之上实施的战略必须满足的体系需求。这些需求是用专门为SoS设计的新合同语言来指定的,该语言针对高级英语模式语言,但依赖于标准时态逻辑给出的准确语义。合同验证UPDM/SysML规范使用统计模型建模(SMC)PLASMA与仿真引擎DESYRE相结合,通过功能模型接口(FMI)标准集成异构的行为模型。工具链允许计算合同的可满足性的估计由SoS。这些结果有助于系统架构师权衡不同的解决方案,以指导SoS的发展。
2013-11-14 cs.SE
Smart Contracts Formal Verification: A Systematic Literature Review
本文系统综述智能合约形式化验证相关文献,梳理规格说明、验证工具与实验,并提出基于描述逻辑的替代验证方法。
2025-10-15 cs.LO cs.SE
Multilevel Contracts for Trusted Components
这篇文章有助于可信组件和服务的设计和验证。这些合同在几个级别上被拒绝,以涵盖不同的方面,例如组件一致性,兼容性或正确性。本文介绍了多级合同和设计+验证过程中处理和分析这些合同的组件模型。该方法是用支持Kmelia组件模型的COSTO平台实现的。案例研究说明了总体方法。
2010-10-14 cs.SE
Refinement type contracts for verification of scientific investigative software
我们的科学知识越来越多地建立在软件输出上。定义数据分析管道和计算模型的用户代码对于自然科学和社会科学的研究是必不可少的,但很少有人知道如何确保其正确性。这种代码的结构和用于构建它的开发过程限制了传统测试方法的实用性。软件验证的形式化方法在确保代码正确性方面取得了巨大的成功,但通常需要比自然科学和社会科学更专业的培训,开发时间和资金。在这里,我们提出了一个Python库,它使用轻量级的形式化方法来提供正确性保证,而不需要专门的知识或大量的时间投资。我们的包提供了使用细化类型的函数入口和出口条件契约的运行时验证。它允许检查合同中的超属性,并提供自动测试用例生成来补充在线检查。我们共同开发了我们的工具与一个中型($\approx$ 3000磅)软件包,它模拟决策的认知神经科学。除了帮助我们在开发周期的早期定位小错误之外,我们的工具还能够定位四个使用传统测试方法可能很难找到的错误。它还能够发现用户代码中不包含契约或细化类型注释的bug。这表明形式化方法可以用来验证科学软件的正确性,这是很难测试的主流方法。
2019-09-01 cs.SE
Vérification d'assemblages de composants logiciels : Application aux modèles de composants UML2.0 et Ugatze
构件化方法的目标是通过一个连贯的、简单的构件组装来实现重用。但是,获得一个连贯的组件组装并不是一件容易的事情。为了实现这一目标,我们主张区分不同的句法,结构,语义,同步和服务质量合同的合同方法。我们已经成功地将这种方法应用于两个模型的半正式的合同组件:UML2.0和Ugatze。实际上,我们提出了两种方法:VerifientUML2.0和VerifientUgatze。VerifientUML2.0方法的目的是通过两个正式的组件模型Acme/Armani和Wright验证语法,结构,同步和质量服务合同的UML2.0组件组装。VerifientUML2.0有两个工具:Wright 2Ada和Wright 2fdr。工具Wright 2fdr允许将Wright表达式转换为CSP合约,以便使用模型检查器FDR验证同步。它是一个IDM工具Wright 2Ada,允许将Wright代码转换为Ada,以便在静态分析和与Ada相关的动态工具上打开UML2.0。VerificientUgatze方法提供了一个框架,允许通过Acme/Armani检查Ugatze组件装配的语法和结构合同。
2012-07-09 cs.SE
Runtime Verification of Self-Adaptive Systems with Changing Requirements
为了准确地做出自适应决策,自适应系统需要在运行时精确地分析自身。为此,可以在反馈循环中使用运行时验证来检查托管系统是否满足形式化为时间逻辑属性的需求。但是,这些需求可能会由于系统的发展或环境、管理系统和需求本身的不确定性而发生变化。因此,由运行时验证调查的属性必须动态地适应于表示不断变化的需求,同时保留迄今为止收集的关于需求满足的知识,所有这些都具有最小的延迟。为了满足这一需求,我们提出了一个运行时验证方法的自适应系统不断变化的需求。我们的方法使用属性规范模式来自动获取具有精确语义的自动机,这些自动机是运行时验证的基础。自动机可以在运行时验证期间安全地进行调整,同时保留中间验证结果,以无缝地反映需求变化并实现连续验证。我们在身体传感器网络的Arduino原型和Timescales基准上评估了我们的方法。结果表明,我们的方法是超过五倍的速度比典型的方法重新部署和重新启动运行时监视器,以反映需求的变化,同时提高系统的可信度,避免中断的验证。
2023-03-29 cs.SE
Realization and Extension of Abstract Operation Contracts for Program Logic
对于具有形式正确性证明的工程软件来说,在软件或其规范发生变化的情况下,证明可以有效地重用是至关重要的。不幸的是,在现实中,即使是代码或其规范中的微小变化也经常导致不成比例的验证工作浪费:例如,每当一个方法的规范被修改时,其正确性的证明就会中断,所有基于此规范的其他证明也会中断。抽象方法调用是最近提出的方法调用验证规则,允许有效的系统重用证明。在这篇论文中,我们实现,扩展和评估这种方法的关键验证系统。
2015-01-18 cs.SE
Generating Logical Specifications from Requirements Models for Deduction-based Formal Verification
工作涉及自动生成的逻辑规格的需求模型。以这种方式获得的逻辑规范可以使用演绎推理进行形式化验证。形式化验证关注模型行为的正确性。需求工程的可靠性对于软件开发过程的所有阶段都是必不可少的。演绎推理是一种重要的形式化方法。然而,逻辑规范,被认为是一组时序逻辑公式,很难指定手动经验不足的用户,这一事实可以被视为一个重大障碍,实际使用的演绎为基础的验证工具。提出了一种利用UML图建立需求模型的方法,包括逻辑规格说明。将活动图组织到预定义的工作流模式中可以自动提取逻辑规范。所提出的方法的关键方面是集成的需求工程阶段和逻辑规格的自动生成。提出了一种基于演绎的验证系统。推理过程可以基于语义表方法。提供了一个简单的需求获取和验证的示例。
2014-02-09 cs.SE
A Methodology for Developing a Verifiable Aircraft Engine Controller from Formal Requirements
验证复杂的安全关键系统是一项重大挑战。手动测试和模拟经常使用,但只能探索系统可达状态的子集。形式化方法是一种基于知识的软件规格说明和开发技术,它可以提供系统状态空间上的属性证明和穷举检查。在本文中,我们提出了一个正式的需求驱动的方法,适用于我们的工业合作伙伴提供的飞机发动机控制器的模型。我们的方法开始正式化的控制器的自然语言的要求,使用(预先存在的)正式的需求获取工具(FRET),迭代,与我们的行业合作伙伴协商。一旦形式化,FRET可以自动转换的要求,使他们的验证旁边的Simulink模型的飞机发动机控制器;的要求也可以指导形式化验证使用其他方法。在我们的方法中,这两个并行流寻求结合正式的需求引出,经典的验证方法和运行时验证的结果,以支持在Simulink中建模的航空航天系统的验证,从需求阶段到执行。我们的方法利用正式方法的力量,补充现有的验证技术,并支持整个验证过程中的需求的可追溯性。这种方法通过确保预先正式化要求并在开发过程中可用,简化了开发可验证飞机发动机控制器的过程。在本文中,我们给出了一个概述(FRET),描述我们的方法和工作的形式化和验证的要求,并概述了未来的工作,使用我们的方法。
2021-10-18 cs.SE
Local and Global Analysis: Complementary Activities for Increasing the Effectiveness of Requirements Verification and Validation
本文提出了一种独特的方法来连接需求工程(RE)活动到一个过程框架,可以用来获得质量要求,减少支出的努力和成本。我们提出了一个两阶段模型,这是新颖的,因为它引入了概念的验证和确认(V&V)的早期需求生存周期。在第一阶段,我们在为每个单独不同的系统功能引出需求之后立即执行V&V。因为第一阶段的重点是迭代地捕获较小的相关需求集,所以每个相应的V&V活动更好地集中于检测和纠正每个需求集中的错误。在第二阶段,启动补充验证活动;相应的重点是要求集之间的联系质量,而不是要求集内的要求。因此,这种方法减少了核查工作,并加强了对核查任务的关注。与其他模型不同,我们的方法在需求的引出和V&V活动的执行之间具有最小的时间延迟。由于时间间隔很短,涉众对需求、其背景和理由有了更清楚的回忆;这增强了涉众的反馈。此外,我们的模型包括与软件行业中采用的有效RE过程密切相关的活动。因此,我们的方法有助于更好地理解需求流,并为可再生能源过程的实施提供指导。
2005-03-02 cs.SE
A contract-based method to specify stimulus-response requirements
有许多形式化的方法以声明的形式来捕捉刺激-反应需求。还需要有人将得到的声明性语句翻译成命令式程序。本文描述了一种方法,规范和验证的刺激反应的要求,在命令式程序例程的形式与条件和断言。然后程序证明者直接对照所述需求检查候选程序。文章说明了该方法,通过将其应用到ASM模型的起落架系统,一个广泛使用的现实的例子,提出了评估规范和验证技术。
2017-04-17 cs.SE
Teaching Design by Contract using Snap!
随着演绎程序验证研究的进展,新的工具和技术已成为可用于支持契约式设计推理的非平凡程序编写的广泛使用的程序设计语言。然而,演绎程序验证仍然是专家的活动,在编程,规范和验证方面有丰富的经验。我们想改变这种情况,通过开发程序验证技术,可用于更大的观众。在本文中,我们介绍了我们如何开发原型程序验证支持Snap!啪!是一种可视化的程序设计语言,特别针对高中生。我们以类似的视觉风格添加了规约语言构造,旨在使预期的语义从规范构造的外观和感觉中变得清晰。我们提供Snap的静态和动态验证支持!程序.特别注意错误消息,使其尽可能直观。
2021-07-12 cs.PL cs.SE
Logic Verification of Product-Line Variant Requirements
变体需求的形式化验证在软件产品线(SPL)领域引起了广泛的兴趣。特征图被广泛用于对产品线变体进行建模。然而,缺乏精确定义的正式符号表示和验证这样的模型。本文提出了一种使用一阶逻辑对SPL变体特征图进行建模和验证的方法。它提供了一个精确和严格的形式化的解释的功能图。逻辑表达式可以通过使用命题连接词对变量及其依赖关系进行建模来构建。然后,这些表达式可以通过任何合适的验证工具进行验证。一个计算机辅助调度(CAD)系统的变异特征模型的案例研究来说明验证过程。
2014-02-23 cs.SE
Partial Contracts Suffice: Sound, LLM-Inferred Regression Verification
The University of Manchester(曼彻斯特大学)
研究软件回归验证难题,提出基于契约的工具,探讨部分契约的充分性,通过强化契约、自动推断等方法,实现可靠验证,在多方面取得良好效果,证明安全保留条件等价性。
2026-07-14 cs.AI cs.SE
Smart Contract Generation for Inter-Organizational Process Collaboration
目前,跨组织过程协作(IOPC)已被广泛用于支持业务过程执行的分布式系统的设计和开发。基于区块链的IOPC可以在参与者之间建立可信的数据共享,越来越受到关注。这种研究的核心是将图形模型(例如,BPMN)转换成可以在区块链环境中执行的称为智能合约的程序代码。在这种情况下,适当的智能合约在正确实施基于区块链的IOPC中起着至关重要的作用。实际上,图形模型的质量影响着智能合约的生成。有问题的模型(例如,死锁)将导致不正确的合同(导致意外行为)。为了避免这种不期望的实现,本文探索通过使用已验证的形式化模型作为输入而不是图形模型来生成智能合约。具体来说,我们介绍了一个支持智能合约自动生成的原型框架,提供了从建模、验证、翻译到实现的端到端解决方案。该框架的核心之一是从消息交互的角度为BPMN协作模型提供一个基于CSP#的形式化描述。这种形式化为图形模型提供了精确的执行语义和模型验证,并为智能合约生成提供了经过验证的形式化模型。另一个新颖之处在于,它引入了一种基于语法树的翻译算法,将形式模型直接映射到智能合约中。所需的形式、核查和翻译技术对用户是透明的,不会造成额外负担。最后通过一组实验验证了该框架的有效性。
2023-03-16 cs.SE
AutoDeduct: A Tool for Automated Deductive Verification of C Code
AutoDeduct基于Frama-C框架,通过两个插件自动推断C函数的ACSL契约,减少手动标注开销,并在工业示例上验证了其有效性。
2025-01-18 cs.LO cs.SE
Contract-based Verification of Digital Twins
针对数字孪生模型验证难题,提出黑盒式验证方法,结合模型检测与系统级契约,通过UPPAAL验证Simulink实现的数字孪生行为,在锅炉案例中成功识别预测误差,证明方法有效性。
2025-04-07 cs.FL cs.SE
Challenges in aligning requirements engineering and verification in a large-scale industrial context
本文通过在大型软件公司开展访谈研究,识别需求与验证过程协调中的多类关键挑战,并为从业者和研究者提供改进对齐管理的依据。
2023-07-23 cs.SE
Towards Practical Requirement Analysis and Verification: A Case Study on Software IP Components in Aerospace Embedded Systems
本文以中国空间技术研究院的五个真实航空航天嵌入式软件IP组件为案例,提出利用大语言模型自动将自然语言需求转换为时序逻辑规范,并结合三种验证技术实现形式化验证,从而降低对领域专家和人工的依赖。
2024-03-31 cs.SE
Compositional Verification of Evolving Software Product Lines
提出了一种新的软件产品线(SPL)设计验证方法。所提出的方法假设的需求和设计建模为有限状态机的可变性信息。在需求和设计级别的可变性信息在不同的抽象级别上以不同的方式表达。此外,所提出的方法支持SPL的验证,其中新的功能和可变性可以逐步增加。考虑到SPL的设计和要求,所提出的设计验证方法可确保设计级的每个产品在行为上符合要求级的产品。一致性程序是组合的,在这个意义上,由多个功能组成的整个SPL的验证减少到单个功能的验证。该方法已被实施,并在一个原型工具SPLEnD(SPL引擎设计验证)上的一对夫妇相当大的案例研究证明。
2012-12-18 cs.SE
Formal Analysis of the Contract Automata Runtime Environment with Uppaal: Modelling, Verification and Testing
Formal Methods and Tools Lab, ISTI–CNR, Pisa, Italy(ISTI-国家研究委员会,意大利比萨)
本文基于Uppaal对合同自动机运行环境进行形式化建模、验证与测试,以提升开源分布式应用的可靠性。
2026-03-04 cs.FL cs.SE
Using Multi-Viewpoint Contracts for Negotiation of Embedded Software Updates
在本文中,我们解决的问题,在安全关键的嵌入式系统应用程序部署后的变化。我们的目标是用现场正式分析取代基于实验室的验证,以确定更新是否可以安全应用。这是具有挑战性的,因为它需要一个自动化的过程,能够处理多个观点,如功能的正确性,定时等,为此,我们提出了一个原始的方法,基于合同的谈判软件更新。合同的使用使我们能够在实验室和现场之间干净地划分验证工作。此外,我们将展示如何依赖于现有的视点特定的方法进行更新协商。我们说明了我们的方法上的一个具体的例子,灵感来自汽车领域。
2016-06-01 cs.SE
Towards Systematic Specification and Verification of Fairness Requirements: A Position Paper
本文提出基于知识图谱的公平性框架,以解决公平性需求缺乏形式化规约与验证机制的问题,并讨论了相关挑战与研究路线。
2025-09-22 cs.SE
Formal Specification and Verification of Solidity Contracts with Events
Solidity语言中的事件提供了去中心化应用程序的链上服务与这些服务的用户之间的通信方式。事件通常被用作从用户的角度来看相关的合约执行的抽象。因此,用户必须能够理解所发出事件的含义并信任其有效性。本文提出了一种源代码级的方法,用于Solidity合同的形式化规范和验证,主要关注事件。我们的方法允许根据事件跟踪的链上数据来指定事件,以及定义区块链状态与事件提供的抽象视图之间的对应关系的谓词。该方法是在solc验证,Solidity的模块化验证,我们证明了它的适用性与各种例子。
2020-05-20 cs.LO cs.PL cs.SE
A Survey of Verification, Validation and Testing Solutions for Smart Contracts
智能合约是存储在区块链上的程序,在满足预定条件时运行。然而,设计和实现智能合约并不简单,因为在区块链上部署时,不再可能修改它(无论是为了改进还是修复错误)。只有通过部署一个新版本的智能合约才有可能,这是昂贵的(新合约的部署成本和旧合约的销毁成本)。为此,有许多解决方案可以在部署之前测试智能合约。由于实现无错误的智能合约可以提高可靠性并降低成本,因此测试是一项必不可少的活动。在本文中,我们将试图解决智能合约测试的现有解决方案分为以下几类:公共测试网络,安全分析工具,区块链模拟器和区块链模拟器。然后,我们分析这些解决方案,对它们进行分类,并展示它们的优点和缺点。
2021-12-07 cs.DC cs.MA cs.SE
From Natural Language Requirements to Graphical User Interfaces: Automated Prototyping and Verification with Pretrained Language Models
Universität Mannheim(曼海姆大学)
本研究针对将自然语言需求转化为GUI原型及GUI应用需求验证的两大挑战,提出基于预训练语言模型的自动化方法,可显著减少相关手动工作量。
2026-08-26 cs.SE
GUISpector: An MLLM Agent Framework for Automated Verification of Natural Language Requirements in GUI Prototypes
针对现有GUI测试方法难以应对现代界面复杂性、缺乏可执行反馈等问题,提出GUISpector框架,利用MLLM智能体自动验证GUI原型的自然语言需求,提取可执行反馈并提供集成工具,实验验证了其有效性。
2025-10-06 cs.SE
Challenges of Requirements Communication and Digital Assets Verification in Infrastructure Projects
本研究通过道路和铁路领域的两个案例及10位专家访谈,探索基础设施项目中需求沟通与数字资产验证的挑战,识别出13项挑战及原因后果,发现其与软件工程相似,需进一步研究验证潜在解决方案。
2025-04-29 cs.SE
Short Version of VERIFAI2026 Paper -- Learning Infused Formal Reasoning: Contract Synthesis, Artefact Reuse and Semantic Foundations
Maynooth University(梅努斯大学)
本文提出学习融合形式推理框架,通过自然语言要求自动合成合同、利用图匹配和学习嵌入重用验证成果,并基于UTP和机构理论建立数学语义基础,推动验证从孤立证明转向知识驱动过程。
2026-04-14 cs.SE
Correctness Witnesses with Function Contracts
本文针对软件验证见证格式2.0无法表达函数契约的局限,提出扩展以支持ACSL风格的前置和后置条件,从而增强工具间信息交换能力。
2025-01-21 cs.PL cs.SE
Verification, Validation and Integrity of Distributed and Interchanged Rule Based Policies and Contracts in the Semantic Web
基于规则的策略和契约系统在软件工程中的特性很少被研究。这是一个严重的遗漏,因为在基于规则的策略或契约表示语言中,规则被用作声明性程序设计语言来形式化真实世界的决策逻辑并在其上创建IS生产系统。本文采用了一种来自极限编程的SE方法,即测试驱动开发,并讨论了它如何适用于策略和合同规范的验证、确认和完整性测试(V&V&I)。由于测试驱动的方法集中在行为方面和得出的结论,而不是规则库的结构和故障的原因,它是独立的规则语言和测试系统的复杂性,因此更容易使用和理解的规则工程师和用户。
2006-09-29 cs.AI cs.SE
Requirement analysis, Architectural design and Formal verification of a multi-agent based University Information Management System
提出了一种基于多Agent的高校信息管理系统的分析、设计和形式化验证方法。大学IMS访问信息,创建报告,方便教师和学生。协调器代理管理所有代理之间的协调。它还管理整个系统的数据库连接。建议的IMS是基于BDI代理体系结构,该模型的基础上的信念,愿望和意图的系统。安全性和活性的正确性性质由一阶谓词逻辑指定。
2015-01-06 cs.SE
Model Checking Contractual Protocols
本文讨论了如何模型检验,用于验证动态系统的行为需求的技术,可以有效地部署合同的验证。对当事人之间的协议采取过程观点,即合同随着时间的推移在影响其状态变化的行为或更一般的事件方面的演变而被建模。建模是用Petri网在其他研究工作的贸易程序的代表性的精神。本文通过一个例子说明了验证技术的所有阶段,并认为这种方法是有用的,特别是在合同前谈判和合同起草的背景下。这里报告的工作是一个更广泛的项目的一部分,对基于逻辑的工具,用于分析和表示的法律合同的发展。
2001-06-07 cs.LO cs.SE
Verification Modulo Tested Library Contracts
Indian Institute of Science(印度科学研究院);University of Illinois Urbana-Champaign, Department of Computer Science(伊利诺伊大学厄巴纳-香槟分校计算机科学系);University of Wisconsin(威斯康星大学)
本文提出了一种基于测试库合同的验证方法,通过合成模块化合同和上下文合同来确保客户端程序的正确性,并利用反例引导学习框架进行验证。
2026-05-07 cs.LG cs.LO cs.PL
A Quality Framework for Agile Requirements: A Practitioner's Perspective
验证活动是必要的,以确保以正确的方式规定要求。然而,到目前为止,需求验证的研究主要集中在传统的前期需求。敏捷或即时需求的定义是不完整的,不具体的,并且在最初指定时可能是模糊的,这表明了不同的“正确性”概念。我们分析了敏捷需求质量的验证应该如何进行,基于传统和敏捷需求的文献。这就产生了一个敏捷质量框架,该框架针对开源项目中的特定需求类型的特性请求和敏捷项目中的用户故事进行了实例化。我们已经与来自荷兰敏捷社区的八位从业者对我们的功能请求框架进行了初步的定性验证,收到了总体积极的反馈。
2014-06-18 cs.SE
Incorporating Verification Standards for Security Requirements Generation from Functional Specifications
针对软件安全需求人工生成易出错的问题,提出F2SRD自动化方法,结合OWASP ASVS的验证需求,经检索和GPT4生成两阶段,产出更具启发性、多样性和特异性的安全需求。
2025-05-17 cs.SE
OTS/CafeOBJ2JML: An attempt to combine Design By Contract with Behavioral Specifications
Conventional设计(DBC)影响了正式规约语言的发展,这些语言允许混合规范和实现代码,如Eiffel,Java建模语言(JML)和Spec #。同时,代数规约语言也得到了独立发展,并以严格的数学方式为大型复杂系统的设计规约和验证提供了充分的支持。但是,不能保证最终实现将符合规范。在本文中,我们提出了使用后者的规范和验证的系统设计,然后通过提出两者之间的翻译,使用前者,以确保实现尊重规范,从而享受验证的属性。
2012-08-09 cs.SE
Fast and Reliable Formal Verification of Smart Contracts with the Move Prover
Move Prover(MVP)是一个用Move程序设计语言编写的智能合约的正式验证器。MVP有一个表达性很强的规约语言,并且足够快速和可靠,开发人员可以在几分钟内例行运行它,并在集成测试中运行它。除了智能合约和Move语言的简单性之外,MVP的实用性还取决于三个转换:(1)无别名内存模型,(2)细粒度不变式检查,以及(3)单态化。Diem区块链的整个Move代码已经被广泛指定,并且可以在几分钟内由MVP完全验证。Diem框架中的更改必须在集成到GitHub上的开源存储库之前成功验证。
2022-02-13 cs.PL cs.SC cs.SE
One Signature, Multiple Payments: Demystifying and Detecting Signature Replay Vulnerabilities in Smart Contracts
本文首次实证研究智能合约签名重放漏洞(SRV),从1419份审计报告识别出5种SRV类型,设计LASiR结合LLM语义理解与符号执行检测漏洞,实验显示其F1值达87.90%,且SRV在目标合约中分布广泛。
2025-11-12 cs.CR cs.SE
Meta-Engineering Harnesses for AI-Native Software Production: A Contract-Driven Adversarial Verification Architecture with Early Deployment Report
HireNimbus
提出一种元工程框架,通过合约驱动、角色专业化AI代理和对抗性验证,实现AI原生软件的持续生产、验证与改进,并在小型服务公司的CTO即服务场景中部署17项功能,验证了其可靠性。
2026-05-25 cs.AI cs.SE
Klever: Verification Framework for Critical Industrial C Programs
针对大型关键工业 C 程序验证耗时且缺乏环境建模、多版本配置验证等支持的问题,本文提出 Klever 框架以降低自动验证工具的应用成本。
2023-09-28 cs.SE
All Your Tokens are Belong to Us: Demystifying Address Verification Vulnerabilities in Solidity Smart Contracts
本文针对以太坊智能合约中未充分研究的地址验证漏洞,设计并实现了基于静态EVM操作码模拟的轻量级污点分析器AVVERIFIER,实现了高精确率与召回率,并发现了大量未披露的漏洞合约。
2024-05-31 cs.CR cs.SE
Requirements Analysis of a Quad-Redundant Flight Control System
在本文中,我们详细介绍了我们的努力,形式化和证明的四余度飞行控制系统(QFCS)在美国宇航局的运输类模型(TCM)的要求。我们使用的组合方法与假设保证合同,对应于嵌入在AADL系统架构模型的软件组件的要求。这种方法的目的是利用验证工作和工件,已经在航空电子领域的典型软件验证过程的一部分。我们的方法是支持AADL附件,允许规格的合同,以及一个工具,称为AGREE,用于执行成分验证。本文的目标是显示的组合验证方法应用于一个现实的航空电子系统的好处,并证明在执行这种分析的AGREE工具的有效性。
2015-02-11 cs.SE
Formal Verification of Dynamic and Stochastic Behaviors for Automotive Systems
功能和非功能需求的形式化分析在汽车系统中至关重要。这些系统的行为往往依赖于复杂的动力学以及随机行为。我们提出了一个概率扩展的时钟约束规约语言,称为PrCCSL,规范(非)功能性需求,并证明了需求的正确性,通过映射到UPPAAL模型的语义规范。以前的工作扩展在本文中,包括一个扩展的PrCCSL,称为PrCCSL*,规范的随机和动态系统的行为,以及复杂的要求相关的多个事件。为了形式化地分析PrCCSL* 中规定的系统行为/需求,将PrCCSL* 规范转换为随机UPPAAL模型以进行形式化验证。我们实现了一个自动翻译工具,即ProTL,它也可以使用UPPAAL-SMC作为分析后端对PrCCSL* 规范进行形式化分析。我们的方法证明了两个汽车系统的案例研究。
2019-10-31 cs.SE
Seamless Requirements
功能需求规范的流行符号经常忽略开发人员的需求,针对特定的开发模型,或者需要将需求转换为测试进行验证;结果可能会产生不同步或完全不兼容的工件。无缝需求(Seamless Requirements)是一种新的描述功能需求的方法,它有助于开发人员对需求的理解和软件质量的提高,而与过程无关,同时由于在形式化验证存在的情况下没有测试,过程本身变得更轻。一个开发案例说明了这些好处,并讨论了无缝需求与其他方法的比较。
2017-04-13 cs.SE
Contract Based Verification of Non-functional Requirements for Embedded Automotive C Code
KTH Royal Institute of Technology(皇家理工学院);TRATON AB(特拉顿股份公司)
本文提出了一种用于验证嵌入式汽车C代码非功能需求的合同方法,通过设计通用规则和接口规范语言,结合Frama-C插件实现对控制流和数据流的检查,确保模块调用安全函数并避免未初始化变量。
2026-08-17 cs.PL cs.SE
Seamless Object-Oriented Requirements
契约式设计通过将软件需求与实现统一起来,实现了无缝的软件开发。然而,在其纯粹的形式下,契约式设计在契约的表达性、可验证性和可重用性方面留下了一些问题。这些问题大大降低了无缝开发的实用性。本文介绍了无缝面向对象的需求-一种新的无缝开发方法,它建立在契约式设计和现在可用的高级程序证明工具的基础上。文章解释和说明了新的方法,最后定量评估的程度,该方法解决了传统合同的问题。
2019-11-23 cs.PL cs.SE
A Property Specification Pattern Catalog for Real-Time System Verification with UPPAAL
内容:实时的【形】需求的规范模式目录的目标是掩盖在用于验证的定时时序逻辑中指定此类需求的复杂性。为此,它们提供前端来表达基于模式的自然语言需求,并将其转换为合适逻辑中的公式。然而,广泛使用的实时的【形】模型检验工具UPPAAL只支持这些公式的一个有限的子集,只专注于基本的和非嵌套的可达性,安全性和活性属性。这种限制使得许多规范模式不适用。作为一种变通方法,需要手动构建时间观察者自动机来表达这些模式所设想的复杂需求。目标:在这项工作中,我们填补了这些空白,提供了一个全面的规范模式目录UPPAAL。该目录支持定性和实时的【形】要求,并涵盖现有目录的所有相应模式。方法:将我们提出的目录与UPPAAL集成。它支持使用模式的定性和实时的【形】需求的规范,并提供了一个自动生成器,将这些需求转换为观察者自动机和TCTL公式。产生的工件用于验证UPPAAL中的系统。因此,我们的目录使一个自动化的端到端的验证过程UPPAAL的基础上属性规范模式和观察自动机。结果:我们评估我们的目录上的三个UPPAAL系统模型在文献中报道,主要应用于工业环境。因此,不仅相关UPPAAL模型的可重复性是可能的,而且还验证了自动化,无缝和准确的模式和基于验证过程的验证。结论:建议的UPPAAL属性规范模式目录使从业者能够指定定性和实时的【形】要求.
2022-11-07 cs.SE
A Hypergraph-based Formalization of Hierarchical Reactive Modules and a Compositional Verification Method
本文基于超图重新表述反应模块理论,提出一种针对层次化同步系统的自动组合验证方法,通过假设-保证契约划分并分别验证模块,支持循环依赖,实验表明可用SMT模型检查器有效实现。
2024-03-16 cs.SE
An approach for performance requirements verification and test environments generation
针对性能需求建模与测试研究不足的问题,提出PRO-TEST方法,可建模性能需求、发现歧义与完整性缺陷并生成测试环境参数,在149项需求上完成评估。
2024-02-29 cs.SE
A decision-basis contract for auditable LLM-assisted medical billing verification: deterministic rules, verbatim evidence, and fail-closed abstention
Aschaffenburg University of Applied Sciences(阿沙芬堡应用科学大学)
本研究提出一种基于决策基础合同的LLM辅助医疗账单审核方法,通过分离确定性规则与语义评估,要求逐字证据并采用故障关闭式弃权,实现可审计的决策记录,实验显示明确文档要求提升缺失信息识别。
2026-09-14 cs.AI cs.SE
Effective Requirements Generation: Synchronizing Early Verification & Validation, Methods and Method Selection Criteria
本文提出了一种有效的需求生成过程的实施和执行的方法。我们通过提供一个定义良好的需求工程模型来实现这一目标,该模型包括验证和确认(V&V)以及分析。此外,我们确定了重点活动目标和映射流行的方法,以较低级别的活动,并定义了一个标准为基础的过程,以优化方法的选择伴随活动。与其他模型不同,我们的模型解决了完整的需求生成过程,并由定义在更充分的抽象层次上的活动组成。此外,我们的模型还采用了一种独特的V&V方法,可提高质量并降低生成需求的成本。此外,活动目标被确定并明确说明-而不是像当前模型中那样隐含。为了帮助选择一组合适的方法,我们已经将常用的方法映射到基于其目标的活动。最后,我们已经确定了方法选择标准,并规定了一组简化的方法,这些方法可以优化模型中每个活动的标准。因此,我们的方法有助于选择方法的任务,通过使用选择标准,以减少一个更小的,可管理的一组潜在的方法的大集合。该模型、方法到活动目标的清晰映射以及基于标准的过程,共同为需求生成过程的有效实施和执行提供了急需的指导。
2005-03-02 cs.SE
Beyond Postconditions: Can Large Language Models infer Formal Contracts for Automatic Software Verification?
Carl von Ossietzky Universität Oldenburg(奥尔登堡卡尔·冯·奥西茨基大学)
本文提出NL2Contract任务,利用大型语言模型将自然语言转换为形式化功能契约(含前置与后置条件),实验证明其生成契约健全且能减少验证误报,并有效捕获真实错误。
2025-10-14 cs.AI cs.PL cs.SE
LibScan: Smart Contract Library Misuse Detection with Iterative Feedback and Static Verification
Hainan University(海南大学);University of Chinese Academy of Sciences(中国科学院大学)
本文提出LibScan框架,结合大语言模型和规则分析,识别智能合约中八类库误用,通过迭代修正和知识库提升检测准确率至85.15%。
2026-04-01 cs.CR cs.SE