首页 > 最新文献

Formal Aspects of Computing最新文献

英文 中文
Towards Verifying Cooperatively-Scheduled Runtimes using CSP 使用CSP验证协同调度运行时间
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-07-12 DOI: 10.1145/3605942
J. Pedersen, K. Chalmers
In this paper we present the novel verification of synchronous channel communication and channel alternation (choice) by considering the environment within which our primitives are executing. Our work is in exploring development of a multi-threaded scheduler for a cooperatively scheduled process-oriented language, ProcessJ. We use CSP to produce formal specifications for the implementation of the various parts of the language runtime (scheduler, runtime components, and generated code). We use established CSP specifications that model channel communication and choice as well as the formal verification tool FDR to formally prove that the implementations are correct and behave as expected, when executed by our scheduler (the execution environment). Our approach is novel and not seen in similar research, because we consider the behaviour of the systems we examine under the restrictions imposed by an execution environment (e.g., a runtime system, a scheduler, an operating system, etc.) and show that even with such restrictions the channel communication and alternation work. More specifically, we show correctness when a system is executed by the ProcessJ cooperative scheduler. The main contributions of this work are in the models defined and method undertaken to verify cooperatively channel communication and choice.
在本文中,我们通过考虑原语执行的环境,提出了同步信道通信和信道交替(选择)的新验证。我们的工作是探索为协作调度的面向进程的语言ProcessJ开发多线程调度器。我们使用CSP为语言运行时的各个部分(调度程序、运行时组件和生成的代码)的实现生成正式规范。我们使用已建立的对信道通信和选择进行建模的CSP规范,以及正式的验证工具FDR,以正式证明实现是正确的,并且在由我们的调度器(执行环境)执行时表现如预期。我们的方法是新颖的,在类似的研究中没有看到,因为我们考虑了我们检查的系统在执行环境(例如,运行时系统、调度器、操作系统等)施加的限制下的行为,并表明即使有这样的限制,信道通信和交替也能工作。更具体地说,我们展示了由ProcessJ协作调度器执行系统时的正确性。这项工作的主要贡献在于定义了验证合作渠道沟通和选择的模型和方法。
{"title":"Towards Verifying Cooperatively-Scheduled Runtimes using CSP","authors":"J. Pedersen, K. Chalmers","doi":"10.1145/3605942","DOIUrl":"https://doi.org/10.1145/3605942","url":null,"abstract":"In this paper we present the novel verification of synchronous channel communication and channel alternation (choice) by considering the environment within which our primitives are executing. Our work is in exploring development of a multi-threaded scheduler for a cooperatively scheduled process-oriented language, ProcessJ. We use CSP to produce formal specifications for the implementation of the various parts of the language runtime (scheduler, runtime components, and generated code). We use established CSP specifications that model channel communication and choice as well as the formal verification tool FDR to formally prove that the implementations are correct and behave as expected, when executed by our scheduler (the execution environment). Our approach is novel and not seen in similar research, because we consider the behaviour of the systems we examine under the restrictions imposed by an execution environment (e.g., a runtime system, a scheduler, an operating system, etc.) and show that even with such restrictions the channel communication and alternation work. More specifically, we show correctness when a system is executed by the ProcessJ cooperative scheduler. The main contributions of this work are in the models defined and method undertaken to verify cooperatively channel communication and choice.","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-07-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49136051","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
Explanatory Denotational Semantics for Complex Event Patterns 复杂事件模式的解释性指称语义
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-07-10 DOI: 10.1145/3608486
B. Zielinski
Recent years brought popularity and importance of complex event processing (CEP) and associated query languages. CEP systems can be hard to understand. It is often non-trivial to determine streams of events matched by a query, and sometimes we may not notice important edge cases. Hence, the desirability of formal semantics permitting reasoning about resulting complex events and checking if actual matchings agree with our intentions follows. In the paper we introduce a pattern language ({sl PatLang} ) with some unique syntactic features related to variable binding. We provide two distinct denotational semantics for ({sl PatLang} ) : Minimal semantics, sufficient to describe when patterns match, and tree semantics, which provides detailed information about subpatterns with which the matched events actually match, i.e., information about interpretation of matched events induced by the pattern matching. The tree semantics is unnecessary for verifying correctness of pattern matching execution. However, we show that neither minimal semantics, nor semantics from the prior work suffices to effectively locate errors in patterns with respect to their intended meaning, and that the additional information provided by the tree semantics is crucial for that purpose. We prove that tree semantics can be mapped to minimal semantics. Finally, we provide some practical evaluation.
近年来,复杂事件处理(CEP)和相关查询语言变得越来越流行和重要。CEP系统可能很难理解。确定查询匹配的事件流通常是不平凡的,有时我们可能没有注意到重要的边缘情况。因此,允许对由此产生的复杂事件进行推理并检查实际匹配是否符合我们的意图的形式语义的可取性随之而来。在本文中,我们介绍了一种模式语言({sl PatLang}),它具有与变量绑定有关的一些独特的句法特征。我们为({sl PatLang})提供了两种不同的指称语义:最小语义,足以描述模式何时匹配;树语义,提供关于匹配事件实际匹配的子模式的详细信息,即关于由模式匹配引起的匹配事件的解释的信息。树语义对于验证模式匹配执行的正确性是不必要的。然而,我们表明,无论是最小语义,还是来自先前工作的语义,都不足以有效地定位模式中关于其预期含义的错误,并且树语义提供的额外信息对于这一目的至关重要。我们证明了树语义可以映射到最小语义。最后,我们给出了一些实用的评价。
{"title":"Explanatory Denotational Semantics for Complex Event Patterns","authors":"B. Zielinski","doi":"10.1145/3608486","DOIUrl":"https://doi.org/10.1145/3608486","url":null,"abstract":"Recent years brought popularity and importance of complex event processing (CEP) and associated query languages. CEP systems can be hard to understand. It is often non-trivial to determine streams of events matched by a query, and sometimes we may not notice important edge cases. Hence, the desirability of formal semantics permitting reasoning about resulting complex events and checking if actual matchings agree with our intentions follows. In the paper we introduce a pattern language ({sl PatLang} ) with some unique syntactic features related to variable binding. We provide two distinct denotational semantics for ({sl PatLang} ) : Minimal semantics, sufficient to describe when patterns match, and tree semantics, which provides detailed information about subpatterns with which the matched events actually match, i.e., information about interpretation of matched events induced by the pattern matching. The tree semantics is unnecessary for verifying correctness of pattern matching execution. However, we show that neither minimal semantics, nor semantics from the prior work suffices to effectively locate errors in patterns with respect to their intended meaning, and that the additional information provided by the tree semantics is crucial for that purpose. We prove that tree semantics can be mapped to minimal semantics. Finally, we provide some practical evaluation.","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-07-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"48491183","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
Explanatory Denotational Semantics for Complex Event Patterns 复杂事件模式的解释性指称语义
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-07-10 DOI: https://dl.acm.org/doi/10.1145/3608486
Bartosz Zieliński

Recent years brought popularity and importance of complex event processing (CEP) and associated query languages. CEP systems can be hard to understand. It is often non-trivial to determine streams of events matched by a query, and sometimes we may not notice important edge cases. Hence, the desirability of formal semantics permitting reasoning about resulting complex events and checking if actual matchings agree with our intentions follows. In the paper we introduce a pattern language ({sl PatLang} ) with some unique syntactic features related to variable binding. We provide two distinct denotational semantics for ({sl PatLang} ): Minimal semantics, sufficient to describe when patterns match, and tree semantics, which provides detailed information about subpatterns with which the matched events actually match, i.e., information about interpretation of matched events induced by the pattern matching. The tree semantics is unnecessary for verifying correctness of pattern matching execution. However, we show that neither minimal semantics, nor semantics from the prior work suffices to effectively locate errors in patterns with respect to their intended meaning, and that the additional information provided by the tree semantics is crucial for that purpose. We prove that tree semantics can be mapped to minimal semantics. Finally, we provide some practical evaluation.

近年来,复杂事件处理(CEP)及其相关查询语言得到了广泛的关注和重视。CEP系统可能很难理解。确定与查询匹配的事件流通常是非常重要的,有时我们可能不会注意到重要的边缘情况。因此,形式语义的可取性允许对产生的复杂事件进行推理,并检查实际匹配是否符合我们的意图。本文介绍了一种模式语言({sl PatLang} ),它具有一些与变量绑定相关的独特语法特征。我们为({sl PatLang} )提供了两种不同的指称语义:最小语义,足以描述模式何时匹配;树语义,提供关于匹配事件实际匹配的子模式的详细信息,即关于由模式匹配引起的匹配事件的解释的信息。树语义对于验证模式匹配执行的正确性是不必要的。然而,我们表明,无论是最小语义还是先前工作的语义都不足以有效地根据模式的预期含义定位模式中的错误,并且树语义提供的附加信息对于该目的至关重要。我们证明了树语义可以映射到最小语义。最后,给出了一些实用的评价。
{"title":"Explanatory Denotational Semantics for Complex Event Patterns","authors":"Bartosz Zieliński","doi":"https://dl.acm.org/doi/10.1145/3608486","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3608486","url":null,"abstract":"<p>Recent years brought popularity and importance of complex event processing (CEP) and associated query languages. CEP systems can be hard to understand. It is often non-trivial to determine streams of events matched by a query, and sometimes we may not notice important edge cases. Hence, the desirability of formal semantics permitting reasoning about resulting complex events and checking if actual matchings agree with our intentions follows. In the paper we introduce a pattern language ({sl PatLang} ) with some unique syntactic features related to variable binding. We provide two distinct denotational semantics for ({sl PatLang} ): <i>Minimal semantics</i>, sufficient to describe when patterns match, and <i>tree semantics</i>, which provides detailed information about subpatterns with which the matched events actually match, i.e., information about interpretation of matched events induced by the pattern matching. The tree semantics is unnecessary for verifying correctness of pattern matching execution. However, we show that neither minimal semantics, nor semantics from the prior work suffices to effectively locate errors in patterns with respect to their intended meaning, and that the additional information provided by the tree semantics is crucial for that purpose. We prove that tree semantics can be mapped to minimal semantics. Finally, we provide some practical evaluation.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-07-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517747","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
Multi-objective ω-Regular Reinforcement Learning 多目标ω-规则强化学习
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-26 DOI: 10.1145/3605950
E. M. Hahn, Mateo Perez, S. Schewe, F. Somenzi, Ashutosh Trivedi, D. Wojtczak
The expanding role of reinforcement learning (RL) in safety-critical system design has promoted ω-automata as a way to express learning requirements—often non-Markovian—with greater ease of expression and interpretation than scalar reward signals. However, real-world sequential decision making situations often involve multiple, potentially conflicting, objectives. Two dominant approaches to express relative preferences over multiple objectives are: (1) weighted preference, where the decision maker provides scalar weights for various objectives, and (2) lexicographic preference, where the decision maker provides an order over the objectives such that any amount of satisfaction of a higher-ordered objective is preferable to any amount of a lower-ordered one. In this article, we study and develop RL algorithms to compute optimal strategies in Markov decision processes against multiple ω-regular objectives under weighted and lexicographic preferences. We provide a translation from multiple ω-regular objectives to a scalar reward signal that is both faithful (maximising reward means maximising probability of achieving the objectives under the corresponding preference) and effective (RL quickly converges to optimal strategies). We have implemented the translations in a formal reinforcement learning tool, Mungojerrie, and we present an experimental evaluation of our technique on benchmark learning problems.
强化学习(RL)在安全关键系统设计中的作用不断扩大,促使ω-自动机成为一种表达学习需求的方式——通常是非马尔可夫的——比标量奖励信号更容易表达和解释。然而,现实世界中的顺序决策情况往往涉及多个潜在冲突的目标。表达对多个目标的相对偏好的两种主要方法是:(1)加权偏好,其中决策者为各种目标提供标量权重;(2)词典偏好,其中决策者提供对目标的排序,使得较高排序目标的任何数量的满足比较低排序目标的任意数量的满足更可取。在本文中,我们研究并开发了RL算法,以在加权和字典偏好下计算马尔可夫决策过程中针对多个ω-正则目标的最优策略。我们提供了从多个ω-正则目标到标量奖励信号的转换,该信号既忠实(最大化奖励意味着在相应偏好下实现目标的概率最大化)又有效(RL快速收敛到最优策略)。我们在一个正式的强化学习工具Mungojerrie中实现了翻译,并对我们在基准学习问题上的技术进行了实验评估。
{"title":"Multi-objective ω-Regular Reinforcement Learning","authors":"E. M. Hahn, Mateo Perez, S. Schewe, F. Somenzi, Ashutosh Trivedi, D. Wojtczak","doi":"10.1145/3605950","DOIUrl":"https://doi.org/10.1145/3605950","url":null,"abstract":"The expanding role of reinforcement learning (RL) in safety-critical system design has promoted ω-automata as a way to express learning requirements—often non-Markovian—with greater ease of expression and interpretation than scalar reward signals. However, real-world sequential decision making situations often involve multiple, potentially conflicting, objectives. Two dominant approaches to express relative preferences over multiple objectives are: (1) weighted preference, where the decision maker provides scalar weights for various objectives, and (2) lexicographic preference, where the decision maker provides an order over the objectives such that any amount of satisfaction of a higher-ordered objective is preferable to any amount of a lower-ordered one. In this article, we study and develop RL algorithms to compute optimal strategies in Markov decision processes against multiple ω-regular objectives under weighted and lexicographic preferences. We provide a translation from multiple ω-regular objectives to a scalar reward signal that is both faithful (maximising reward means maximising probability of achieving the objectives under the corresponding preference) and effective (RL quickly converges to optimal strategies). We have implemented the translations in a formal reinforcement learning tool, Mungojerrie, and we present an experimental evaluation of our technique on benchmark learning problems.","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"43722069","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
Identifying Overly Restrictive Matching Patterns in SMT-based Program Verifiers (Extended Version) 在基于smt的程序验证器中识别过度限制的匹配模式(扩展版)
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-24 DOI: https://dl.acm.org/doi/10.1145/3571748
Alexandra Bugariu, Arshavir Ter-Gabrielyan, Peter Müller

Universal quantifiers occur frequently in proof obligations produced by program verifiers, for instance, to axiomatize uninterpreted functions and to statically express properties of arrays. SMT-based verifiers typically reason about them via E-matching, an SMT algorithm that requires syntactic matching patterns to guide the quantifier instantiations. Devising good matching patterns is challenging. In particular, overly restrictive patterns may lead to spurious verification errors if the quantifiers needed for proof are not instantiated; they may also conceal unsoundness caused by inconsistent axiomatizations. In this article, we present the first technique that identifies and helps the users and the developers of program verifiers remedy the effects of overly restrictive matching patterns. We designed a novel algorithm to synthesize missing triggering terms required to complete unsatisfiability proofs via E-matching. Tool developers can use this information to refine their matching patterns and prevent similar verification errors, or to fix a detected unsoundness.

通用量词经常出现在由程序验证器产生的证明义务中,例如,对未解释的函数进行公理化和静态地表示数组的属性。基于SMT的验证器通常通过E-matching(一种需要语法匹配模式来指导量词实例化的SMT算法)对它们进行推理。设计好的匹配模式是具有挑战性的。特别是,如果没有实例化证明所需的量词,过度限制的模式可能导致虚假的验证错误;它们也可能隐藏由不一致的公理化引起的不健全。在本文中,我们将介绍识别并帮助程序验证器的用户和开发人员纠正过于严格的匹配模式的影响的第一种技术。我们设计了一种新的算法来合成通过e匹配完成不满足性证明所需的缺失触发项。工具开发人员可以使用这些信息来改进他们的匹配模式,防止类似的验证错误,或者修复检测到的不健全。
{"title":"Identifying Overly Restrictive Matching Patterns in SMT-based Program Verifiers (Extended Version)","authors":"Alexandra Bugariu, Arshavir Ter-Gabrielyan, Peter Müller","doi":"https://dl.acm.org/doi/10.1145/3571748","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3571748","url":null,"abstract":"<p>Universal quantifiers occur frequently in proof obligations produced by program verifiers, for instance, to axiomatize uninterpreted functions and to statically express properties of arrays. SMT-based verifiers typically reason about them via E-matching, an SMT algorithm that requires syntactic matching patterns to guide the quantifier instantiations. Devising good matching patterns is challenging. In particular, overly restrictive patterns may lead to spurious verification errors if the quantifiers needed for proof are not instantiated; they may also conceal unsoundness caused by inconsistent axiomatizations. In this article, we present the first technique that identifies and helps the users and the developers of program verifiers remedy the effects of overly restrictive matching patterns. We designed a novel algorithm to synthesize missing triggering terms required to complete unsatisfiability proofs via E-matching. Tool developers can use this information to refine their matching patterns and prevent similar verification errors, or to fix a detected unsoundness.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517741","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
Kaki: Efficient Concurrent Update Synthesis for SDN Kaki: SDN的高效并发更新综合
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-23 DOI: 10.1145/3605952
Nicklas S. Johansen, Lasse B. Kær, Andreas L. Madsen, K. Ø. Nielsen, J. Srba, Rasmus G. Tollund
Modern computer networks based on the software-defined networking (SDN) paradigm are becoming increasingly complex and often require frequent configuration changes in order to react to traffic fluctuations. It is essential that forwarding policies are preserved not only before and after the configuration update but also at any moment during the inherently distributed execution of such an update. We present Kaki, a Petri game based tool for automatic synthesis of switch batches which can be updated in parallel without violating a given (regular) forwarding policy like waypointing or service chaining. Kaki guarantees to find the minimum number of concurrent batches and supports both splittable and nonsplittable flow forwarding. In order to achieve optimal performance, we introduce two novel optimisation techniques based on static analysis: decomposition into independent subproblems and identification of switches that can be collectively updated in the same batch. These techniques considerably improve the performance of our tool Kaki, relying on TAPAAL’s verification engine for Petri games as its backend. Experiments on a large benchmark of real networks from the Internet Topology Zoo database demonstrate that Kaki outperforms the state-of-the-art tools Netstack and FLIP. Kaki computes concurrent update synthesis significantly faster than Netstack and compared to FLIP, it provides shorter (and provably optimal) concurrent update sequences at similar runtimes.
基于软件定义网络(SDN)范例的现代计算机网络正变得越来越复杂,并且经常需要频繁更改配置以应对流量波动。重要的是,不仅在配置更新之前和之后,而且在这种更新的固有分布式执行期间的任何时刻都要保留转发策略。我们提出了Kaki,一个基于Petri游戏的工具,用于自动合成开关批次,可以并行更新,而不会违反给定的(常规)转发策略,如路径指向或服务链。Kaki保证找到并发批的最小数量,并支持可分割和不可分割的流转发。为了获得最佳性能,我们引入了两种基于静态分析的新型优化技术:分解为独立的子问题和识别可以在同一批中集体更新的开关。这些技术极大地提高了我们的工具Kaki的性能,它依赖于TAPAAL的Petri游戏验证引擎作为后端。在来自Internet Topology Zoo数据库的大型真实网络基准测试中进行的实验表明,Kaki优于最先进的工具Netstack和FLIP。Kaki计算并发更新合成的速度比Netstack快得多,与FLIP相比,它在类似的运行时提供了更短的(并且可以证明是最优的)并发更新序列。
{"title":"Kaki: Efficient Concurrent Update Synthesis for SDN","authors":"Nicklas S. Johansen, Lasse B. Kær, Andreas L. Madsen, K. Ø. Nielsen, J. Srba, Rasmus G. Tollund","doi":"10.1145/3605952","DOIUrl":"https://doi.org/10.1145/3605952","url":null,"abstract":"Modern computer networks based on the software-defined networking (SDN) paradigm are becoming increasingly complex and often require frequent configuration changes in order to react to traffic fluctuations. It is essential that forwarding policies are preserved not only before and after the configuration update but also at any moment during the inherently distributed execution of such an update. We present Kaki, a Petri game based tool for automatic synthesis of switch batches which can be updated in parallel without violating a given (regular) forwarding policy like waypointing or service chaining. Kaki guarantees to find the minimum number of concurrent batches and supports both splittable and nonsplittable flow forwarding. In order to achieve optimal performance, we introduce two novel optimisation techniques based on static analysis: decomposition into independent subproblems and identification of switches that can be collectively updated in the same batch. These techniques considerably improve the performance of our tool Kaki, relying on TAPAAL’s verification engine for Petri games as its backend. Experiments on a large benchmark of real networks from the Internet Topology Zoo database demonstrate that Kaki outperforms the state-of-the-art tools Netstack and FLIP. Kaki computes concurrent update synthesis significantly faster than Netstack and compared to FLIP, it provides shorter (and provably optimal) concurrent update sequences at similar runtimes.","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"43411543","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
From Non-punctuality to Non-adjacency: A Quest for Decidability of Timed Temporal Logics with Quantifiers 从非准时性到非邻接性:带量词的时间逻辑的可决性探索
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-23 DOI: https://dl.acm.org/doi/10.1145/3571749
Shankara Narayanan Krishna, Khushraj Madnani, Manuel Mazo Jr., Paritosh Pandya

Metric Temporal Logic (MTL) and Timed Propositional Temporal Logic (TPTL) are prominent real-time extensions of Linear Temporal Logic (LTL). In general, the satisfiability checking problem for these extensions is undecidable when both the future (Until, U) and the past (Since, S) modalities are used (denoted by MTL[U,S] and TPTL[U,S]). In a classical result, the satisfiability checking for Metric Interval Temporal Logic (MITL[U,S]), a non-punctual fragment of MTL[U,S], is shown to be decidable with EXPSPACE complete complexity. A straightforward adoption of non-punctuality does not recover decidability in the case of TPTL[U,S]. Hence, we propose a more refined notion called non-adjacency for TPTL[U,S] and focus on its 1-variable fragment, 1-TPTL[U,S]. We show that non-adjacent 1-TPTL[U,S] is strictly more expressive than MITL. As one of our main results, we show that the satisfiability checking problem for non-adjacent 1-TPTL[U,S] is decidable with EXPSPACE complete complexity. Our decidability proof relies on a novel technique of anchored interval word abstraction and its reduction to a non-adjacent version of the newly proposed logic called PnEMTL. We further propose an extension of MSO [<] (Monadic Second Order Logic of Orders) with Guarded Metric Quantifiers (GQMSO) and show that it characterizes the expressiveness of PnEMTL. That apart, we introduce the notion of non-adjacency in the context of GQMSO (NA-GQMSO), which is a syntactic generalization of logic Q2MLO due to Hirshfeld and Rabinovich and show the decidability of satisfiability checking for NA-GQMSO.

度量时间逻辑(MTL)和时间命题时间逻辑(TPTL)是线性时间逻辑(LTL)的突出的实时扩展。一般来说,当使用未来(Until, U)和过去(Since, S)模态(用MTL[U,S]和TPTL[U,S]表示)时,这些扩展的可满足性检查问题是不可确定的。在一个经典的结果中,证明了度量区间时间逻辑(Metric Interval Temporal Logic, MITL[U,S])的可满足性检验在EXPSPACE完全复杂度下是可判定的。在TPTL的情况下,直接采用非准时性并不能恢复可决性[U,S]。因此,我们为TPTL[U,S]提出了一个更精细的概念,称为非邻接性,并专注于它的1变量片段,1-TPTL[U,S]。我们证明了非相邻的1-TPTL[U,S]严格地比MITL更具表达性。作为我们的主要结果之一,我们证明了非相邻1-TPTL[U,S]的可满足性检验问题具有EXPSPACE完全复杂度。我们的可判定性证明依赖于一种锚定区间词抽象的新技术,并将其还原为新提出的逻辑的非相邻版本,称为PnEMTL。我们进一步提出了带保护度量量词(GQMSO)的MSO [<]扩展,并证明了它表征了PnEMTL的可表达性。此外,我们在Hirshfeld和Rabinovich的逻辑q2mso的句法推广中引入了非邻接性的概念(NA-GQMSO),并证明了NA-GQMSO的可满足性检验的可判定性。
{"title":"From Non-punctuality to Non-adjacency: A Quest for Decidability of Timed Temporal Logics with Quantifiers","authors":"Shankara Narayanan Krishna, Khushraj Madnani, Manuel Mazo Jr., Paritosh Pandya","doi":"https://dl.acm.org/doi/10.1145/3571749","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3571749","url":null,"abstract":"<p>Metric Temporal Logic (MTL) and Timed Propositional Temporal Logic (TPTL) are prominent real-time extensions of Linear Temporal Logic (LTL). In general, the satisfiability checking problem for these extensions is undecidable when both the future (Until, U) and the past (Since, S) modalities are used (denoted by MTL[U,S] and TPTL[U,S]). In a classical result, the satisfiability checking for Metric Interval Temporal Logic (MITL[U,S]), a non-punctual fragment of MTL[U,S], is shown to be decidable with EXPSPACE complete complexity. A straightforward adoption of non-punctuality does not recover decidability in the case of TPTL[U,S]. Hence, we propose a more refined notion called <i>non-adjacency</i> for TPTL[U,S] and focus on its 1-variable fragment, 1-TPTL[U,S]. We show that non-adjacent 1-TPTL[U,S] is strictly more expressive than MITL. As one of our main results, we show that the satisfiability checking problem for non-adjacent 1-TPTL[U,S] is decidable with EXPSPACE complete complexity. Our decidability proof relies on a novel technique of anchored interval word abstraction and its reduction to a non-adjacent version of the newly proposed logic called PnEMTL. We further propose an extension of MSO [&lt;] (Monadic Second Order Logic of Orders) with Guarded Metric Quantifiers (GQMSO) and show that it characterizes the expressiveness of PnEMTL. That apart, we introduce the notion of non-adjacency in the context of GQMSO (NA-GQMSO), which is a syntactic generalization of logic Q2MLO due to Hirshfeld and Rabinovich and show the decidability of satisfiability checking for NA-GQMSO.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517792","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
Compositional Reasoning for Non-multicopy Atomic Architectures 非多拷贝原子体系结构的组合推理
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-23 DOI: https://dl.acm.org/doi/10.1145/3574137
Nicholas Coughlin, Kirsten Winter, Graeme Smith

Rely/guarantee reasoning provides a compositional approach to reasoning about concurrent programs. However, such reasoning traditionally assumes a sequentially consistent memory model and hence is unsound on modern hardware in the presence of data races. In this article, we present a rely/guarantee-based approach for non-multicopy atomic weak memory models, i.e., where a thread’s stores are not simultaneously propagated to all other threads and hence are not observable by other threads at the same time. Such memory models include those of the earlier versions of the ARM processor as well as the POWER processor.

This article builds on our approach to compositional reasoning for multicopy atomic architectures, i.e., where a thread’s stores are simultaneously propagated to all other threads. In that context, an operational semantics can be based on thread-local instruction reordering. We exploit this to provide an efficient compositional proof technique in which weak memory behaviour can be shown to preserve rely/guarantee reasoning on a sequentially consistent memory model. To achieve this, we introduce a side-condition, reordering interference freedom on each thread, reducing the complexity of weak memory to checks over pairs of reorderable instructions.

In this article, we extend our approach to non-multicopy atomic weak memory models. We utilise the idea of reordering interference freedom between parallel components. This by itself would break compositionality but serves as a vehicle to derive a refined compatibility check between rely and guarantee conditions, which takes into account the effects of propagations of stores that are only partial, i.e., not covering all threads. All aspects of our approach have been encoded and proved sound in Isabelle/HOL.

依赖/保证推理提供了一种组合方法来推理并发程序。然而,这种推理传统上假设了顺序一致的内存模型,因此在存在数据竞争的现代硬件上是不可靠的。在本文中,我们为非多拷贝原子弱内存模型提供了一种基于依赖/保证的方法,即线程的存储不会同时传播到所有其他线程,因此其他线程无法同时观察到。这些内存模型包括早期版本的ARM处理器和POWER处理器。本文建立在我们对多副本原子体系结构进行组合推理的方法之上,即一个线程的存储同时传播给所有其他线程。在这种情况下,操作语义可以基于线程本地指令重排序。我们利用这一点来提供一种有效的组合证明技术,在这种技术中,弱记忆行为可以显示在顺序一致的记忆模型上保持依赖/保证推理。为了实现这一目标,我们引入了一个侧条件,在每个线程上重新排序干扰自由,减少了对可重新排序指令对进行检查的弱内存的复杂性。在本文中,我们将这种方法扩展到非多拷贝原子弱内存模型。我们利用了平行分量间干涉自由度重排序的思想。这本身会破坏组合性,但可以作为在依赖条件和保证条件之间派生精细兼容性检查的工具,它考虑了仅部分存储(即不覆盖所有线程)传播的影响。我们的方法的所有方面都在Isabelle/HOL中进行了编码和验证。
{"title":"Compositional Reasoning for Non-multicopy Atomic Architectures","authors":"Nicholas Coughlin, Kirsten Winter, Graeme Smith","doi":"https://dl.acm.org/doi/10.1145/3574137","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3574137","url":null,"abstract":"<p>Rely/guarantee reasoning provides a compositional approach to reasoning about concurrent programs. However, such reasoning traditionally assumes a sequentially consistent memory model and hence is unsound on modern hardware in the presence of data races. In this article, we present a rely/guarantee-based approach for <i>non-multicopy atomic</i> weak memory models, i.e., where a thread’s stores are not simultaneously propagated to all other threads and hence are not observable by other threads at the same time. Such memory models include those of the earlier versions of the ARM processor as well as the POWER processor.</p><p>This article builds on our approach to compositional reasoning for <i>multicopy atomic</i> architectures, i.e., where a thread’s stores are simultaneously propagated to all other threads. In that context, an operational semantics can be based on thread-local instruction reordering. We exploit this to provide an efficient compositional proof technique in which weak memory behaviour can be shown to preserve rely/guarantee reasoning on a sequentially consistent memory model. To achieve this, we introduce a side-condition, <i>reordering interference freedom</i> on each thread, reducing the complexity of weak memory to checks over pairs of reorderable instructions.</p><p>In this article, we extend our approach to non-multicopy atomic weak memory models. We utilise the idea of reordering interference freedom between parallel components. This by itself would break compositionality but serves as a vehicle to derive a refined compatibility check between rely and guarantee conditions, which takes into account the effects of propagations of stores that are only partial, i.e., not covering all threads. All aspects of our approach have been encoded and proved sound in Isabelle/HOL.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517740","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
Kaki: Efficient Concurrent Update Synthesis for SDN Kaki: SDN的高效并发更新综合
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-23 DOI: https://dl.acm.org/doi/10.1145/3605952
Nicklas S. Johansen, Lasse B. Kær, Andreas L. Madsen, Kristian Ø. Nielsen, Jiří Srba, Rasmus G. Tollund

Modern computer networks based on the software-defined networking (SDN) paradigm are becoming increasingly complex and often require frequent configuration changes in order to react to traffic fluctuations. It is essential that forwarding policies are preserved not only before and after the configuration update but also at any moment during the inherently distributed execution of such an update. We present Kaki, a Petri game based tool for automatic synthesis of switch batches which can be updated in parallel without violating a given (regular) forwarding policy like waypointing or service chaining. Kaki guarantees to find the minimum number of concurrent batches and supports both splittable and nonsplittable flow forwarding. In order to achieve optimal performance, we introduce two novel optimisation techniques based on static analysis: decomposition into independent subproblems and identification of switches that can be collectively updated in the same batch. These techniques considerably improve the performance of our tool Kaki, relying on TAPAAL’s verification engine for Petri games as its backend. Experiments on a large benchmark of real networks from the Internet Topology Zoo database demonstrate that Kaki outperforms the state-of-the-art tools Netstack and FLIP. Kaki computes concurrent update synthesis significantly faster than Netstack and compared to FLIP, it provides shorter (and provably optimal) concurrent update sequences at similar runtimes.

基于软件定义网络(SDN)范例的现代计算机网络正变得越来越复杂,并且经常需要频繁更改配置以应对流量波动。重要的是,不仅在配置更新之前和之后,而且在这种更新的固有分布式执行期间的任何时刻都要保留转发策略。我们提出了Kaki,一个基于Petri游戏的工具,用于自动合成开关批次,可以并行更新,而不会违反给定的(常规)转发策略,如路径指向或服务链。Kaki保证找到并发批的最小数量,并支持可分割和不可分割的流转发。为了获得最佳性能,我们引入了两种基于静态分析的新型优化技术:分解为独立的子问题和识别可以在同一批中集体更新的开关。这些技术极大地提高了我们的工具Kaki的性能,它依赖于TAPAAL的Petri游戏验证引擎作为后端。在来自Internet Topology Zoo数据库的大型真实网络基准测试中进行的实验表明,Kaki优于最先进的工具Netstack和FLIP。Kaki计算并发更新合成的速度比Netstack快得多,与FLIP相比,它在类似的运行时提供了更短的(并且可以证明是最优的)并发更新序列。
{"title":"Kaki: Efficient Concurrent Update Synthesis for SDN","authors":"Nicklas S. Johansen, Lasse B. Kær, Andreas L. Madsen, Kristian Ø. Nielsen, Jiří Srba, Rasmus G. Tollund","doi":"https://dl.acm.org/doi/10.1145/3605952","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3605952","url":null,"abstract":"<p>Modern computer networks based on the software-defined networking (SDN) paradigm are becoming increasingly complex and often require frequent configuration changes in order to react to traffic fluctuations. It is essential that forwarding policies are preserved not only before and after the configuration update but also at any moment during the inherently distributed execution of such an update. We present Kaki, a Petri game based tool for automatic synthesis of switch batches which can be updated in parallel without violating a given (regular) forwarding policy like waypointing or service chaining. Kaki guarantees to find the minimum number of concurrent batches and supports both splittable and nonsplittable flow forwarding. In order to achieve optimal performance, we introduce two novel optimisation techniques based on static analysis: decomposition into independent subproblems and identification of switches that can be collectively updated in the same batch. These techniques considerably improve the performance of our tool Kaki, relying on TAPAAL’s verification engine for Petri games as its backend. Experiments on a large benchmark of real networks from the Internet Topology Zoo database demonstrate that Kaki outperforms the state-of-the-art tools Netstack and FLIP. Kaki computes concurrent update synthesis significantly faster than Netstack and compared to FLIP, it provides shorter (and provably optimal) concurrent update sequences at similar runtimes.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517765","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
Mechanised Operational Reasoning for C11 Programs with Relaxed Dependencies 具有放松依赖关系的C11程序的机械化操作推理
IF 1 4区 计算机科学 Q2 Mathematics Pub Date : 2023-06-23 DOI: https://dl.acm.org/doi/10.1145/3580285
Daniel Wright, Sadegh Dalvandi, Mark Batty, Brijesh Dongol

Verification techniques for C11 programs have advanced significantly in recent years with the development of operational semantics and associated logics for increasingly large fragments of C11. However, these semantics and logics have been developed in a restricted setting to avoid the thin-air-read problem. In this article, we propose an operational semantics that leverages an intra-thread partial order (called semantic dependencies) induced by a recently developed denotational event-structure-based semantics. We prove that our operational semantics is sound and complete with respect to the denotational semantics. We present an associated logic that generalises a recent Owicki–Gries framework for RC11 RAR (repaired C11) with relaxed and release-acquire accesses. We describe the mechanisation of the logic in the Isabelle/HOL theorem prover, which we use to prove correctness of a number of examples.

近年来,随着操作语义和相关逻辑的发展,C11程序的验证技术有了显著的进步。然而,这些语义和逻辑是在受限的环境中开发的,以避免稀薄空气读取问题。在本文中,我们提出了一种操作语义,它利用了最近开发的基于指称事件结构的语义引起的线程内部分顺序(称为语义依赖)。我们证明了我们的操作语义相对于指称语义是健全和完备的。我们提出了一个相关的逻辑,该逻辑推广了RC11 RAR(修复C11)的最新Owicki-Gries框架,该框架具有放松和释放获取访问。我们在Isabelle/HOL定理证明器中描述了逻辑的机械化,我们用它来证明一些例子的正确性。
{"title":"Mechanised Operational Reasoning for C11 Programs with Relaxed Dependencies","authors":"Daniel Wright, Sadegh Dalvandi, Mark Batty, Brijesh Dongol","doi":"https://dl.acm.org/doi/10.1145/3580285","DOIUrl":"https://doi.org/https://dl.acm.org/doi/10.1145/3580285","url":null,"abstract":"<p>Verification techniques for C11 programs have advanced significantly in recent years with the development of operational semantics and associated logics for increasingly large fragments of C11. However, these semantics and logics have been developed in a restricted setting to avoid the <i>thin-air-read</i> problem. In this article, we propose an operational semantics that leverages an intra-thread partial order (called <i>semantic dependencies</i>) induced by a recently developed denotational event-structure-based semantics. We prove that our operational semantics is sound and complete with respect to the denotational semantics. We present an associated logic that generalises a recent Owicki–Gries framework for RC11 RAR (repaired C11) with relaxed and release-acquire accesses. We describe the mechanisation of the logic in the Isabelle/HOL theorem prover, which we use to prove correctness of a number of examples.</p>","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":null,"pages":null},"PeriodicalIF":1.0,"publicationDate":"2023-06-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138517766","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 Aspects of Computing
全部 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