首页 > 最新文献

Journal of Logical and Algebraic Methods in Programming最新文献

英文 中文
Reducing non-occurrence of specified runtime errors to all-path reachability problems of constrained rewriting 将指定运行时错误的不发生减少为约束重写的全路径可达性问题
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-10-01 DOI: 10.1016/j.jlamp.2023.100903
Misaki Kojima, Naoki Nishida

A concurrent program with semaphore-based exclusive control can be modeled by a logically constrained term rewrite system. In this paper, we first propose a framework to reduce the non-occurrence of a specified runtime error in the program to an all-path reachability problem of the transformed logically constrained term rewrite system. Here, an all-path reachability problem of the system is a pair of state sets and is demonically valid if every finite execution path starting with a state in the first set and ending with a terminating state includes a state in the second set. Then, we propose a weakened but easily-implementable variant of an existing proof system for all-path reachability problems. As a case study, we deal with the race freedom of concurrent programs with semaphore-based exclusive control.

具有基于信号量的独占控制的并发程序可以通过逻辑约束的术语重写系统来建模。在本文中,我们首先提出了一个框架,将程序中指定运行时错误的不发生减少为转换后的逻辑约束项重写系统的全路径可达性问题。这里,系统的全路径可达性问题是一对状态集,如果每个有限执行路径从第一组状态开始,以终止状态结束,包括第二组状态,则该问题是绝对有效的。然后,我们提出了一个现有的全路径可达性问题证明系统的弱化但易于实现的变体。作为一个案例研究,我们用基于信号量的独占控制处理并发程序的竞争自由。
{"title":"Reducing non-occurrence of specified runtime errors to all-path reachability problems of constrained rewriting","authors":"Misaki Kojima,&nbsp;Naoki Nishida","doi":"10.1016/j.jlamp.2023.100903","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100903","url":null,"abstract":"<div><p>A concurrent program with semaphore-based exclusive control can be modeled by a logically constrained term rewrite system. In this paper, we first propose a framework to reduce the non-occurrence of a specified runtime error in the program to an all-path reachability problem of the transformed logically constrained term rewrite system. Here, an all-path reachability problem of the system is a pair of state sets and is demonically valid if every finite execution path starting with a state in the first set and ending with a terminating state includes a state in the second set. Then, we propose a weakened but easily-implementable variant of an existing proof system for all-path reachability problems. As a case study, we deal with the race freedom of concurrent programs with semaphore-based exclusive control.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"135 ","pages":"Article 100903"},"PeriodicalIF":0.9,"publicationDate":"2023-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49876055","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
Operationally-based program equivalence proofs using LCTRSs 使用lctrs的基于操作的程序等价证明
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-10-01 DOI: 10.1016/j.jlamp.2023.100894
Ştefan Ciobâcă, Dorel Lucanu, Andrei Sebastian Buruiană

We propose an operationally-based framework for deductive proofs of program equivalence. It is based on encoding the language semantics as logically constrained term rewriting systems (LCTRSs) and the two programs as terms. As a novelty of our method, we show that it enables relational reasoning about programs in various settings, which are encoded in the operational semantics. For example, we show how our method can be used to prove programs that are equivalent when considering an unbounded stack, but where the equivalence fails to hold if the stack is bounded. We also show how to formalize read-sets and write-sets of symbolic expressions and statements by extending the operational semantics in a conservative way. This enables the relational verification of program schemas, which we exploit to prove compiler optimizations that cannot be handled by other tools. Our method requires an extension of standard LCTRSs with axiomatized symbols, which generate new research questions. We also present a prototype implementation that proves the practical feasibility of our approach.

我们提出了一个基于操作的框架,用于程序等价的演绎证明。它基于将语言语义编码为逻辑约束的术语重写系统(LCTRSs),并将两个程序编码为术语。作为我们方法的新颖之处,我们表明它可以对各种设置中的程序进行关系推理,这些设置在操作语义中进行编码。例如,我们展示了如何使用我们的方法来证明程序在考虑无界堆栈时是等价的,但如果堆栈是有界的,则等效性不成立。我们还展示了如何通过以保守的方式扩展操作语义来形式化符号表达式和语句的读集和写集。这支持程序模式的关系验证,我们利用它来证明其他工具无法处理的编译器优化。我们的方法需要用公理化符号对标准lctrs进行扩展,这就产生了新的研究问题。我们还提出了一个原型实现,证明了我们的方法的实际可行性。
{"title":"Operationally-based program equivalence proofs using LCTRSs","authors":"Ştefan Ciobâcă,&nbsp;Dorel Lucanu,&nbsp;Andrei Sebastian Buruiană","doi":"10.1016/j.jlamp.2023.100894","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100894","url":null,"abstract":"<div><p>We propose an operationally-based framework for deductive proofs of program equivalence. It is based on encoding the language semantics<span> as logically constrained term rewriting systems<span> (LCTRSs) and the two programs as terms. As a novelty of our method, we show that it enables relational reasoning about programs in various settings, which are encoded in the operational semantics<span>. For example, we show how our method can be used to prove programs that are equivalent when considering an unbounded stack, but where the equivalence fails to hold if the stack is bounded. We also show how to formalize read-sets and write-sets of symbolic expressions and statements by extending the operational semantics in a conservative way. This enables the relational verification of program schemas, which we exploit to prove compiler optimizations that cannot be handled by other tools. Our method requires an extension of standard LCTRSs with axiomatized symbols, which generate new research questions. We also present a prototype implementation that proves the practical feasibility of our approach.</span></span></span></p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"135 ","pages":"Article 100894"},"PeriodicalIF":0.9,"publicationDate":"2023-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49876056","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
Branching pomsets: Design, expressiveness and applications to choreographies 分支集:设计、表达和对编排的应用
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-09-20 DOI: 10.1016/j.jlamp.2023.100919
Luc Edixhoven , Sung-Shik Jongmans , José Proença , Ilaria Castellani

Choreographic languages describe possible sequences of interactions among a set of agents. Typical models are based on languages or automata over sending and receiving actions. Pomsets provide a more compact alternative by using a partial order to explicitly represent causality and concurrency between these actions. However, pomsets offer no representation of choices, thus a set of pomsets is required to represent branching behaviour. For example, if an agent Alice can send one of two possible messages to Bob three times, one would need a set of 2×2×2 distinct pomsets to represent all possible branches of Alice's behaviour. This paper proposes an extension of pomsets, named branching pomsets, with a branching structure that can represent Alice's behaviour using 2+2+2 ordered actions. We compare the expressiveness of branching pomsets with that of several forms of event structures from the literature. We encode choreographies as branching pomsets and show that the pomset semantics of the encoded choreographies are bisimilar to their operational semantics. Furthermore, we define well-formedness conditions on branching pomsets, inspired by multiparty session types, and we prove that the well-formedness of a branching pomset is a sufficient condition for the realisability of the represented communication protocol. Finally, we present a prototype tool that implements our theory of branching pomsets, focusing on its applications to choreographies.

编排语言描述了一组代理之间可能的交互序列。典型的模型基于发送和接收操作的语言或自动机。通过使用部分顺序显式地表示这些操作之间的因果关系和并发性,pomset提供了一个更紧凑的替代方案。然而,模型集不提供选择的表示,因此需要一组模型集来表示分支行为。例如,如果代理Alice可以将两个可能的消息中的一个发送给Bob三次,则需要一组2×2×2不同的消息集来表示Alice行为的所有可能分支。本文提出了一种扩展pomset,称为分支pomset,其分支结构可以表示Alice使用2+2+2有序动作的行为。我们将分支集的表达性与文献中几种形式的事件结构进行了比较。我们将编排编码为分支集合,并表明编码编排的集合语义与它们的操作语义是双相似的。在此基础上,受多方会话类型的启发,定义了分支集的格式良好性条件,并证明了分支集的格式良好性是表示的通信协议可实现的充分条件。最后,我们提出了一个原型工具来实现我们的分支集理论,重点关注其在编排中的应用。
{"title":"Branching pomsets: Design, expressiveness and applications to choreographies","authors":"Luc Edixhoven ,&nbsp;Sung-Shik Jongmans ,&nbsp;José Proença ,&nbsp;Ilaria Castellani","doi":"10.1016/j.jlamp.2023.100919","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100919","url":null,"abstract":"<div><p>Choreographic languages describe possible sequences of interactions among a set of agents. Typical models are based on languages or automata over sending and receiving actions. Pomsets provide a more compact alternative by using a partial order to explicitly represent causality and concurrency between these actions. However, pomsets offer no representation of choices, thus a set of pomsets is required to represent branching behaviour. For example, if an agent Alice can send one of two possible messages to Bob three times, one would need a set of <span><math><mn>2</mn><mo>×</mo><mn>2</mn><mo>×</mo><mn>2</mn></math></span> distinct pomsets to represent all possible branches of Alice's behaviour. This paper proposes an extension of pomsets, named <em>branching pomsets</em>, with a branching structure that can represent Alice's behaviour using <span><math><mn>2</mn><mo>+</mo><mn>2</mn><mo>+</mo><mn>2</mn></math></span> ordered actions. We compare the expressiveness of branching pomsets with that of several forms of event structures from the literature. We encode choreographies as branching pomsets and show that the pomset semantics of the encoded choreographies are bisimilar to their operational semantics. Furthermore, we define well-formedness conditions on branching pomsets, inspired by multiparty session types, and we prove that the well-formedness of a branching pomset is a sufficient condition for the realisability of the represented communication protocol. Finally, we present a prototype tool that implements our theory of branching pomsets, focusing on its applications to choreographies.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"136 ","pages":"Article 100919"},"PeriodicalIF":0.9,"publicationDate":"2023-09-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49875053","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
A generic construction for crossovers of graph-like structures and its realization in the Eclipse Modeling Framework 用于类图结构交叉的通用构造及其在Eclipse建模框架中的实现
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-09-09 DOI: 10.1016/j.jlamp.2023.100909
Jens Kosiol , Stefan John , Gabriele Taentzer

In model-driven optimization (MDO), domain-specific models are used to define and solve optimization problems via meta-heuristic search, often via evolutionary algorithms. Models are typically evolved using mutations, which can be formally specified as graph transformations. So far, only mutations have been used to generate new solution models from existing ones; a crossover mechanism has not yet been developed. In this paper, we present a generic crossover construction for graph-like structures, which can be used to implement crossover operators for models in MDO. We prove basic properties of our construction and show how it can be used to implement a whole set of crossover operators that have been proposed for specific problems and situations on graphs. In particular, we present a specialization of our construction to models defined in the Eclipse Modeling Framework.

在模型驱动优化(MDO)中,特定于领域的模型通常通过进化算法通过元启发式搜索来定义和解决优化问题。模型通常是使用突变来发展的,这可以正式地指定为图转换。到目前为止,只有突变被用来从现有的解决方案模型生成新的解决方案模型;交叉机制尚未形成。在本文中,我们提出了一种类图结构的通用交叉构造,它可以用于实现MDO中模型的交叉算子。我们证明了我们的构造的基本性质,并展示了如何使用它来实现针对图上特定问题和情况提出的一整套交叉算子。特别是,我们将我们的构造专门化到Eclipse Modeling Framework中定义的模型。
{"title":"A generic construction for crossovers of graph-like structures and its realization in the Eclipse Modeling Framework","authors":"Jens Kosiol ,&nbsp;Stefan John ,&nbsp;Gabriele Taentzer","doi":"10.1016/j.jlamp.2023.100909","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100909","url":null,"abstract":"<div><p><span>In model-driven optimization (MDO), domain-specific models are used to define and solve optimization problems<span> via meta-heuristic search, often via evolutionary algorithms. Models are typically evolved using mutations, which can be formally specified as graph transformations. So far, only mutations have been used to generate new solution models from existing ones; a crossover mechanism has not yet been developed. In this paper, we present a generic crossover construction for graph-like structures, which can be used to implement </span></span>crossover operators for models in MDO. We prove basic properties of our construction and show how it can be used to implement a whole set of crossover operators that have been proposed for specific problems and situations on graphs. In particular, we present a specialization of our construction to models defined in the Eclipse Modeling Framework.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"136 ","pages":"Article 100909"},"PeriodicalIF":0.9,"publicationDate":"2023-09-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49875054","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
Weighted automata extraction and explanation of recurrent neural networks for natural language tasks 自然语言任务中递归神经网络的加权自动机提取与解释
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-09-06 DOI: 10.1016/j.jlamp.2023.100907
Zeming Wei , Xiyue Zhang , Yihao Zhang , Meng Sun

Recurrent Neural Networks (RNNs) have achieved tremendous success in processing sequential data, yet understanding and analyzing their behaviours remains a significant challenge. To this end, many efforts have been made to extract finite automata from RNNs, which are more amenable for analysis and explanation. However, existing approaches like exact learning and compositional approaches for model extraction have limitations in either scalability or precision. In this paper, we propose a novel framework of Weighted Finite Automata (WFA) extraction and explanation to tackle the limitations for natural language tasks. First, to address the transition sparsity and context loss problems we identified in WFA extraction for natural language tasks, we propose an empirical method to complement missing rules in the transition diagram, and adjust transition matrices to enhance the context-awareness of the WFA. We also propose two data augmentation tactics to track more dynamic behaviours of RNN, which further allows us to improve the extraction precision. Based on the extracted model, we propose an explanation method for RNNs including a word embedding method – Transition Matrix Embeddings (TME) and TME-based task oriented explanation for the target RNN. Our evaluation demonstrates the advantage of our method in extraction precision than existing approaches, and the effectiveness of TME-based explanation method in applications to pretraining and adversarial example generation.

递归神经网络(RNNs)在处理序列数据方面取得了巨大的成功,但理解和分析其行为仍然是一个重大挑战。为此,人们做出了许多努力,从rnn中提取有限自动机,这更适合于分析和解释。然而,现有的模型提取方法,如精确学习和组合方法,在可扩展性和精度上都有局限性。在本文中,我们提出了一个新的加权有限自动机(WFA)提取和解释框架来解决自然语言任务的局限性。首先,为了解决我们在自然语言任务的WFA提取中发现的转换稀疏性和上下文丢失问题,我们提出了一种经验方法来补充转换图中缺失的规则,并调整转换矩阵以增强WFA的上下文感知。我们还提出了两种数据增强策略来跟踪RNN的更多动态行为,这进一步提高了提取精度。在提取模型的基础上,提出了一种RNN的解释方法,包括词嵌入方法-过渡矩阵嵌入(TME)和基于TME的目标RNN面向任务的解释。我们的评估证明了我们的方法在提取精度上比现有方法的优势,以及基于tme的解释方法在预训练和对抗性示例生成中的应用有效性。
{"title":"Weighted automata extraction and explanation of recurrent neural networks for natural language tasks","authors":"Zeming Wei ,&nbsp;Xiyue Zhang ,&nbsp;Yihao Zhang ,&nbsp;Meng Sun","doi":"10.1016/j.jlamp.2023.100907","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100907","url":null,"abstract":"<div><p><span>Recurrent Neural Networks (RNNs) have achieved tremendous success in processing sequential data, yet understanding and analyzing their behaviours remains a significant challenge. To this end, many efforts have been made to extract </span>finite automata<span><span><span> from RNNs, which are more amenable for analysis and explanation. However, existing approaches like exact learning and compositional approaches for model extraction have limitations in either scalability or precision. In this paper, we propose a novel framework of Weighted Finite Automata (WFA) extraction and explanation to tackle the limitations for natural language tasks. First, to address the transition sparsity and context loss problems we identified in WFA extraction for natural language tasks, we propose an empirical method to complement missing rules in the </span>transition diagram, and adjust </span>transition matrices<span><span> to enhance the context-awareness of the WFA. We also propose two data augmentation tactics to track more dynamic behaviours of RNN, which further allows us to improve the extraction precision. Based on the extracted model, we propose an explanation method for RNNs including a </span>word embedding<span> method – Transition Matrix Embeddings (TME) and TME-based task oriented explanation for the target RNN. Our evaluation demonstrates the advantage of our method in extraction precision than existing approaches, and the effectiveness of TME-based explanation method in applications to pretraining and adversarial example generation.</span></span></span></p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"136 ","pages":"Article 100907"},"PeriodicalIF":0.9,"publicationDate":"2023-09-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49875056","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
On algebraic array theories 论代数数组理论
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-09-01 DOI: 10.1016/j.jlamp.2023.100906
Rodrigo Raya, Viktor Kunčak

Automatic verification of programs manipulating arrays relies on specialised decision procedures. A methodology to classify the theories handled by these procedures is introduced. It is based on decomposition theorems in the style of Feferman and Vaught. The method is applied to obtain an extension of combinatory array logic that is closed under propositional operations and Hoare triples. A classification according to expressiveness of six different fragments studied in the literature is given.

操纵数组的程序的自动验证依赖于专门的决策过程。介绍了一种对这些程序所处理的理论进行分类的方法。它是基于Feferman和Vaught风格的分解定理。应用该方法得到了组合数组逻辑在命题运算和Hoare三元组下闭合的扩展。根据文献中所研究的六种不同片段的表达方式进行了分类。
{"title":"On algebraic array theories","authors":"Rodrigo Raya,&nbsp;Viktor Kunčak","doi":"10.1016/j.jlamp.2023.100906","DOIUrl":"10.1016/j.jlamp.2023.100906","url":null,"abstract":"<div><p>Automatic verification of programs manipulating arrays relies on specialised decision procedures. A methodology to classify the theories handled by these procedures is introduced. It is based on decomposition theorems in the style of Feferman and Vaught. The method is applied to obtain an extension of combinatory array logic that is closed under propositional operations and Hoare triples. A classification according to expressiveness of six different fragments studied in the literature is given.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"136 ","pages":"Article 100906"},"PeriodicalIF":0.9,"publicationDate":"2023-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"47384064","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}
引用次数: 2
On difunctions 据difunctions
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-08-01 DOI: 10.1016/j.jlamp.2023.100878
Roland Backhouse , José Nuno Oliveira

The notion of a difunction was introduced by Jacques Riguet in 1948. Since then it has played a prominent role in database theory, type theory, program specification and process theory. The theory of difunctions is, however, less known in computing than it perhaps should be. The main purpose of the current paper is to give an account of difunction theory in relation algebra, with the aim of making the topic more mainstream.

As is common with many important concepts, there are several different but equivalent characterisations of difunctionality, each with its own strength and practical significance. This paper compares different proofs of the equivalence of the characterisations.

A well-known property is that a difunction is a set of completely disjoint rectangles. This property suggests the introduction of the (general) notion of the “core” of a relation; we use this notion to give a novel and, we believe, illuminating characterisation of difunctionality as a bijection between the classes of certain partial equivalence relations.

功能障碍的概念是雅克·里盖在1948年提出的。从那时起,它在数据库理论、类型理论、程序规范和过程理论中发挥了突出的作用。然而,在计算机领域,失能理论的知名度可能比它应有的要低。本文的主要目的是对关系代数中的二函数性理论进行阐述,以期使这一主题成为主流。与许多重要概念一样,有几种不同但等效的功能障碍特征,每种特征都有自己的力量和实际意义。本文比较了这些特征等价性的不同证明。一个众所周知的性质是,障函数是一组完全不相交的矩形。这一性质暗示了关系“核心”(一般)概念的引入;我们用这个概念给出了一个新颖的,我们相信,启发性的特征,即在某些部分等价关系的类之间的双射。
{"title":"On difunctions","authors":"Roland Backhouse ,&nbsp;José Nuno Oliveira","doi":"10.1016/j.jlamp.2023.100878","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100878","url":null,"abstract":"<div><p>The notion of a difunction was introduced by Jacques Riguet in 1948. Since then it has played a prominent role in database theory, type theory, program specification and process theory. The theory of difunctions is, however, less known in computing than it perhaps should be. The main purpose of the current paper is to give an account of difunction theory in relation algebra, with the aim of making the topic more mainstream.</p><p>As is common with many important concepts, there are several different but equivalent characterisations of difunctionality, each with its own strength and practical significance. This paper compares different proofs of the equivalence of the characterisations.</p><p>A well-known property is that a difunction is a set of completely disjoint rectangles. This property suggests the introduction of the (general) notion of the “core” of a relation; we use this notion to give a novel and, we believe, illuminating characterisation of difunctionality as a bijection between the classes of certain partial equivalence relations.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"134 ","pages":"Article 100878"},"PeriodicalIF":0.9,"publicationDate":"2023-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49881537","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}
引用次数: 1
Computational category-theoretic rewriting 计算范畴论重写
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-08-01 DOI: 10.1016/j.jlamp.2023.100888
Kristopher Brown , Evan Patterson , Tyler Hanks , James Fairbanks

We demonstrate how category theory provides specifications that can efficiently be implemented via imperative algorithms and apply this to the field of graph transformation. By examples, we show how this paradigm of software development makes it easy to quickly write correct and performant code. We provide a modern implementation of graph rewriting techniques at the level of abstraction of finitely-presented C-sets and clarify the connections between C-sets and the typed graphs supported in existing rewriting software. We emphasize that our open-source library is extensible: by taking new categorical constructions (such as slice categories, structured cospans, and distributed graphs) and relating their limits and colimits to those of their underlying categories, users inherit efficient algorithms for pushout complements and (final) pullback complements. This allows one to perform double-, single-, and sesqui-pushout rewriting over a broad class of data structures. Graph transformation researchers, scientists, and engineers can then use this library to computationally manipulate rewriting systems and apply them to their domains of interest.

我们演示了范畴论如何提供规范,这些规范可以通过命令式算法有效地实现,并将其应用于图变换领域。通过示例,我们展示了这种软件开发范式如何使快速编写正确且高性能的代码变得容易。我们在有限表示c集的抽象层次上提供了图重写技术的现代实现,并阐明了c集与现有重写软件中支持的类型化图之间的联系。我们强调我们的开源库是可扩展的:通过采用新的分类结构(如切片分类、结构化共跨和分布式图),并将它们的限制和界限与它们的底层类别的限制和界限联系起来,用户继承了推出补和(最终)回拉补的有效算法。这允许在广泛的数据结构类上执行双推出、单推出和半推出重写。图转换研究人员、科学家和工程师可以使用这个库来计算操作重写系统,并将它们应用到他们感兴趣的领域。
{"title":"Computational category-theoretic rewriting","authors":"Kristopher Brown ,&nbsp;Evan Patterson ,&nbsp;Tyler Hanks ,&nbsp;James Fairbanks","doi":"10.1016/j.jlamp.2023.100888","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100888","url":null,"abstract":"<div><p>We demonstrate how category theory provides specifications that can efficiently be implemented via imperative algorithms and apply this to the field of graph transformation. By examples, we show how this paradigm of software development makes it easy to quickly write correct and performant code. We provide a modern implementation of graph rewriting techniques at the level of abstraction of finitely-presented <span><math><mi>C</mi></math></span>-sets and clarify the connections between <span><math><mi>C</mi></math></span><span>-sets and the typed graphs supported in existing rewriting software. We emphasize that our open-source library is extensible: by taking new categorical constructions (such as slice categories, structured cospans, and distributed graphs) and relating their limits and colimits to those of their underlying categories, users inherit efficient algorithms for pushout complements and (final) pullback complements. This allows one to perform double-, single-, and sesqui-pushout rewriting over a broad class of data structures. Graph transformation researchers, scientists, and engineers can then use this library to computationally manipulate rewriting systems and apply them to their domains of interest.</span></p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"134 ","pages":"Article 100888"},"PeriodicalIF":0.9,"publicationDate":"2023-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49881538","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
Variants and satisfiability in the infinitary unification wonderland 无穷统一奇境中的变分与可满足性
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-08-01 DOI: 10.1016/j.jlamp.2023.100877
José Meseguer

So far, results about variants, the finite variant property (FVP), variant unification, and variant satisfiability have been developed for equational theories EB where B is a set of axioms having a finitary unification algorithm, and the equations E, oriented as rewrite rules E, are convergent modulo B. The extension to the case when B has an infinitary unification algorithm, for example because of non-commutative symbols having associative axioms, was not developed. This paper develops such an extension. In particular, the relationships between the FVP and the boundedness (BP) properties, the identification of conditions on EB ensuring FVP, the effective computation of variants and variant unifiers, and criteria making possible the existence of variant satisfiability procedures for the initial algebras of theories EB that are either FVP or BP are all explored in detail. The extension from the finitary to the infinitary B-unification case includes some surprises. Furthermore, since all the results are extended beyond FVP theories to the wider class of BP theories, new opportunities are opened up to use these symbolic techniques in wider classes of theories and applications.

到目前为止,关于变量、有限变性质(FVP)、变量统一和变量可满足性的结果已经在方程理论E∪B中得到了发展,其中B是一组具有有限统一算法的公理,方程E以重写规则E→为导向,是收敛模B的。对于B具有无限统一算法的扩展,例如由于非交换符号具有结合公理,没有得到发展。本文发展了这样一个推广。特别地,本文详细探讨了FVP和有界性(BP)之间的关系,E∪B上保证有界性的条件的确定,变元和变元统一子的有效计算,以及使得理论E∪B的初始代数(要么是FVP要么是BP)的变可满足性过程存在的准则。从有限到无限b统一情况的推广包含了一些惊喜。此外,由于所有结果都从FVP理论扩展到更广泛的BP理论,因此在更广泛的理论和应用中使用这些符号技术开辟了新的机会。
{"title":"Variants and satisfiability in the infinitary unification wonderland","authors":"José Meseguer","doi":"10.1016/j.jlamp.2023.100877","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100877","url":null,"abstract":"<div><p><span>So far, results about variants, the finite variant property (FVP), variant unification, and variant satisfiability have been developed for equational theories </span><span><math><mi>E</mi><mo>∪</mo><mi>B</mi></math></span> where <em>B</em><span> is a set of axioms having a finitary unification algorithm, and the equations </span><em>E</em>, oriented as rewrite rules <span><math><mover><mrow><mi>E</mi></mrow><mrow><mo>→</mo></mrow></mover></math></span>, are convergent modulo <em>B</em>. The extension to the case when <em>B</em> has an infinitary unification algorithm, for example because of non-commutative symbols having associative axioms, was not developed. This paper develops such an extension. In particular, the relationships between the FVP and the boundedness (BP) properties, the identification of conditions on <span><math><mi>E</mi><mo>∪</mo><mi>B</mi></math></span> ensuring FVP, the effective computation of variants and variant unifiers, and criteria making possible the existence of variant satisfiability procedures for the initial algebras of theories <span><math><mi>E</mi><mo>∪</mo><mi>B</mi></math></span> that are either FVP or BP are all explored in detail. The extension from the finitary to the infinitary <em>B</em>-unification case includes some surprises. Furthermore, since all the results are extended beyond FVP theories to the wider class of BP theories, new opportunities are opened up to use these symbolic techniques in wider classes of theories and applications.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"134 ","pages":"Article 100877"},"PeriodicalIF":0.9,"publicationDate":"2023-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49881569","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
A formal model for blockchain-based consent management in data sharing 数据共享中基于区块链的同意管理的正式模型
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-08-01 DOI: 10.1016/j.jlamp.2023.100886
Neda Peyrone , Duangdao Wichadakul

Consent is one of six legal bases for personal data processing mentioned in the General Data Protection Regulation (GDPR). The GDPR is a privacy law giving European Union (EU) citizens authority over personal data. It enforces software systems to collect, analyze, and share only necessary information (‘data minimization’) following the specific purpose (‘consent’). The GDPR defines consent as permission of individuals (‘data subjects’) to give organizations (‘data controllers’) processing their personal data. Without a data subject's consent, the data controller processes personal data unlawfully. Therefore, consent management is an essential component of a software system to build data subjects' trust and engagement. However, sharing data can lead to a potential loss of control over personal data, as data are across boundaries between software services. One of the significant risks is caused by a lack of developers' experience in data protection practices. Hence, in this paper, we propose to use blockchain technology to manage data subjects' informed consent for data sharing to build trust, transparency, and traceability to share data across software services. We formalized the semantics of smart contracts to extend the blockchain features to validate the consent authorization and manage the request-response interaction between the services. Furthermore, we used the Event-B method to describe the dynamic behavior of the proposed model and prove its correctness. Finally, we provided a mapping from the formal model to a smart contract class diagram and a prototype called SmartDataTrust implemented with solidity and Python REST API that developers can easily utilize.

同意是通用数据保护条例(GDPR)中提到的个人数据处理的六个法律依据之一。GDPR是一项隐私法,赋予欧盟公民管理个人数据的权力。它强制软件系统在特定目的(“同意”)下只收集、分析和共享必要的信息(“数据最小化”)。GDPR将同意定义为个人(“数据主体”)允许组织(“数据控制者”)处理其个人数据。未经数据主体同意,数据控制者非法处理个人数据。因此,同意管理是建立数据主体信任和参与的软件系统的重要组成部分。然而,共享数据可能导致对个人数据失去控制,因为数据在软件服务之间是跨边界的。其中一个重大风险是由于缺乏开发人员在数据保护实践方面的经验造成的。因此,在本文中,我们建议使用区块链技术来管理数据主体对数据共享的知情同意,以建立信任、透明度和可追溯性,从而跨软件服务共享数据。我们形式化了智能合约的语义,扩展了区块链特性,以验证同意授权和管理服务之间的请求-响应交互。此外,我们使用Event-B方法描述了所提模型的动态行为,并证明了其正确性。最后,我们提供了一个从正式模型到智能合约类图的映射,以及一个名为SmartDataTrust的原型,该原型使用solididity和Python REST API实现,开发人员可以轻松使用。
{"title":"A formal model for blockchain-based consent management in data sharing","authors":"Neda Peyrone ,&nbsp;Duangdao Wichadakul","doi":"10.1016/j.jlamp.2023.100886","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100886","url":null,"abstract":"<div><p><span>Consent is one of six legal bases for personal data processing mentioned in the </span>General Data Protection Regulation<span><span> (GDPR). The GDPR is a privacy law giving European Union (EU) citizens authority over personal data. It enforces software systems to collect, analyze, and share only necessary information (‘data minimization’) following the specific purpose (‘consent’). The GDPR defines consent as permission of individuals (‘data subjects’) to give organizations (‘data controllers’) processing their personal data. Without a data subject's consent, the data controller processes personal data unlawfully. Therefore, consent management is an essential component of a software system to build data subjects' trust and engagement. However, sharing data can lead to a potential loss of control over personal data, as data are across boundaries between software services. One of the significant risks is caused by a lack of developers' experience in data protection practices. Hence, in this paper, we propose to use blockchain technology to manage data subjects' informed consent for data sharing to build trust, transparency, and traceability to share data across software services. We formalized the semantics of </span>smart contracts<span> to extend the blockchain features to validate the consent authorization and manage the request-response interaction between the services. Furthermore, we used the Event-B method to describe the dynamic behavior of the proposed model and prove its correctness. Finally, we provided a mapping from the formal model to a smart contract class diagram and a prototype called SmartDataTrust implemented with solidity and Python REST API that developers can easily utilize.</span></span></p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"134 ","pages":"Article 100886"},"PeriodicalIF":0.9,"publicationDate":"2023-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49881541","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}
引用次数: 1
期刊
Journal of Logical and Algebraic Methods in 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