首页 > 最新文献

Formal Methods in System Design最新文献

英文 中文
Porous invariants for linear systems 线性系统的多孔不变式
IF 0.8 4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2024-02-28 DOI: 10.1007/s10703-024-00444-3
Engel Lefaucheux, Joël Ouaknine, David Purser, James Worrell

We introduce the notion of porous invariants for multipath affine loops over the integers. These are invariants definable in (fragments of) Presburger arithmetic and, as such, lack certain tame geometrical properties, such a convexity and connectedness. Nevertheless, we show that in many cases such invariants can be automatically synthesised, and moreover can be used to settle reachability questions for various non-trivial classes of affine loops and target sets. For the class of (mathbb {Z})-linear invariants (those defined as conjunctions of linear equations with integer coefficients), we show that a strongest such invariant can be computed in polynomial time. For the more general class of (mathbb {N})-semi-linear invariants (those defined as Boolean combinations of linear inequalities with integer coefficients), such a strongest invariant need not exist. Here we show that for point targets the existence of a separating invariant is undecidable in general. However we show that such separating invariants can be computed either by restricting the number of program variables or by restricting from multipath to single-path loops. Additionally, we consider porous targets, represented as (mathbb {Z})-semi-linear sets (those defined as Boolean combinations of equations with integer coefficients). We show that an invariant can be computed providing the target spans the whole space. We present our tool porous, which computes porous invariants.

我们为整数上的多径仿射环引入了多孔不变式的概念。这些不变式可在普雷斯伯格算术(片段)中定义,因此缺乏某些温和的几何属性,如凸性和连通性。然而,我们证明了在许多情况下,这些不变式可以自动合成,而且可以用来解决各种非难类仿射循环和目标集的可达性问题。对于(mathbb {Z})-线性不变式(那些定义为具有整数系数的线性方程组的不变式)类,我们证明可以在多项式时间内计算出最强的这种不变式。对于更一般的((mathbb {N} )-半线性不变式(定义为具有整数系数的线性不等式的布尔组合)类别,这样的最强不变式不一定存在。我们在这里证明,对于点目标,分离不变式的存在一般是不可判定的。不过,我们证明,通过限制程序变量的数量,或将多路循环限制为单路循环,可以计算出这种分离不变式。此外,我们还考虑了多孔目标,这些目标表示为 (mathbb {Z})-semi-linear sets(那些定义为具有整数系数的布尔组合方程的目标)。我们证明,只要目标跨越整个空间,就能计算出不变式。我们介绍了计算多孔不变量的工具 porous。
{"title":"Porous invariants for linear systems","authors":"Engel Lefaucheux, Joël Ouaknine, David Purser, James Worrell","doi":"10.1007/s10703-024-00444-3","DOIUrl":"https://doi.org/10.1007/s10703-024-00444-3","url":null,"abstract":"<p>We introduce the notion of <i>porous invariants</i> for multipath affine loops over the integers. These are invariants definable in (fragments of) Presburger arithmetic and, as such, lack certain tame geometrical properties, such a convexity and connectedness. Nevertheless, we show that in many cases such invariants can be automatically synthesised, and moreover can be used to settle reachability questions for various non-trivial classes of affine loops and target sets. For the class of <span>(mathbb {Z})</span>-linear invariants (those defined as conjunctions of linear equations with integer coefficients), we show that a strongest such invariant can be computed in polynomial time. For the more general class of <span>(mathbb {N})</span>-semi-linear invariants (those defined as Boolean combinations of linear inequalities with integer coefficients), such a strongest invariant need not exist. Here we show that for point targets the existence of a separating invariant is undecidable in general. However we show that such separating invariants can be computed either by restricting the number of program variables or by restricting from multipath to single-path loops. Additionally, we consider porous targets, represented as <span>(mathbb {Z})</span>-semi-linear sets (those defined as Boolean combinations of equations with integer coefficients). We show that an invariant can be computed providing the target spans the whole space. We present our tool <span>porous</span>, which computes porous invariants.</p>","PeriodicalId":12430,"journal":{"name":"Formal Methods in System Design","volume":"102 1","pages":""},"PeriodicalIF":0.8,"publicationDate":"2024-02-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140009976","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
Parameter synthesis for Markov models: covering the parameter space 马尔可夫模型的参数合成:覆盖参数空间
IF 0.8 4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2024-02-17 DOI: 10.1007/s10703-023-00442-x
Sebastian Junges, Erika Ábrahám, Christian Hensel, Nils Jansen, Joost-Pieter Katoen, Tim Quatmann, Matthias Volk

Markov chain analysis is a key technique in formal verification. A practical obstacle is that all probabilities in Markov models need to be known. However, system quantities such as failure rates or packet loss ratios, etc. are often not—or only partially—known. This motivates considering parametric models with transitions labeled with functions over parameters. Whereas traditional Markov chain analysis relies on a single, fixed set of probabilities, analysing parametric Markov models focuses on synthesising parameter values that establish a given safety or performance specification (varphi ). Examples are: what component failure rates ensure the probability of a system breakdown to be below 0.00000001?, or which failure rates maximise the performance, for instance the throughput, of the system? This paper presents various analysis algorithms for parametric discrete-time Markov chains and Markov decision processes. We focus on three problems: (a) do all parameter values within a given region satisfy (varphi )?, (b) which regions satisfy (varphi ) and which ones do not?, and (c) an approximate version of (b) focusing on covering a large fraction of all possible parameter values. We give a detailed account of the various algorithms, present a software tool realising these techniques, and report on an extensive experimental evaluation on benchmarks that span a wide range of applications.

马尔可夫链分析是形式验证的一项关键技术。一个实际障碍是马尔可夫模型中的所有概率都需要已知。然而,故障率或丢包率等系统量往往不是已知的,或者只是部分已知。这就促使我们考虑使用参数函数标记过渡的参数模型。传统的马尔可夫链分析依赖于单一、固定的概率集,而分析参数马尔可夫模型则侧重于综合参数值,以建立给定的安全或性能规范。例如:什么样的组件故障率能确保系统故障概率低于 0.00000001,或者什么样的故障率能使系统性能(例如吞吐量)最大化?本文介绍了参数离散时间马尔可夫链和马尔可夫决策过程的各种分析算法。我们关注三个问题:(a) 给定区域内的所有参数值是否都满足 (varphi)?(b) 哪些区域满足 (varphi),哪些不满足?(c) (b)的近似版本,重点是覆盖所有可能参数值的一大部分。我们详细介绍了各种算法,提出了实现这些技术的软件工具,并报告了在广泛应用的基准上进行的广泛实验评估。
{"title":"Parameter synthesis for Markov models: covering the parameter space","authors":"Sebastian Junges, Erika Ábrahám, Christian Hensel, Nils Jansen, Joost-Pieter Katoen, Tim Quatmann, Matthias Volk","doi":"10.1007/s10703-023-00442-x","DOIUrl":"https://doi.org/10.1007/s10703-023-00442-x","url":null,"abstract":"<p>Markov chain analysis is a key technique in formal verification. A practical obstacle is that all probabilities in Markov models need to be known. However, system quantities such as failure rates or packet loss ratios, etc. are often not—or only partially—known. This motivates considering parametric models with transitions labeled with functions over parameters. Whereas traditional Markov chain analysis relies on a single, fixed set of probabilities, analysing parametric Markov models focuses on synthesising parameter values that establish a given safety or performance specification <span>(varphi )</span>. Examples are: what component failure rates ensure the probability of a system breakdown to be below 0.00000001?, or which failure rates maximise the performance, for instance the throughput, of the system? This paper presents various analysis algorithms for parametric discrete-time Markov chains and Markov decision processes. We focus on three problems: (a) do all parameter values within a given region satisfy <span>(varphi )</span>?, (b) which regions satisfy <span>(varphi )</span> and which ones do not?, and (c) an approximate version of (b) focusing on covering a large fraction of all possible parameter values. We give a detailed account of the various algorithms, present a software tool realising these techniques, and report on an extensive experimental evaluation on benchmarks that span a wide range of applications.</p>","PeriodicalId":12430,"journal":{"name":"Formal Methods in System Design","volume":"1 1","pages":""},"PeriodicalIF":0.8,"publicationDate":"2024-02-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139902312","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
Bounded-memory runtime enforcement with probabilistic and performance analysis 基于概率和性能分析的有限内存运行时执行
IF 0.8 4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2024-02-14 DOI: 10.1007/s10703-024-00446-1
Saumya Shankar, Ankit Pradhan, Srinivas Pinisetty, Antoine Rollet, Yliès Falcone

Runtime Enforcement (RE) is a technique aimed at monitoring the executions of a system at runtime and ensure its compliance against a set of formal requirements (properties). RE employs an enforcer (a safety wrapper for the system) which modifies the (untrustworthy) output by performing actions such as delaying (by storing/buffering) and suppressing events, when needed. In this paper, to handle practical applications with memory constraints, we propose a new RE paradigm where the memory of the enforcer is bounded/finite. Besides the property to be enforced, the user specifies a bound on the enforcer memory. Bounding the memory poses various challenges such as how to handle the situation when the memory is full, how to optimally discard events from the buffer to accommodate new events and let the enforcer continue operating. We define the bounded-memory RE problem and develop a framework for any regular property. All of our results are formalized and proved. We also analyze probabilistically how much memory is required on an average case for a given regular property, such that the output of the bounded enforcer is equal to that of the unbounded enforcer up to a fixed probability. The proposed framework is implemented and a case study is worked out to show the practicability and usefulness of the bounded enforcer in the real-world and to show the usage of the aforementioned probabilistic analysis on them. The performance is evaluated via some examples from application scenarios and it indicates linear changes in the execution time of the enforcers in response to increases in trace length, property complexity, and buffer sizes.

运行时执行(RE)是一种技术,旨在监控系统在运行时的执行情况,并确保其符合一系列正式要求(属性)。RE 采用执行器(系统的安全封装器),在需要时通过执行延迟(通过存储/缓冲)和抑制事件等操作来修改(不可信的)输出。在本文中,为了处理有内存限制的实际应用,我们提出了一种新的 RE 范式,即执行者的内存是有界/无限的。除了要强制执行的属性外,用户还可以指定强制执行内存的边界。内存受限会带来各种挑战,例如如何处理内存已满的情况,如何以最佳方式从缓冲区中丢弃事件以容纳新事件并让执行器继续运行。我们定义了有界内存 RE 问题,并开发了一个适用于任何规则属性的框架。我们的所有结果都得到了形式化和证明。我们还从概率上分析了给定正则属性的平均情况下需要多少内存,从而使有界执行者的输出等于无界执行者的输出,达到一个固定的概率。为了展示有界执行器在现实世界中的实用性和有用性,并展示上述概率分析在其中的应用,我们实施了所提出的框架并进行了案例研究。通过应用场景中的一些示例对性能进行了评估,结果表明,随着跟踪长度、属性复杂度和缓冲区大小的增加,执行器的执行时间也会发生线性变化。
{"title":"Bounded-memory runtime enforcement with probabilistic and performance analysis","authors":"Saumya Shankar, Ankit Pradhan, Srinivas Pinisetty, Antoine Rollet, Yliès Falcone","doi":"10.1007/s10703-024-00446-1","DOIUrl":"https://doi.org/10.1007/s10703-024-00446-1","url":null,"abstract":"<p>Runtime Enforcement (RE) is a technique aimed at monitoring the executions of a system at runtime and ensure its compliance against a set of formal requirements (properties). RE employs an enforcer (a safety wrapper for the system) which modifies the (untrustworthy) output by performing actions such as delaying (by storing/buffering) and suppressing events, when needed. In this paper, to handle practical applications with memory constraints, we propose a new RE paradigm where the memory of the enforcer is bounded/finite. Besides the property to be enforced, the user specifies a bound on the enforcer memory. Bounding the memory poses various challenges such as how to handle the situation when the memory is full, how to optimally discard events from the buffer to accommodate new events and let the enforcer continue operating. We define the bounded-memory RE problem and develop a framework for any regular property. All of our results are formalized and proved. We also analyze probabilistically how much memory is required on an average case for a given regular property, such that the output of the bounded enforcer is equal to that of the unbounded enforcer up to a fixed probability. The proposed framework is implemented and a case study is worked out to show the practicability and usefulness of the bounded enforcer in the real-world and to show the usage of the aforementioned probabilistic analysis on them. The performance is evaluated via some examples from application scenarios and it indicates linear changes in the execution time of the enforcers in response to increases in trace length, property complexity, and buffer sizes.</p>","PeriodicalId":12430,"journal":{"name":"Formal Methods in System Design","volume":"18 1","pages":""},"PeriodicalIF":0.8,"publicationDate":"2024-02-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139759969","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
Synbit: synthesizing bidirectional programs using unidirectional sketches Synbit:使用单向草图合成双向程序
IF 0.8 4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2024-01-29 DOI: 10.1007/s10703-023-00436-9
Masaomi Yamaguchi, Kazutaka Matsuda, Cristina David, Meng Wang

We propose a technique for synthesizing bidirectional programs from the corresponding unidirectional code plus input/output examples. The core ideas are: (1) constructing a sketch using the given unidirectional program as a specification, and (2) filling the sketch in a modular fashion by exploiting the properties of bidirectional programs. These ideas are enabled by our choice of programming language, HOBiT, which is specifically designed to maintain the unidirectional program structure in bidirectional programming, and keep the parts that control bidirectional behavior modular. To evaluate our approach, we implemented it in a tool called Synbit and used it to generate bidirectional programs for intricate microbenchmarks, as well as for a few larger, more realistic problems. We also compared Synbit to a state-of-the-art unidirectional synthesis tool on the task of synthesizing backward computations. This is an extended version of the paper “Synbit: Synthesizing Bidirectional Programs using Unidirectional Sketches”, published at OOPSLA 2021. In addition to the OOPSLA’21 paper, this journal will contain additional formalization and detailed examples.

我们提出了一种从相应的单向代码加上输入/输出示例合成双向程序的技术。其核心思想是(1) 使用给定的单向程序作为规范构建草图,(2) 利用双向程序的特性以模块化方式填充草图。我们选择的编程语言 HOBiT 使这些想法得以实现,该语言专门设计用于在双向编程中保持单向程序结构,并将控制双向行为的部分模块化。为了评估我们的方法,我们在一个名为 Synbit 的工具中实施了这种方法,并用它为复杂的微基准测试以及一些更大、更现实的问题生成了双向程序。我们还将 Synbit 与最先进的单向合成工具在反向计算合成任务上进行了比较。本文是论文 "Synbit:Synthesizing Bidirectional Programs using Unidirectional Sketches"(使用单向草图合成双向程序)一文的扩展版,已在 2021 年 OOPSLA 上发表。除 OOPSLA'21 论文外,本期刊还将包含更多形式化内容和详细示例。
{"title":"Synbit: synthesizing bidirectional programs using unidirectional sketches","authors":"Masaomi Yamaguchi, Kazutaka Matsuda, Cristina David, Meng Wang","doi":"10.1007/s10703-023-00436-9","DOIUrl":"https://doi.org/10.1007/s10703-023-00436-9","url":null,"abstract":"<p>We propose a technique for synthesizing bidirectional programs from the corresponding unidirectional code plus input/output examples. The core ideas are: (1) <i>constructing a sketch</i> using the given unidirectional program as a specification, and (2) <i>filling the sketch</i> in a modular fashion by exploiting the properties of bidirectional programs. These ideas are enabled by our choice of programming language, HOBiT, which is specifically designed to maintain the unidirectional program structure in bidirectional programming, and keep the parts that control bidirectional behavior modular. To evaluate our approach, we implemented it in a tool called <span>Synbit</span> and used it to generate bidirectional programs for intricate microbenchmarks, as well as for a few larger, more realistic problems. We also compared <span>Synbit</span> to a state-of-the-art unidirectional synthesis tool on the task of synthesizing backward computations. This is an extended version of the paper “Synbit: Synthesizing Bidirectional Programs using Unidirectional Sketches”, published at OOPSLA 2021. In addition to the OOPSLA’21 paper, this journal will contain additional formalization and detailed examples.\u0000</p>","PeriodicalId":12430,"journal":{"name":"Formal Methods in System Design","volume":"324 1","pages":""},"PeriodicalIF":0.8,"publicationDate":"2024-01-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"139588472","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
Termination of triangular polynomial loops 三角多项式循环的终止
IF 0.8 4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-12-04 DOI: 10.1007/s10703-023-00440-z
Marcel Hark, Florian Frohn, Jürgen Giesl

We consider the problem of proving termination for triangular weakly non-linear loops (twn-loops) over some ring (mathcal {S}) like (mathbb {Z}), (mathbb {Q}), or (mathbb {R}). The guard of such a loop is an arbitrary quantifier-free Boolean formula over (possibly non-linear) polynomial inequations, and the body is a single assignment of the form (begin{bmatrix} x_1 ldots x_d end{bmatrix} leftarrow begin{bmatrix} c_1 cdot x_1 + p_1 ldots c_d cdot x_d + p_d end{bmatrix}) where each (x_i) is a variable, (c_i in mathcal {S}), and each (p_i) is a (possibly non-linear) polynomial over (mathcal {S}) and the variables (x_{i+1},ldots ,x_{d}).

We show that the question of termination can be reduced to the existential fragment of the first-order theory of (mathcal {S}). For loops over (mathbb {R}), our reduction implies decidability of termination. For loops over (mathbb {Z}) and (mathbb {Q}), it proves semi-decidability of non-termination.

Furthermore, we present a transformation to convert certain non-twn-loops into twn-form. Then the original loop terminates iff the transformed loop terminates over a specific subset of (mathbb {R}), which can also be checked via our reduction. Moreover, we formalize a technique to linearize (the updates of) twn-loops in our setting and analyze its complexity. Based on these results, we prove complexity bounds for the termination problem of twn-loops as well as tight bounds for two important classes of loops which can always be transformed into twn-loops.

Finally, we show that there is an important class of linear loops. where our decision procedure results in an efficient procedure for termination analysis, i.e., where the parameterized complexity of deciding termination is polynomial.

研究环上三角形弱非线性环(双环)的终止证明问题 (mathcal {S}) 像 (mathbb {Z}), (mathbb {Q}),或 (mathbb {R}). 这种循环的守卫是一个任意的无量词的布尔公式(可能是非线性的)多项式方程,而主体是这种形式的单个赋值 (begin{bmatrix} x_1 ldots x_d end{bmatrix} leftarrow begin{bmatrix} c_1 cdot x_1 + p_1 ldots c_d cdot x_d + p_d end{bmatrix}) 每个人 (x_i) 是一个变量, (c_i in mathcal {S}),每个 (p_i) 一个(可能是非线性的)多项式是否结束 (mathcal {S}) 还有变量 (x_{i+1},ldots ,x_{d}). 我们证明终止问题可以简化为的一阶理论的存在片段 (mathcal {S}). For循环 (mathbb {R}),我们的约简意味着终止的可决性。For循环 (mathbb {Z}) 和 (mathbb {Q}),证明了非终止的半可判定性。在此基础上,提出了一种将非双环转化为双环的变换。然后,如果转换后的循环在的特定子集上终止,则原始循环终止 (mathbb {R}),这也可以通过我们的还原来验证。此外,我们形式化了一种在我们的设置中线性化(更新)双环的技术,并分析了其复杂性。在此基础上,我们证明了双环终止问题的复杂度界,以及两类总能转化为双环的重要环的紧界。最后,我们证明了一类重要的线性环路。其中,我们的决策过程得到了一个有效的终止分析过程,即决定终止的参数化复杂度为多项式。
{"title":"Termination of triangular polynomial loops","authors":"Marcel Hark, Florian Frohn, Jürgen Giesl","doi":"10.1007/s10703-023-00440-z","DOIUrl":"https://doi.org/10.1007/s10703-023-00440-z","url":null,"abstract":"<p>We consider the problem of proving termination for triangular weakly non-linear loops (<i>twn</i>-loops) over some ring <span>(mathcal {S})</span> like <span>(mathbb {Z})</span>, <span>(mathbb {Q})</span>, or <span>(mathbb {R})</span>. The guard of such a loop is an arbitrary quantifier-free Boolean formula over (possibly non-linear) polynomial inequations, and the body is a single assignment of the form <span>(begin{bmatrix} x_1 ldots x_d end{bmatrix} leftarrow begin{bmatrix} c_1 cdot x_1 + p_1 ldots c_d cdot x_d + p_d end{bmatrix})</span> where each <span>(x_i)</span> is a variable, <span>(c_i in mathcal {S})</span>, and each <span>(p_i)</span> is a (possibly non-linear) polynomial over <span>(mathcal {S})</span> and the variables <span>(x_{i+1},ldots ,x_{d})</span>. </p><p>We show that the question of termination can be reduced to the existential fragment of the first-order theory of <span>(mathcal {S})</span>. For loops over <span>(mathbb {R})</span>, our reduction implies decidability of termination. For loops over <span>(mathbb {Z})</span> and <span>(mathbb {Q})</span>, it proves semi-decidability of non-termination.</p><p>Furthermore, we present a transformation to convert certain non-<i>twn</i>-loops into <i>twn</i>-form. Then the original loop terminates iff the transformed loop terminates over a specific subset of <span>(mathbb {R})</span>, which can also be checked via our reduction. Moreover, we formalize a technique to <i>linearize</i> (the updates of) <i>twn</i>-loops in our setting and analyze its complexity. Based on these results, we prove complexity bounds for the termination problem of <i>twn</i>-loops as well as <i>tight</i> bounds for two important classes of loops which can <i>always</i> be transformed into <i>twn</i>-loops.</p><p>Finally, we show that there is an important class of linear loops. where our decision procedure results in an <i>efficient</i> procedure for termination analysis, i.e., where the parameterized complexity of deciding termination is <i>polynomial</i>.</p>","PeriodicalId":12430,"journal":{"name":"Formal Methods in System Design","volume":"1 1","pages":""},"PeriodicalIF":0.8,"publicationDate":"2023-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138539757","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
Termination of triangular polynomial loops 三角多项式循环的终止
IF 0.8 4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-12-04 DOI: 10.1007/s10703-023-00440-z
Marcel Hark, Florian Frohn, Jürgen Giesl

We consider the problem of proving termination for triangular weakly non-linear loops (twn-loops) over some ring (mathcal {S}) like (mathbb {Z}), (mathbb {Q}), or (mathbb {R}). The guard of such a loop is an arbitrary quantifier-free Boolean formula over (possibly non-linear) polynomial inequations, and the body is a single assignment of the form (begin{bmatrix} x_1 ldots x_d end{bmatrix} leftarrow begin{bmatrix} c_1 cdot x_1 + p_1 ldots c_d cdot x_d + p_d end{bmatrix}) where each (x_i) is a variable, (c_i in mathcal {S}), and each (p_i) is a (possibly non-linear) polynomial over (mathcal {S}) and the variables (x_{i+1},ldots ,x_{d}).

We show that the question of termination can be reduced to the existential fragment of the first-order theory of (mathcal {S}). For loops over (mathbb {R}), our reduction implies decidability of termination. For loops over (mathbb {Z}) and (mathbb {Q}), it proves semi-decidability of non-termination.

Furthermore, we present a transformation to convert certain non-twn-loops into twn-form. Then the original loop terminates iff the transformed loop terminates over a specific subset of (mathbb {R}), which can also be checked via our reduction. Moreover, we formalize a technique to linearize (the updates of) twn-loops in our setting and analyze its complexity. Based on these results, we prove complexity bounds for the termination problem of twn-loops as well as tight bounds for two important classes of loops which can always be transformed into twn-loops.

Finally, we show that there is an important class of linear loops. where our decision procedure results in an efficient procedure for termination analysis, i.e., where the parameterized complexity of deciding termination is polynomial.

研究环上三角形弱非线性环(双环)的终止证明问题 (mathcal {S}) 像 (mathbb {Z}), (mathbb {Q}),或 (mathbb {R}). 这种循环的守卫是一个任意的无量词的布尔公式(可能是非线性的)多项式方程,而主体是这种形式的单个赋值 (begin{bmatrix} x_1 ldots x_d end{bmatrix} leftarrow begin{bmatrix} c_1 cdot x_1 + p_1 ldots c_d cdot x_d + p_d end{bmatrix}) 每个人 (x_i) 是一个变量, (c_i in mathcal {S}),每个 (p_i) 一个(可能是非线性的)多项式是否结束 (mathcal {S}) 还有变量 (x_{i+1},ldots ,x_{d}). 我们证明终止问题可以简化为的一阶理论的存在片段 (mathcal {S}). For循环 (mathbb {R}),我们的约简意味着终止的可决性。For循环 (mathbb {Z}) 和 (mathbb {Q}),证明了非终止的半可判定性。在此基础上,提出了一种将非双环转化为双环的变换。然后,如果转换后的循环在的特定子集上终止,则原始循环终止 (mathbb {R}),这也可以通过我们的还原来验证。此外,我们形式化了一种在我们的设置中线性化(更新)双环的技术,并分析了其复杂性。在此基础上,我们证明了双环终止问题的复杂度界,以及两类总能转化为双环的重要环的紧界。最后,我们证明了一类重要的线性环路。其中,我们的决策过程得到了一个有效的终止分析过程,即决定终止的参数化复杂度为多项式。
{"title":"Termination of triangular polynomial loops","authors":"Marcel Hark, Florian Frohn, Jürgen Giesl","doi":"10.1007/s10703-023-00440-z","DOIUrl":"https://doi.org/10.1007/s10703-023-00440-z","url":null,"abstract":"<p>We consider the problem of proving termination for triangular weakly non-linear loops (<i>twn</i>-loops) over some ring <span>(mathcal {S})</span> like <span>(mathbb {Z})</span>, <span>(mathbb {Q})</span>, or <span>(mathbb {R})</span>. The guard of such a loop is an arbitrary quantifier-free Boolean formula over (possibly non-linear) polynomial inequations, and the body is a single assignment of the form <span>(begin{bmatrix} x_1 ldots x_d end{bmatrix} leftarrow begin{bmatrix} c_1 cdot x_1 + p_1 ldots c_d cdot x_d + p_d end{bmatrix})</span> where each <span>(x_i)</span> is a variable, <span>(c_i in mathcal {S})</span>, and each <span>(p_i)</span> is a (possibly non-linear) polynomial over <span>(mathcal {S})</span> and the variables <span>(x_{i+1},ldots ,x_{d})</span>. </p><p>We show that the question of termination can be reduced to the existential fragment of the first-order theory of <span>(mathcal {S})</span>. For loops over <span>(mathbb {R})</span>, our reduction implies decidability of termination. For loops over <span>(mathbb {Z})</span> and <span>(mathbb {Q})</span>, it proves semi-decidability of non-termination.</p><p>Furthermore, we present a transformation to convert certain non-<i>twn</i>-loops into <i>twn</i>-form. Then the original loop terminates iff the transformed loop terminates over a specific subset of <span>(mathbb {R})</span>, which can also be checked via our reduction. Moreover, we formalize a technique to <i>linearize</i> (the updates of) <i>twn</i>-loops in our setting and analyze its complexity. Based on these results, we prove complexity bounds for the termination problem of <i>twn</i>-loops as well as <i>tight</i> bounds for two important classes of loops which can <i>always</i> be transformed into <i>twn</i>-loops.</p><p>Finally, we show that there is an important class of linear loops. where our decision procedure results in an <i>efficient</i> procedure for termination analysis, i.e., where the parameterized complexity of deciding termination is <i>polynomial</i>.</p>","PeriodicalId":12430,"journal":{"name":"Formal Methods in System Design","volume":"1 1","pages":""},"PeriodicalIF":0.8,"publicationDate":"2023-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138539751","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
Extending rely-guarantee thinking to handle real-time scheduling 扩展可靠保证思维处理实时调度
IF 0.8 4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-11-30 DOI: 10.1007/s10703-023-00441-y
Cliff B. Jones, Alan Burns

The reference point for developing any artefact is its specification; to develop software formally, a formal specification is required. For sequential programs, pre and post conditions (together with abstract objects) suffice; rely and guarantee conditions extend the scope of formal development approaches to tackle concurrency. In addition, real-time systems need ways of both requiring progress and relating that progress to some notion of time. This paper extends rely-guarantee ideas to cope with specifications of—and assumptions about—real-time schedulers. Furthermore it shows how the approach helps identify and specify fault-tolerance aspects of such schedulers by systematically challenging the assumptions.

开发任何工件的参考点都是它的规范;要正式地开发软件,需要一个正式的规范。对于顺序程序,前置和后置条件(以及抽象对象)就足够了;依赖和保证条件扩展了处理并发性的正式开发方法的范围。此外,实时系统需要既要求进程,又将进程与时间概念联系起来的方法。本文扩展了可靠保证思想来处理实时调度器的规范和假设。此外,它还展示了该方法如何通过系统地挑战假设来帮助识别和指定此类调度器的容错方面。
{"title":"Extending rely-guarantee thinking to handle real-time scheduling","authors":"Cliff B. Jones, Alan Burns","doi":"10.1007/s10703-023-00441-y","DOIUrl":"https://doi.org/10.1007/s10703-023-00441-y","url":null,"abstract":"<p>The reference point for developing any artefact is its specification; to develop software formally, a formal specification is required. For sequential programs, pre and post conditions (together with abstract objects) suffice; rely and guarantee conditions extend the scope of formal development approaches to tackle concurrency. In addition, real-time systems need ways of both requiring progress and relating that progress to some notion of time. This paper extends rely-guarantee ideas to cope with specifications of—and assumptions about—real-time schedulers. Furthermore it shows how the approach helps identify and specify fault-tolerance aspects of such schedulers by systematically challenging the assumptions.</p>","PeriodicalId":12430,"journal":{"name":"Formal Methods in System Design","volume":"13 1","pages":""},"PeriodicalIF":0.8,"publicationDate":"2023-11-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138539729","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
Extending rely-guarantee thinking to handle real-time scheduling 扩展可靠保证思维处理实时调度
IF 0.8 4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-11-30 DOI: 10.1007/s10703-023-00441-y
Cliff B. Jones, Alan Burns

The reference point for developing any artefact is its specification; to develop software formally, a formal specification is required. For sequential programs, pre and post conditions (together with abstract objects) suffice; rely and guarantee conditions extend the scope of formal development approaches to tackle concurrency. In addition, real-time systems need ways of both requiring progress and relating that progress to some notion of time. This paper extends rely-guarantee ideas to cope with specifications of—and assumptions about—real-time schedulers. Furthermore it shows how the approach helps identify and specify fault-tolerance aspects of such schedulers by systematically challenging the assumptions.

开发任何工件的参考点都是它的规范;要正式地开发软件,需要一个正式的规范。对于顺序程序,前置和后置条件(以及抽象对象)就足够了;依赖和保证条件扩展了处理并发性的正式开发方法的范围。此外,实时系统需要既要求进程,又将进程与时间概念联系起来的方法。本文扩展了可靠保证思想来处理实时调度器的规范和假设。此外,它还展示了该方法如何通过系统地挑战假设来帮助识别和指定此类调度器的容错方面。
{"title":"Extending rely-guarantee thinking to handle real-time scheduling","authors":"Cliff B. Jones, Alan Burns","doi":"10.1007/s10703-023-00441-y","DOIUrl":"https://doi.org/10.1007/s10703-023-00441-y","url":null,"abstract":"<p>The reference point for developing any artefact is its specification; to develop software formally, a formal specification is required. For sequential programs, pre and post conditions (together with abstract objects) suffice; rely and guarantee conditions extend the scope of formal development approaches to tackle concurrency. In addition, real-time systems need ways of both requiring progress and relating that progress to some notion of time. This paper extends rely-guarantee ideas to cope with specifications of—and assumptions about—real-time schedulers. Furthermore it shows how the approach helps identify and specify fault-tolerance aspects of such schedulers by systematically challenging the assumptions.</p>","PeriodicalId":12430,"journal":{"name":"Formal Methods in System Design","volume":"13 1","pages":""},"PeriodicalIF":0.8,"publicationDate":"2023-11-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138539684","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
Church synthesis on register automata over linearly ordered data domains 线性有序数据域上寄存器自动机的教会综合
4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-10-10 DOI: 10.1007/s10703-023-00435-w
Léo Exibard, Emmanuel Filiot, Ayrat Khalimov
{"title":"Church synthesis on register automata over linearly ordered data domains","authors":"Léo Exibard, Emmanuel Filiot, Ayrat Khalimov","doi":"10.1007/s10703-023-00435-w","DOIUrl":"https://doi.org/10.1007/s10703-023-00435-w","url":null,"abstract":"","PeriodicalId":12430,"journal":{"name":"Formal Methods in System Design","volume":"75 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-10-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"136352759","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
Thread-modular counter abstraction: automated safety and termination proofs of parameterized software by reduction to sequential program verification 线程模块化计数器抽象:通过简化为顺序程序验证来实现参数化软件的自动安全性和终止证明
4区 计算机科学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-10-06 DOI: 10.1007/s10703-023-00439-6
Thomas Pani, Georg Weissenbacher, Florian Zuleger
Abstract Parameterized programs are composed of an arbitrary number of concurrent, infinite-state threads. Automated safety and liveness proofs of such parameterized software are hard; state-of-the-art methods for their formal verification rely on intricate abstractions and complicated proof techniques that impede automation. In this paper, we introduce thread-modular counter abstraction (TMCA), a lean new abstraction technique to replace the existing heavy proof machinery. TMCA is a structured abstraction framework built from a novel combination of counter abstraction , thread-modular reasoning , and predicate abstraction . Its major strength lies in reducing the parameterized verification problem to the sequential setting, for which powerful proof procedures, efficient heuristics, and effective automated tools have been developed over the past decades. In this work, we first introduce the TMCA abstraction paradigm, then present a fully automated method for parameterized safety proofs, and finally discuss its application to automated termination and liveness proofs of parameterized software.
参数化程序由任意数量的并发、无限状态线程组成。这类参数化软件的自动化安全性和活动性证明是困难的;最先进的形式验证方法依赖于复杂的抽象和复杂的证明技术,这阻碍了自动化。本文介绍了线程模块化计数器抽象(TMCA),这是一种新的精简抽象技术,可以取代现有的重型防护机器。TMCA是一个结构化抽象框架,由计数器抽象、线程模块化推理和谓词抽象的新颖组合构建而成。它的主要优点在于将参数化的验证问题减少到顺序设置,为此在过去的几十年中已经开发了强大的证明过程、有效的启发式和有效的自动化工具。本文首先介绍了TMCA抽象范式,然后提出了一种全自动的参数化安全性证明方法,最后讨论了其在参数化软件的自动终止性和活动性证明中的应用。
{"title":"Thread-modular counter abstraction: automated safety and termination proofs of parameterized software by reduction to sequential program verification","authors":"Thomas Pani, Georg Weissenbacher, Florian Zuleger","doi":"10.1007/s10703-023-00439-6","DOIUrl":"https://doi.org/10.1007/s10703-023-00439-6","url":null,"abstract":"Abstract Parameterized programs are composed of an arbitrary number of concurrent, infinite-state threads. Automated safety and liveness proofs of such parameterized software are hard; state-of-the-art methods for their formal verification rely on intricate abstractions and complicated proof techniques that impede automation. In this paper, we introduce thread-modular counter abstraction (TMCA), a lean new abstraction technique to replace the existing heavy proof machinery. TMCA is a structured abstraction framework built from a novel combination of counter abstraction , thread-modular reasoning , and predicate abstraction . Its major strength lies in reducing the parameterized verification problem to the sequential setting, for which powerful proof procedures, efficient heuristics, and effective automated tools have been developed over the past decades. In this work, we first introduce the TMCA abstraction paradigm, then present a fully automated method for parameterized safety proofs, and finally discuss its application to automated termination and liveness proofs of parameterized software.","PeriodicalId":12430,"journal":{"name":"Formal Methods in System Design","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-10-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"135346746","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 Methods in System Design
全部 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