首页 > 最新文献

Science of Computer Programming最新文献

英文 中文
MDAPW3: MDA-based development of blockchain-enabled decentralized applications MDAPW3:基于 MDA 的区块链去中心化应用开发
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-08-20 DOI: 10.1016/j.scico.2024.103185
Ali Samanipour , Omid Bushehrian , Gregorio Robles

Web3.0 Decentralized Application (DApp) is a class of decentralized software in which at least the business logic of the software is implemented using blockchain-based smart contracts. Features such as transparency, decentralized execution environment, no need for a central authority, immutability of data from manipulation, as well as a native transaction-based payment system based on cryptographic tokens are the main advantages of Web3.0 DApps over conventional Web2.0 software in which the business logic and user data are centrally controlled by companies with no transparency. However, the development lifecycle of Web3.0 DApps involves many challenges due to the complexity of blockchain technology and smart contracts as well as the difficulties concerning with the integration of DApp on-chain and off-chain components. To alleviate these challenges, a Model Driven Architecture (MDA) approach for the development of Web3.0 DApps is proposed in this paper that streamlines the development of complex multi-lateral DApps and results in a product that is verifiable, traceable, low-cost, maintainable, less error-prone and in conformance with blockchain platform concepts. Opposed to previous studies in this area that applied MDA only for the development of smart contracts, our proposed MDA-based approach covers the full architecture of Web3.0 DApps: on-chain, off-chain and on-chain/off-chain communication patterns. The method application was demonstrated by implementing a land leasing Dapp where the requirement model (a BPMN choreography model) was transformed into CIM, PIM, and PSM instances successively, and finally, the code-base was generated based on the Ethereum platform technology stack. Epsilon Validation Language (EVL), Epsilon Object Language (EOL), and Epsilon Comparison Language (ECL) were used for the verification/validation of the model instances at each step. Furthermore, by evaluating the quality metrics of the proposed meta-models, we show that they have a better ontology coverage and are more reusable and understandable compared to previous meta-models.

Web3.0 去中心化应用程序(DApp)是一类去中心化软件,至少软件的业务逻辑是通过基于区块链的智能合约实现的。与传统的 Web2.0 软件相比,Web3.0 DApps 的主要优势在于透明、去中心化的执行环境、无需中央机构、数据不可篡改、基于加密代币的本地交易支付系统,而传统 Web2.0 软件的业务逻辑和用户数据由公司集中控制,不透明。然而,由于区块链技术和智能合约的复杂性,以及 DApp 链上和链下组件集成的困难,Web3.0 DApp 的开发生命周期面临许多挑战。为了缓解这些挑战,本文提出了一种用于 Web3.0 DApps 开发的模型驱动架构(MDA)方法,该方法简化了复杂的多边 DApps 的开发过程,使产品具有可验证、可追溯、低成本、可维护、不易出错以及符合区块链平台概念等特点。与以往仅将 MDA 应用于智能合约开发的研究不同,我们提出的基于 MDA 的方法涵盖了 Web3.0 DApp 的完整架构:链上、链下和链上/链下通信模式。该方法的应用通过实现一个土地租赁 Dapp 进行了演示,其中需求模型(BPMN 编排模型)被先后转化为 CIM、PIM 和 PSM 实例,最后基于以太坊平台技术栈生成了代码库。每一步都使用 Epsilon Validation Language(EVL)、Epsilon Object Language(EOL)和 Epsilon Comparison Language(ECL)对模型实例进行验证/确认。此外,通过评估所提出的元模型的质量指标,我们发现与以前的元模型相比,它们具有更好的本体覆盖率、可重用性和可理解性。
{"title":"MDAPW3: MDA-based development of blockchain-enabled decentralized applications","authors":"Ali Samanipour ,&nbsp;Omid Bushehrian ,&nbsp;Gregorio Robles","doi":"10.1016/j.scico.2024.103185","DOIUrl":"10.1016/j.scico.2024.103185","url":null,"abstract":"<div><p>Web3.0 Decentralized Application (DApp) is a class of decentralized software in which at least the business logic of the software is implemented using blockchain-based smart contracts. Features such as transparency, decentralized execution environment, no need for a central authority, immutability of data from manipulation, as well as a native transaction-based payment system based on cryptographic tokens are the main advantages of Web3.0 DApps over conventional Web2.0 software in which the business logic and user data are centrally controlled by companies with no transparency. However, the development lifecycle of Web3.0 DApps involves many challenges due to the complexity of blockchain technology and smart contracts as well as the difficulties concerning with the integration of DApp on-chain and off-chain components. To alleviate these challenges, a Model Driven Architecture (MDA) approach for the development of Web3.0 DApps is proposed in this paper that streamlines the development of complex multi-lateral DApps and results in a product that is verifiable, traceable, low-cost, maintainable, less error-prone and in conformance with blockchain platform concepts. Opposed to previous studies in this area that applied MDA only for the development of smart contracts, our proposed MDA-based approach covers the full architecture of Web3.0 DApps: on-chain, off-chain and on-chain/off-chain communication patterns. The method application was demonstrated by implementing a land leasing Dapp where the requirement model (a BPMN choreography model) was transformed into CIM, PIM, and PSM instances successively, and finally, the code-base was generated based on the Ethereum platform technology stack. Epsilon Validation Language (EVL), Epsilon Object Language (EOL), and Epsilon Comparison Language (ECL) were used for the verification/validation of the model instances at each step. Furthermore, by evaluating the quality metrics of the proposed meta-models, we show that they have a better ontology coverage and are more reusable and understandable compared to previous meta-models.</p></div>","PeriodicalId":49561,"journal":{"name":"Science of Computer Programming","volume":"239 ","pages":"Article 103185"},"PeriodicalIF":1.5,"publicationDate":"2024-08-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142048893","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Formal verification of timely knowledge propagation in airborne networks 机载网络中及时知识传播的形式验证
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-08-20 DOI: 10.1016/j.scico.2024.103184
Saswata Paul , Chris McCarthy , Stacy Patterson , Carlos Varela

Ensuring timely coordination between autonomous aircraft is a challenging problem in decentralized air traffic management (ATM) applications for urban air mobility (UAM) scenarios. This paper presents an approach for formally guaranteeing timely progress in a Two-Phase Acknowledge distributed knowledge propagation protocol by probabilistically modeling the delays using the theory of the Multicopy Two-Hop Relay protocol and the M/M/1 queue system. The guarantee states a probabilistic upper bound to the time for progress as a function of the probabilities of the total transmission and processing delays following two specific distributions. The proof uses a general library of formal theories, that can be used for the rigorous mechanical verification of autonomous aircraft coordination protocols using the Athena proof checker and assistant.

在城市空中交通(UAM)场景的分散式空中交通管理(ATM)应用中,确保自主飞行器之间的及时协调是一个具有挑战性的问题。本文提出了一种方法,利用多副本双跳中继协议和 M/M/1 队列系统的理论对延迟进行概率建模,从而正式保证两相确认分布式知识传播协议的及时性。该保证指出了进展时间的概率上界,它是遵循两个特定分布的总传输和处理延迟概率的函数。该证明使用了一个通用的形式理论库,可用于使用雅典娜证明检查器和助手对自主飞行器协调协议进行严格的机械验证。
{"title":"Formal verification of timely knowledge propagation in airborne networks","authors":"Saswata Paul ,&nbsp;Chris McCarthy ,&nbsp;Stacy Patterson ,&nbsp;Carlos Varela","doi":"10.1016/j.scico.2024.103184","DOIUrl":"10.1016/j.scico.2024.103184","url":null,"abstract":"<div><p>Ensuring timely coordination between autonomous aircraft is a challenging problem in decentralized air traffic management (ATM) applications for urban air mobility (UAM) scenarios. This paper presents an approach for formally guaranteeing timely progress in a Two-Phase Acknowledge distributed knowledge propagation protocol by probabilistically modeling the delays using the theory of the Multicopy Two-Hop Relay protocol and the M/M/1 queue system. The guarantee states a probabilistic upper bound to the time for progress as a function of the probabilities of the total transmission and processing delays following two specific distributions. The proof uses a general library of formal theories, that can be used for the rigorous mechanical verification of autonomous aircraft coordination protocols using the Athena proof checker and assistant.</p></div>","PeriodicalId":49561,"journal":{"name":"Science of Computer Programming","volume":"239 ","pages":"Article 103184"},"PeriodicalIF":1.5,"publicationDate":"2024-08-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142040718","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Automatic detection of infeasible paths in large-scale program based on program summaries 基于程序摘要自动检测大型程序中的不可行路径
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-08-02 DOI: 10.1016/j.scico.2024.103183
Yukun Dong, Shuqi Wang, Lulu Zhang, Xiaoshan Liu, Shuai Liu

The existence of infeasible paths in a program reduces the coverage of test cases and causes a waste of valuable testing resources. Detecting infeasible paths allows for focusing testing resources on feasible paths. This paper introduces a method for detecting infeasible paths based on program summaries. Our proposed method partitions the program into sequential statements, conditional statements and loop statements, and automatically generates statement summaries and function summaries. It analyzes the summaries to extract the path constraints and determines the feasibility of paths. We implemented a detection tool named DTSIP based on this method, and conducted experiments using a set of benchmark programs and open source projects. The results confirm the effectiveness of our method in detecting infeasible paths. It can detect both intraprocedural and interprocedural infeasible paths, demonstrating its broad applicability. Our method overcomes challenges associated with analyzing complex paths, achieving efficient feasibility determination while reducing processing time.

程序中不可行路径的存在会降低测试用例的覆盖率,造成宝贵测试资源的浪费。检测不可行路径可以将测试资源集中在可行路径上。本文介绍了一种基于程序摘要检测不可行路径的方法。我们提出的方法将程序分为顺序语句、条件语句和循环语句,并自动生成语句摘要和函数摘要。它通过分析摘要来提取路径约束,并确定路径的可行性。我们基于这种方法实现了一个名为 DTSIP 的检测工具,并使用一组基准程序和开源项目进行了实验。实验结果证实了我们的方法在检测不可行路径方面的有效性。它既能检测程序内的不可行路径,也能检测程序间的不可行路径,证明了它的广泛适用性。我们的方法克服了与分析复杂路径相关的挑战,在减少处理时间的同时实现了高效的可行性判断。
{"title":"Automatic detection of infeasible paths in large-scale program based on program summaries","authors":"Yukun Dong,&nbsp;Shuqi Wang,&nbsp;Lulu Zhang,&nbsp;Xiaoshan Liu,&nbsp;Shuai Liu","doi":"10.1016/j.scico.2024.103183","DOIUrl":"10.1016/j.scico.2024.103183","url":null,"abstract":"<div><p>The existence of infeasible paths in a program reduces the coverage of test cases and causes a waste of valuable testing resources. Detecting infeasible paths allows for focusing testing resources on feasible paths. This paper introduces a method for detecting infeasible paths based on program summaries. Our proposed method partitions the program into sequential statements, conditional statements and loop statements, and automatically generates statement summaries and function summaries. It analyzes the summaries to extract the path constraints and determines the feasibility of paths. We implemented a detection tool named DTSIP based on this method, and conducted experiments using a set of benchmark programs and open source projects. The results confirm the effectiveness of our method in detecting infeasible paths. It can detect both intraprocedural and interprocedural infeasible paths, demonstrating its broad applicability. Our method overcomes challenges associated with analyzing complex paths, achieving efficient feasibility determination while reducing processing time.</p></div>","PeriodicalId":49561,"journal":{"name":"Science of Computer Programming","volume":"239 ","pages":"Article 103183"},"PeriodicalIF":1.5,"publicationDate":"2024-08-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142011709","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
MacroSwarm: A scala framework for swarm programming 宏蜂群用于蜂群编程的 scala 框架
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-08-02 DOI: 10.1016/j.scico.2024.103182
Gianluca Aguzzi, Mirko Viroli

Programming swarm behaviors is a challenging task, due to the need to express collective behaviors in terms of local interactions among simple agents. Even if several programming frameworks have been proposed, they are often based on low-level abstractions, which makes the development of swarm applications complex and error-prone. Thus, we present MacroSwarm, an aggregate programming framework for the development of swarm behaviors. With this framework, it is possible to define a large variety of swarm behaviors, starting from simple movements to more complex ones, such as aggregation, flocking, and collective decision-making. In this paper, we present the main features of the framework and some simple examples of its API usage.

由于需要用简单代理之间的局部交互来表达集体行为,因此对蜂群行为进行编程是一项具有挑战性的任务。即使已经提出了一些编程框架,但它们通常都是基于低层次的抽象概念,这使得开发蜂群应用程序变得复杂且容易出错。因此,我们提出了用于开发蜂群行为的集合编程框架--MacroSwarm。有了这个框架,我们就可以定义各种各样的蜂群行为,从简单的运动到更复杂的行为,如聚集、成群和集体决策。在本文中,我们将介绍该框架的主要特点及其应用程序接口使用的一些简单示例。
{"title":"MacroSwarm: A scala framework for swarm programming","authors":"Gianluca Aguzzi,&nbsp;Mirko Viroli","doi":"10.1016/j.scico.2024.103182","DOIUrl":"10.1016/j.scico.2024.103182","url":null,"abstract":"<div><p>Programming swarm behaviors is a challenging task, due to the need to express collective behaviors in terms of local interactions among simple agents. Even if several programming frameworks have been proposed, they are often based on low-level abstractions, which makes the development of swarm applications complex and error-prone. Thus, we present MacroSwarm, an aggregate programming framework for the development of swarm behaviors. With this framework, it is possible to define a large variety of swarm behaviors, starting from simple movements to more complex ones, such as aggregation, flocking, and collective decision-making. In this paper, we present the main features of the framework and some simple examples of its API usage.</p></div>","PeriodicalId":49561,"journal":{"name":"Science of Computer Programming","volume":"239 ","pages":"Article 103182"},"PeriodicalIF":1.5,"publicationDate":"2024-08-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141943438","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Microservices simulator: An object-oriented framework for transactional causal consistency 微服务模拟器:面向对象的事务因果一致性框架
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-31 DOI: 10.1016/j.scico.2024.103181
Pedro Pereira, António Rito Silva

The development of microservice systems is complex due to the impact consistency problems have on the business logic design. On the other hand, the implementation of a microservice requires extensive use of middleware technology, which delays the test and identification of the cases where consistency problems can occur. We introduce the Microservices Simulator object-oriented framework that supports the rapid prototyping of a microservice system designed according to the Transactional Causal Consistency model.

由于一致性问题对业务逻辑设计的影响,微服务系统的开发非常复杂。另一方面,微服务的实现需要大量使用中间件技术,这就延迟了一致性问题的测试和识别。我们介绍了一个面向对象的框架,它支持根据事务因果一致性模型设计的微服务系统的快速原型开发。
{"title":"Microservices simulator: An object-oriented framework for transactional causal consistency","authors":"Pedro Pereira,&nbsp;António Rito Silva","doi":"10.1016/j.scico.2024.103181","DOIUrl":"10.1016/j.scico.2024.103181","url":null,"abstract":"<div><p>The development of microservice systems is complex due to the impact consistency problems have on the business logic design. On the other hand, the implementation of a microservice requires extensive use of middleware technology, which delays the test and identification of the cases where consistency problems can occur. We introduce the <em>Microservices Simulator</em> object-oriented framework that supports the rapid prototyping of a microservice system designed according to the Transactional Causal Consistency model.</p></div>","PeriodicalId":49561,"journal":{"name":"Science of Computer Programming","volume":"239 ","pages":"Article 103181"},"PeriodicalIF":1.5,"publicationDate":"2024-07-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141943437","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Preface for the special issue on SBFT'23: Search-Based and Fuzz Testing - Tools SBFT'23 特刊序言:基于搜索的模糊测试--工具
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-30 DOI: 10.1016/j.scico.2024.103180
Alessio Gambi (Guest Editor) , Sebastiano Panichella (Guest Editor)
{"title":"Preface for the special issue on SBFT'23: Search-Based and Fuzz Testing - Tools","authors":"Alessio Gambi (Guest Editor) ,&nbsp;Sebastiano Panichella (Guest Editor)","doi":"10.1016/j.scico.2024.103180","DOIUrl":"10.1016/j.scico.2024.103180","url":null,"abstract":"","PeriodicalId":49561,"journal":{"name":"Science of Computer Programming","volume":"239 ","pages":"Article 103180"},"PeriodicalIF":1.5,"publicationDate":"2024-07-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"142011710","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Hybrid dynamical systems logic and its refinements 混合动力系统逻辑及其完善
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-25 DOI: 10.1016/j.scico.2024.103179
André Platzer

Hybrid dynamical systems describe the mixed discrete dynamics and continuous dynamics of cyber-physical systems such as aircraft, cars, trains, and robots. To justify correctness properties of the safety-critical control algorithms for their physical models, differential dynamic logic (

) provides deductive specification and verification techniques implemented in the theorem prover
. The logic
is useful for proving, e.g., that all runs of a hybrid dynamical system α satisfy safety property φ (i.e.,
), or that there is a run of the hybrid dynamical system α ultimately reaching the desired goal φ (i.e.,
). Logical combinations of
's operators naturally represent safety, liveness, stability and other properties. Variations of
serve additional purposes. Differential refinement logic (
) adds an operator αβ expressing that hybrid system α refines hybrid system β, which is useful, e.g., for relating concrete system implementations α to their abstract verification models β. Just like
,
is a logic closed under all operators, which opens up systematic ways of simultaneously relating systems and their properties, of reducing system properties to system relations or, vice versa, reducing system relations to system properties. A second variant of
, differential game logic (
), adds the ability of referring to winning strategies of players in hybrid games, which is useful for establishing correctness properties where the actions of different agents may interfere either because they literally compete with one another or because they may interact accidentally. In the theorem prover
,
and its variations have been used for verifying ground robot obstacle avoidance, the Federal Aviation Administration's Next-Generation Airborne Collision Avoidance System ACAS X, and the Federal Railroad Administration's train control model.

混合动力系统描述了飞机、汽车、火车和机器人等网络物理系统的混合离散动力和连续动力。为了证明其物理模型的安全关键控制算法的正确性,微分动态逻辑()提供了在定理证明器中实现的演绎规范和验证技术。该逻辑可用于证明混合动力系统 α 的所有运行都满足安全属性 φ (即),或证明混合动力系统 α 有一个运行最终达到预期目标 φ (即)。运算符'的逻辑组合自然代表了安全性、有效性、稳定性和其他属性。的变体还有其他用途。微分细化逻辑()增加了一个运算符 α≤β 表示混合系统 α 细化混合系统 β,这对于将具体的系统实现 α 与它们的抽象验证模型 β 联系起来非常有用,就像Ⅳ是一个在所有运算符下都封闭的逻辑一样,它开辟了同时联系系统及其属性、将系统属性还原为系统关系或反之将系统关系还原为系统属性的系统化方法。微分博弈逻辑()的第二种变体增加了在混合博弈中参考博弈者获胜策略的能力,这对于建立正确性属性非常有用,因为在混合博弈中,不同代理的行动可能会相互干扰,这可能是因为它们在字面上相互竞争,也可能是因为它们可能意外地相互作用。在定理证明器中,及其变体已被用于验证地面机器人避障、美国联邦航空管理局的下一代空中防撞系统 ACAS X 和美国联邦铁路管理局的列车控制模型。
{"title":"Hybrid dynamical systems logic and its refinements","authors":"André Platzer","doi":"10.1016/j.scico.2024.103179","DOIUrl":"10.1016/j.scico.2024.103179","url":null,"abstract":"<div><p>Hybrid dynamical systems describe the mixed discrete dynamics and continuous dynamics of cyber-physical systems such as aircraft, cars, trains, and robots. To justify correctness properties of the safety-critical control algorithms for their physical models, <em>differential dynamic logic</em> (<figure><img></figure>) provides deductive specification and verification techniques implemented in the theorem prover <figure><img></figure>. The logic <figure><img></figure> is useful for proving, e.g., that all runs of a hybrid dynamical system <em>α</em> satisfy safety property <em>φ</em> (i.e., <figure><img></figure>), or that there is a run of the hybrid dynamical system <em>α</em> ultimately reaching the desired goal <em>φ</em> (i.e., <figure><img></figure>). Logical combinations of <figure><img></figure>'s operators naturally represent safety, liveness, stability and other properties. Variations of <figure><img></figure> serve additional purposes. <em>Differential refinement logic</em> (<figure><img></figure>) adds an operator <span><math><mi>α</mi><mo>≤</mo><mi>β</mi></math></span> expressing that hybrid system <em>α</em> refines hybrid system <em>β</em>, which is useful, e.g., for relating concrete system implementations <em>α</em> to their abstract verification models <em>β</em>. Just like <figure><img></figure>, <figure><img></figure> is a logic closed under all operators, which opens up systematic ways of simultaneously relating systems and their properties, of reducing system properties to system relations or, vice versa, reducing system relations to system properties. A second variant of <figure><img></figure>, <em>differential game logic</em> (<figure><img></figure>), adds the ability of referring to winning strategies of players in hybrid games, which is useful for establishing correctness properties where the actions of different agents may interfere either because they literally compete with one another or because they may interact accidentally. In the theorem prover <figure><img></figure>, <figure><img></figure> and its variations have been used for verifying ground robot obstacle avoidance, the Federal Aviation Administration's Next-Generation Airborne Collision Avoidance System ACAS X, and the Federal Railroad Administration's train control model.</p></div>","PeriodicalId":49561,"journal":{"name":"Science of Computer Programming","volume":"239 ","pages":"Article 103179"},"PeriodicalIF":1.5,"publicationDate":"2024-07-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S0167642324001023/pdfft?md5=34f140cc3ba2a330ad2477f9b1ee80cf&pid=1-s2.0-S0167642324001023-main.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141841477","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Model independent refusal trace testing 独立于型号的拒收跟踪测试
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-23 DOI: 10.1016/j.scico.2024.103173
Maciej Gazda, Robert M. Hierons

Software Testing is normally one of the main forms of verification and validation used in software development but it is often manual and so expensive and error prone. One of the proposed solutions to this is to use model-based testing, in which testing is based on a model of how the system should behave. If the model has a formal semantics, then there is potential to automate systematic test generation. In this paper we consider the case where the semantics of the model is a set of refusal traces, also called failure traces. We show how the notions of fundamental refusal and fundamental refusal trace can be used to derive a normalised transition system, which we call an observation transition system (OTS), from the semantics. We then show how, if this OTS has finitely many states, and we are given a bound m, one can produce a corresponding complete test suite: one that is guaranteed to determine correctness as long as the number of states of the OTS defined by the semantics of the system under test has no more than m states. In practice, the choice of value for m might be based on domain knowledge or a cost-benefit analysis. As far as we are aware, this is the first work to show how a finite complete test suite can be derived when the semantics under consideration is a set of refusal traces.

软件测试通常是软件开发过程中验证和确认的主要形式之一,但通常都是手工操作,成本高昂且容易出错。为此提出的解决方案之一是使用基于模型的测试,即根据系统应如何运行的模型进行测试。如果模型具有正式的语义,那么就有可能自动生成系统测试。在本文中,我们考虑的情况是,模型的语义是一组拒绝痕迹,也称为故障痕迹。我们展示了如何利用基本拒绝和基本拒绝轨迹的概念,从语义中推导出一个规范化的转换系统,我们称之为观测转换系统(OTS)。然后,我们将展示,如果这个 OTS 有有限多个状态,并且我们给定了一个约束 m,那么如何生成相应的完整测试套件:只要被测系统的语义所定义的 OTS 的状态数不超过 m,就能保证确定其正确性。在实践中,m 值的选择可能基于领域知识或成本效益分析。据我们所知,这是第一项展示如何在所考虑的语义是一组拒绝轨迹的情况下推导出有限的完整测试套件的工作。
{"title":"Model independent refusal trace testing","authors":"Maciej Gazda,&nbsp;Robert M. Hierons","doi":"10.1016/j.scico.2024.103173","DOIUrl":"10.1016/j.scico.2024.103173","url":null,"abstract":"<div><p>Software Testing is normally one of the main forms of verification and validation used in software development but it is often manual and so expensive and error prone. One of the proposed solutions to this is to use model-based testing, in which testing is based on a model of how the system should behave. If the model has a formal semantics, then there is potential to automate systematic test generation. In this paper we consider the case where the semantics of the model is a set of refusal traces, also called failure traces. We show how the notions of fundamental refusal and fundamental refusal trace can be used to derive a normalised transition system, which we call an <em>observation transition system</em> (OTS), from the semantics. We then show how, if this OTS has finitely many states, and we are given a bound <em>m</em>, one can produce a corresponding complete test suite: one that is guaranteed to determine correctness as long as the number of states of the OTS defined by the semantics of the system under test has no more than <em>m</em> states. In practice, the choice of value for <em>m</em> might be based on domain knowledge or a cost-benefit analysis. As far as we are aware, this is the first work to show how a finite complete test suite can be derived when the semantics under consideration is a set of refusal traces.</p></div>","PeriodicalId":49561,"journal":{"name":"Science of Computer Programming","volume":"239 ","pages":"Article 103173"},"PeriodicalIF":1.5,"publicationDate":"2024-07-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://www.sciencedirect.com/science/article/pii/S0167642324000960/pdfft?md5=424d76b3b101250fcecfac3f3f518da6&pid=1-s2.0-S0167642324000960-main.pdf","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141949521","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
TADA: A Toolkit for Approximate Distributed Agreement TADA:近似分布式协议工具包
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-23 DOI: 10.1016/j.scico.2024.103175
Eduardo Lourenço da Conceição , Ana Nunes Alonso , Rui Carlos Oliveira , José Pereira

TADA is a unique toolkit designed to foster the use and implementation of approximate distributed agreement primitives. Developed in Java, TADA provides ready-to-use implementations of several approximate agreement algorithms, as well as the tools to enable programmers/researchers to easily implement further protocols: A template that enables new protocol implementations to be created by simply changing specific functions; and high-level abstractions for communication and concurrency control. As an example, the toolkit includes a ready-to-use implementation for clock synchronisation between distributed processes. Further use cases can include sensor input stabilisation and distributed machine learning, or other instances of distributed agreement where network synchrony cannot be assumed, byzantine fault tolerance may be required and a bounded divergence in decision values can be tolerated.

TADA 是一个独特的工具包,旨在促进近似分布式协议基元的使用和实施。TADA 采用 Java 开发,提供了几种近似协议算法的即用型实现,以及使程序员/研究人员能够轻松实现更多协议的工具:只需更改特定函数,就能创建新协议实现的模板;以及用于通信和并发控制的高级抽象。举例来说,该工具包包括一个可随时使用的实施方案,用于实现分布式进程之间的时钟同步。其他用例还包括传感器输入稳定和分布式机器学习,或其他分布式协议实例,在这些实例中,不能假定网络同步,可能需要拜占庭容错,并可容忍决策值的有界偏差。
{"title":"TADA: A Toolkit for Approximate Distributed Agreement","authors":"Eduardo Lourenço da Conceição ,&nbsp;Ana Nunes Alonso ,&nbsp;Rui Carlos Oliveira ,&nbsp;José Pereira","doi":"10.1016/j.scico.2024.103175","DOIUrl":"10.1016/j.scico.2024.103175","url":null,"abstract":"<div><p>TADA is a unique toolkit designed to foster the use and implementation of approximate distributed agreement primitives. Developed in Java, TADA provides ready-to-use implementations of several approximate agreement algorithms, as well as the tools to enable programmers/researchers to easily implement further protocols: A template that enables new protocol implementations to be created by simply changing specific functions; and high-level abstractions for communication and concurrency control. As an example, the toolkit includes a ready-to-use implementation for clock synchronisation between distributed processes. Further use cases can include sensor input stabilisation and distributed machine learning, or other instances of distributed agreement where network synchrony cannot be assumed, byzantine fault tolerance may be required and a bounded divergence in decision values can be tolerated.</p></div>","PeriodicalId":49561,"journal":{"name":"Science of Computer Programming","volume":"238 ","pages":"Article 103175"},"PeriodicalIF":1.5,"publicationDate":"2024-07-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141960809","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
ScaRLib: Towards a hybrid toolchain for aggregate computing and many-agent reinforcement learning ScaRLib:面向聚合计算和多代理强化学习的混合工具链
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2024-07-23 DOI: 10.1016/j.scico.2024.103176
D. Domini, F. Cavallari, G. Aguzzi, M. Viroli

This article introduces ScaRLib, a Scala-based framework that aims to streamline the development cyber-physical swarms scenarios (i.e., systems of many interacting distributed devices that collectively accomplish system-wide tasks) by integrating macroprogramming and multi-agent reinforcement learning to design collective behavior. This framework serves as the starting point for a broader toolchain that will integrate these two approaches at multiple points to harness the capabilities of both, enabling the expression of complex and adaptive collective behavior.

本文介绍了 ScaRLib,这是一个基于 Scala 的框架,旨在通过集成宏观编程和多代理强化学习来设计集体行为,从而简化网络物理蜂群场景(即由许多交互的分布式设备组成的系统,这些设备共同完成全系统的任务)的开发过程。该框架是一个更广泛的工具链的起点,它将在多个点上整合这两种方法,以利用这两种方法的能力,从而实现复杂和自适应的集体行为。
{"title":"ScaRLib: Towards a hybrid toolchain for aggregate computing and many-agent reinforcement learning","authors":"D. Domini,&nbsp;F. Cavallari,&nbsp;G. Aguzzi,&nbsp;M. Viroli","doi":"10.1016/j.scico.2024.103176","DOIUrl":"10.1016/j.scico.2024.103176","url":null,"abstract":"<div><p>This article introduces ScaRLib, a Scala-based framework that aims to streamline the development cyber-physical swarms scenarios (i.e., systems of many interacting distributed devices that collectively accomplish system-wide tasks) by integrating macroprogramming and multi-agent reinforcement learning to design collective behavior. This framework serves as the starting point for a broader toolchain that will integrate these two approaches at multiple points to harness the capabilities of both, enabling the expression of complex and adaptive collective behavior.</p></div>","PeriodicalId":49561,"journal":{"name":"Science of Computer Programming","volume":"238 ","pages":"Article 103176"},"PeriodicalIF":1.5,"publicationDate":"2024-07-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141959980","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
期刊
Science of Computer Programming
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1