首页 > 最新文献

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

英文 中文
Variations and interpretations of naturality in call-by-name lambda-calculi with generalized applications 名称调用lambda演算中自然性的变化和解释及其推广应用
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-02-01 DOI: 10.1016/j.jlamp.2022.100830
José Espírito Santo , Maria João Frade , Luís Pinto

In the context of intuitionistic sequent calculus, “naturality” means permutation-freeness (the terminology is essentially due to Mints). We study naturality in the context of the lambda-calculus with generalized applications and its multiary extension, to cover, under the Curry-Howard correspondence, proof systems ranging from natural deduction (with and without general elimination rules) to a fragment of sequent calculus with an iterable left-introduction rule, and which can still be recognized as a call-by-name lambda-calculus. In this context, naturality consists of a certain restricted use of generalized applications. We consider the further restriction obtained by the combination of naturality with normality w.r.t. the commutative conversion engendered by generalized applications. This combination sheds light on the interpretation of naturality as a vectorization mechanism, allowing a multitude of different ways of structuring lambda-terms, and the structuring of a multitude of interesting fragments of the systems under study. We also consider a relaxation of naturality, called weak naturality: this not only brings similar structural benefits, but also suggests a new “weak” system of natural deduction with generalized applications which is exempt from commutative conversions. In the end, we use all of this evidence as a stepping stone to propose a computational interpretation of generalized application (whether multiary or not, and without any restriction): it includes, alongside the argument(s) for the function, a general list – a new, very general, vectorization mechanism, that structures the continuation of the computation.

在直觉序演算的上下文中,“自然性”意味着置换自由性(该术语本质上是由于Mints)。我们在具有广义应用的lambda演算及其多元扩展的背景下研究了自然性,以涵盖在Curry-Howard对应关系下的证明系统,从自然推导(有和没有一般消去规则)到具有可迭代左引入规则的序列演算的片段,其仍然可以被识别为名称为lambda演算的调用。在这种情况下,自然性包括对广义应用程序的某种限制性使用。我们考虑了自然性与正规性相结合所得到的进一步的限制,以及广义应用所产生的交换转换。这种组合揭示了自然性作为矢量化机制的解释,允许以多种不同的方式构建lambda项,并构建所研究系统的许多有趣片段。我们还考虑了自然性的放松,称为弱自然性:这不仅带来了类似的结构好处,而且提出了一个新的“弱”自然演绎系统,该系统具有广义应用,不受交换转换的约束。最后,我们将所有这些证据作为垫脚石,提出对广义应用的计算解释(无论是否是多元的,并且没有任何限制):它包括一个通用列表,以及函数的自变量——一种新的、非常通用的矢量化机制,它构造了计算的连续性。
{"title":"Variations and interpretations of naturality in call-by-name lambda-calculi with generalized applications","authors":"José Espírito Santo ,&nbsp;Maria João Frade ,&nbsp;Luís Pinto","doi":"10.1016/j.jlamp.2022.100830","DOIUrl":"https://doi.org/10.1016/j.jlamp.2022.100830","url":null,"abstract":"<div><p>In the context of intuitionistic sequent calculus, “naturality” means permutation-freeness (the terminology is essentially due to Mints). We study naturality in the context of the lambda-calculus with generalized applications and its multiary extension, to cover, under the Curry-Howard correspondence, proof systems ranging from natural deduction (with and without general elimination rules) to a fragment of sequent calculus with an iterable left-introduction rule, and which can still be recognized as a call-by-name lambda-calculus. In this context, naturality consists of a certain restricted use of generalized applications. We consider the further restriction obtained by the combination of naturality with normality w.r.t. the commutative conversion engendered by generalized applications. This combination sheds light on the interpretation of naturality as a vectorization mechanism, allowing a multitude of different ways of structuring lambda-terms, and the structuring of a multitude of interesting fragments of the systems under study. We also consider a relaxation of naturality, called weak naturality: this not only brings similar structural benefits, but also suggests a new “weak” system of natural deduction with generalized applications which is exempt from commutative conversions. In the end, we use all of this evidence as a stepping stone to propose a computational interpretation of generalized application (whether multiary or not, and without any restriction): it includes, alongside the argument(s) for the function, a <em>general list</em> – a new, very general, vectorization mechanism, that structures the continuation of the computation.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"131 ","pages":"Article 100830"},"PeriodicalIF":0.9,"publicationDate":"2023-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50202957","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
Multiparty half-duplex systems and synchronous communications 多方半双工系统和同步通信
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-02-01 DOI: 10.1016/j.jlamp.2022.100843
Cinzia Di Giusto, Loïc Germerie Guizouarn, Etienne Lozes

FIFO automata are finite state machines communicating through FIFO queues. They can be used, for instance, to model distributed protocols. Due to the unboundedness of the FIFO queues, several verification problems are undecidable for these systems. In order to model check such systems, one may look for decidable subclasses of FIFO systems. Binary half-duplex systems are systems of two FIFO automata exchanging over a half-duplex channel. They were studied by Cécé and Finkel who established the decidability in polynomial time of several properties. There is no obvious way to generalize the half-duplex property to multiparty systems. Cécé and Finkel proposed some generalizations but concluded that their notions of multiparty half-duplex systems were either too restrictive or too expressive.

We explore in this paper other ways of generalizing half-duplex systems to multiparty. First, we introduce systems realizable with synchronous communications (RSC) and we show that RSC systems generalize half-duplex systems and retain the same good properties as binary half-duplex systems. Second, we introduce a notion of multiparty half-duplex systems that differs from the ones explored by Cécé and Finkel, and we show two results about this notion: (1) for mailbox communications, half-duplex systems are essentially the same as RSC systems, and (2) for peer-to-peer communications, the two notions are distinct, and RSC systems appear to be “the good one”, since peer-to-peer half-duplex systems are Turing powerful.

FIFO自动机是通过FIFO队列进行通信的有限状态机。例如,它们可以用于对分布式协议进行建模。由于FIFO队列的无界性,这些系统的几个验证问题是不可判定的。为了对这样的系统进行模型检查,可以寻找FIFO系统的可判定子类。二进制半双工系统是两个FIFO自动机在半双工信道上交换的系统。CéCé和Finkel对它们进行了研究,他们在多项式时间内建立了几个性质的可判定性。没有明显的方法将半双工性质推广到多方系统。CéCé和Finkel提出了一些推广,但得出的结论是,他们关于多方半双工系统的概念要么限制性太强,要么表达性太强。本文探讨了将半双工系统推广为多党制的其他方法。首先,我们介绍了用同步通信(RSC)实现的系统,并证明了RSC系统推广了半双工系统,并保持了与二进制半双工系统相同的良好性能。其次,我们引入了一个多方半双工系统的概念,该概念不同于CéCé和Finkel所探索的概念,我们展示了关于该概念的两个结果:(1)对于邮箱通信,半双工系统与RSC系统本质上相同;(2)对于对等通信,这两个概念是不同的,RSC系统似乎是“好的一个”,因为对等半双工系统是图灵强大的。
{"title":"Multiparty half-duplex systems and synchronous communications","authors":"Cinzia Di Giusto,&nbsp;Loïc Germerie Guizouarn,&nbsp;Etienne Lozes","doi":"10.1016/j.jlamp.2022.100843","DOIUrl":"https://doi.org/10.1016/j.jlamp.2022.100843","url":null,"abstract":"<div><p><span><span>FIFO automata are </span>finite state machines communicating through FIFO queues. They can be used, for instance, to model distributed protocols. Due to the unboundedness of the FIFO queues, several verification problems are undecidable for these systems. In order to model check such systems, one may look for decidable </span>subclasses<span><span> of FIFO systems. Binary half-duplex systems are systems of two FIFO automata exchanging over a half-duplex channel. They were studied by Cécé and Finkel who established the decidability in polynomial time of several properties. There is no obvious way to generalize the half-duplex property to </span>multiparty systems. Cécé and Finkel proposed some generalizations but concluded that their notions of multiparty half-duplex systems were either too restrictive or too expressive.</span></p><p>We explore in this paper other ways of generalizing half-duplex systems to multiparty. First, we introduce systems realizable with synchronous communications (RSC) and we show that RSC systems generalize half-duplex systems and retain the same good properties as binary half-duplex systems. Second, we introduce a notion of multiparty half-duplex systems that differs from the ones explored by Cécé and Finkel, and we show two results about this notion: (1) for mailbox communications, half-duplex systems are essentially the same as RSC systems, and (2) for peer-to-peer communications, the two notions are distinct, and RSC systems appear to be “the good one”, since peer-to-peer half-duplex systems are Turing powerful.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"131 ","pages":"Article 100843"},"PeriodicalIF":0.9,"publicationDate":"2023-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50202959","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
Host-graph-sensitive RETE nets for incremental graph pattern matching with nested graph conditions 用于与嵌套图条件进行增量图模式匹配的主机图敏感RETE网络
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-02-01 DOI: 10.1016/j.jlamp.2022.100841
Matthias Barkowsky, Holger Giese

Background

Efficient querying of large graph structures is a problem at the heart of several application domains such as social networks and model driven engineering. In particular in the context of model driven engineering, where the same query is executed frequently over an evolving graph structure, incremental techniques based on RETE nets are a popular solution. However, the construction of adequate RETE nets for a specific problem instance is a challenge in and of itself.

Methods

In this article, we propose an approach to RETE net construction for queries in the form of graph patterns equipped with nested graph conditions that considers not only the structure of the query, but also the structure of the host graph to improve the net's performance regarding execution time and memory consumption. Furthermore, we suggest a technique for adapting the net structure to changing host graph characteristics. We evaluate the presented concepts empirically based on queries and data from two independent benchmarks, using a mature tool for incremental graph pattern matching as a reference.

Results

Our evaluation results indicate that considering host graph structure during RETE net construction can improve performance of the resulting net. The experiments also demonstrate that adapting the net structure to changing host graph characteristics can be performed with an acceptable execution time overhead for our examples and may yield more adequate RETE nets. Overall, our approach never performed worse than the reference by more than factor 1.2 regarding execution time and achieved an improvement by up to factor 20.

背景大型图结构的高效查询是社交网络和模型驱动工程等几个应用领域的核心问题。特别是在模型驱动工程的背景下,在不断发展的图结构上频繁执行相同的查询,基于RETE网络的增量技术是一种流行的解决方案。然而,为一个具体的问题实例建立适当的RETE网络本身就是一个挑战。方法在本文中,我们提出了一种以带有嵌套图条件的图模式的形式为查询构建RETE网络的方法,该方法不仅考虑了查询的结构,还考虑了主机图的结构,以提高网络在执行时间和内存消耗方面的性能。此外,我们提出了一种使网络结构适应主机图特征变化的技术。我们基于来自两个独立基准的查询和数据,使用一个成熟的增量图模式匹配工具作为参考,对所提出的概念进行了实证评估。结果我们的评估结果表明,在RETE网络构建过程中考虑主机图结构可以提高网络的性能。实验还表明,对于我们的示例,可以在可接受的执行时间开销下执行网络结构以适应不断变化的主机图特性,并且可以产生更充分的RETE网络。总的来说,我们的方法在执行时间方面从未比参考差过1.2倍,并实现了高达20倍的改进。
{"title":"Host-graph-sensitive RETE nets for incremental graph pattern matching with nested graph conditions","authors":"Matthias Barkowsky,&nbsp;Holger Giese","doi":"10.1016/j.jlamp.2022.100841","DOIUrl":"https://doi.org/10.1016/j.jlamp.2022.100841","url":null,"abstract":"<div><h3>Background</h3><p>Efficient querying of large graph structures is a problem at the heart of several application domains such as social networks and model driven engineering. In particular in the context of model driven engineering, where the same query is executed frequently over an evolving graph structure, incremental techniques based on RETE nets are a popular solution. However, the construction of adequate RETE nets for a specific problem instance is a challenge in and of itself.</p></div><div><h3>Methods</h3><p>In this article, we propose an approach to RETE net construction for queries in the form of graph patterns equipped with nested graph conditions that considers not only the structure of the query, but also the structure of the host graph to improve the net's performance regarding execution time and memory consumption. Furthermore, we suggest a technique for adapting the net structure to changing host graph characteristics. We evaluate the presented concepts empirically based on queries and data from two independent benchmarks, using a mature tool for incremental graph pattern matching as a reference.</p></div><div><h3>Results</h3><p>Our evaluation results indicate that considering host graph structure during RETE net construction can improve performance of the resulting net. The experiments also demonstrate that adapting the net structure to changing host graph characteristics can be performed with an acceptable execution time overhead for our examples and may yield more adequate RETE nets. Overall, our approach never performed worse than the reference by more than factor 1.2 regarding execution time and achieved an improvement by up to factor 20.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"131 ","pages":"Article 100841"},"PeriodicalIF":0.9,"publicationDate":"2023-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50202960","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 equivalences based on open pNets 基于开放pNets的组合等价
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-02-01 DOI: 10.1016/j.jlamp.2022.100842
Rabéa Ameur-Boulifa , Ludovic Henrio , Eric Madelaine

Establishing equivalences between programs is crucial both for verifying correctness of programs and for justifying optimisations and program transformations. There exist several equivalence relations for programs, and bisimulations are among the most versatile of these equivalences. Among bisimulations one distinguishes strong bisimulation that requires that each action of a program is simulated by a single action of the equivalent program, and weak bisimulation that allows some of the actions to be invisible, and thus not simulated.

pNet is a generalisation of automata that model open systems. They feature variables and hierarchical composition. Open pNets are pNets with holes, i.e. placeholders that can be filled later by sub-systems. However, there is no standard tool for defining the semantics of an open system in this context. This article first defines open automata that are labelled transition systems with parameters and holes. Relying on open automata, it then defines bisimilarity relations for the comparison of systems specified as pNets. We first present a strong bisimilarity for open pNets called FH-bisimilarity. Next we offer an equivalence relation similar to the classical weak bisimulation equivalence, and study its properties. Among these properties we are interested in compositionality: if two systems are proven equivalent they will be indistinguishable by their context, and they will also be indistinguishable when their holes are filled with equivalent systems. We identify sufficient conditions to ensure compositionality of strong and weak bisimulation. The contributions of this article are illustrated using a transport protocol as running example.

在程序之间建立等价关系对于验证程序的正确性以及证明优化和程序转换的合理性至关重要。程序存在几种等价关系,而互模拟是这些等价关系中最通用的。在互模拟中,我们可以区分强互模拟和弱互模拟,前者要求程序的每个动作都由等效程序的单个动作模拟,后者允许一些动作不可见,因此不模拟。.Net是对开放系统建模的自动机的推广。它们以变量和层次结构为特征。开放pNets是带有孔的pNets,即可以稍后由子系统填充的占位符。然而,在这种情况下,没有用于定义开放系统语义的标准工具。本文首先定义了开放自动机,它被标记为带有参数和洞的转换系统。基于开放自动机,它定义了用于比较指定为pNets的系统的双相似性关系。我们首先提出了一个开放pNets的强双相似性,称为FH双相似性。接下来,我们给出了一个类似于经典弱互模拟等价的等价关系,并研究了它的性质。在这些性质中,我们对合成性感兴趣:如果两个系统被证明是等价的,它们将无法通过上下文来区分,并且当它们的洞被等价系统填满时,它们也将无法区分。我们确定了充分的条件来确保强和弱共刺激的合成性。使用传输协议作为运行示例来说明本文的贡献。
{"title":"Compositional equivalences based on open pNets","authors":"Rabéa Ameur-Boulifa ,&nbsp;Ludovic Henrio ,&nbsp;Eric Madelaine","doi":"10.1016/j.jlamp.2022.100842","DOIUrl":"https://doi.org/10.1016/j.jlamp.2022.100842","url":null,"abstract":"<div><p>Establishing equivalences between programs is crucial both for verifying correctness of programs and for justifying optimisations and program transformations. There exist several equivalence relations for programs, and bisimulations are among the most versatile of these equivalences. Among bisimulations one distinguishes strong bisimulation that requires that each action of a program is simulated by a single action of the equivalent program, and weak bisimulation that allows some of the actions to be invisible, and thus not simulated.</p><p><span>pNet is a generalisation of automata that model open systems. They feature variables and hierarchical composition. Open pNets are pNets with holes, i.e. placeholders that can be filled later by sub-systems. However, there is no standard tool for defining the semantics of an open system in this context. This article first defines </span><em>open automata</em> that are labelled transition systems with parameters and holes. Relying on open automata, it then defines bisimilarity relations for the comparison of systems specified as pNets. We first present a strong bisimilarity for open pNets called FH-bisimilarity. Next we offer an equivalence relation similar to the classical <em>weak bisimulation</em> equivalence, and study its properties. Among these properties we are interested in compositionality: if two systems are proven equivalent they will be indistinguishable by their context, and they will also be indistinguishable when their holes are filled with equivalent systems. We identify sufficient conditions to ensure compositionality of strong and weak bisimulation. The contributions of this article are illustrated using a transport protocol as running example.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"131 ","pages":"Article 100842"},"PeriodicalIF":0.9,"publicationDate":"2023-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50202955","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
Event structure semantics for multiparty sessions 多方会话的事件结构语义
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-02-01 DOI: 10.1016/j.jlamp.2022.100844
Ilaria Castellani , Mariangiola Dezani-Ciancaglini , Paola Giannini

We propose an interpretation of multiparty sessions as Flow Event Structures, which allows concurrency within sessions to be explicitly represented. We show that this interpretation is equivalent, when the multiparty sessions can be described by global types, to an interpretation of such global types as Prime Event Structures.

我们提出了一种将多方会话解释为流事件结构的方法,它允许显式地表示会话中的并发性。我们证明,当多方会话可以用全局类型描述时,这种解释等效于对诸如Prime Event Structures之类的全局类型的解释。
{"title":"Event structure semantics for multiparty sessions","authors":"Ilaria Castellani ,&nbsp;Mariangiola Dezani-Ciancaglini ,&nbsp;Paola Giannini","doi":"10.1016/j.jlamp.2022.100844","DOIUrl":"https://doi.org/10.1016/j.jlamp.2022.100844","url":null,"abstract":"<div><p>We propose an interpretation of multiparty sessions as <em>Flow Event Structures</em>, which allows concurrency within sessions to be explicitly represented. We show that this interpretation is equivalent, when the multiparty sessions can be described by global types, to an interpretation of such global types as <em>Prime Event Structures</em>.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"131 ","pages":"Article 100844"},"PeriodicalIF":0.9,"publicationDate":"2023-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50202954","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
Formalizing CCS and π-calculus in Guarded Cubical Agda 保护立方体Agda中CCS和π演算的形式化
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-02-01 DOI: 10.1016/j.jlamp.2022.100846
Niccolò Veltri , Andrea Vezzosi

Dependent type theories with guarded recursion have shown themselves suitable for the development of denotational semantics of programming languages. In particular, Ticked Cubical Type Theory (TCTT) has been used to show that, for guarded labeled transition systems (GLTS), interpretation into the denotational semantics maps bisimilar processes to equal values. In fact the two notions are proved equivalent, allowing one to reason about equality in place of bisimilarity.

We extend that result to the Calculus of Communicating Systems (CCS) and the π-calculus. For the latter, we pick early congruence as the syntactic notion of equivalence between processes, showing that denotational models based on guarded recursive types can handle the dynamic creation of channels that goes beyond the scope of GLTSs.

Hence we present fully abstract denotational models for CCS and the early π-calculus, formalized as an extended example for Guarded Cubical Agda: a novel implementation of Ticked Cubical Type Theory based on Cubical Agda.

具有保护递归的依赖类型理论已经表明它们适合于编程语言的指称语义的发展。特别是,Ticked Cubical Type Theory(TCTT)已经被用来表明,对于保护标记的转换系统(GLTS),对指称语义的解释将双相似过程映射到相等的值。事实上,这两个概念被证明是等价的,允许人们用平等来代替双重性。我们将这个结果推广到通信系统微积分(CCS)和π演算。对于后者,我们选择早期同余作为过程之间等价的句法概念,表明基于保护递归类型的指称模型可以处理超出GLTS范围的通道的动态创建。因此,我们为CCS和早期π演算提出了完全抽象的指称模型,形式化为保护立体派阿格达的扩展示例:基于立体派阿格达的Ticked Cubical Type Theory的新颖实现。
{"title":"Formalizing CCS and π-calculus in Guarded Cubical Agda","authors":"Niccolò Veltri ,&nbsp;Andrea Vezzosi","doi":"10.1016/j.jlamp.2022.100846","DOIUrl":"https://doi.org/10.1016/j.jlamp.2022.100846","url":null,"abstract":"<div><p>Dependent type theories with guarded recursion have shown themselves suitable for the development of denotational semantics of programming languages. In particular, Ticked Cubical Type Theory (TCTT) has been used to show that, for guarded labeled transition systems (GLTS), interpretation into the denotational semantics maps bisimilar processes to equal values. In fact the two notions are proved equivalent, allowing one to reason about equality in place of bisimilarity.</p><p>We extend that result to the Calculus of Communicating Systems (CCS) and the <em>π</em><span>-calculus. For the latter, we pick early congruence as the syntactic notion of equivalence between processes, showing that denotational models based on guarded recursive types can handle the dynamic creation of channels that goes beyond the scope of GLTSs.</span></p><p>Hence we present fully abstract denotational models for CCS and the early <em>π</em>-calculus, formalized as an extended example for Guarded Cubical Agda: a novel implementation of Ticked Cubical Type Theory based on Cubical Agda.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"131 ","pages":"Article 100846"},"PeriodicalIF":0.9,"publicationDate":"2023-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50202961","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
Unification of drags and confluence of drag rewriting 拖拽的统一与拖拽重写的融合
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-02-01 DOI: 10.1016/j.jlamp.2022.100845
Jean-Pierre Jouannaud , Fernando Orejas

Drags are a recent, natural generalization of terms which admit arbitrary cycles. A key aspect of drags is that they can be equipped with a composition operator so that rewriting amounts to replace a drag by another in a composition. In this paper, we develop a unification algorithm for drags that allows to check the local confluence property of a set of drag rewrite rules.

德拉格是最近对允许任意循环的术语的自然概括。拖动的一个关键方面是,它们可以配备合成运算符,因此重写相当于用合成中的另一个拖动替换拖动。在本文中,我们开发了一种用于拖动的统一算法,该算法允许检查一组拖动重写规则的局部汇合特性。
{"title":"Unification of drags and confluence of drag rewriting","authors":"Jean-Pierre Jouannaud ,&nbsp;Fernando Orejas","doi":"10.1016/j.jlamp.2022.100845","DOIUrl":"https://doi.org/10.1016/j.jlamp.2022.100845","url":null,"abstract":"<div><p>Drags are a recent, natural generalization of terms which admit arbitrary cycles. A key aspect of drags is that they can be equipped with a composition operator so that rewriting amounts to replace a drag by another in a composition. In this paper, we develop a unification algorithm for drags that allows to check the local confluence property of a set of drag rewrite rules.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"131 ","pages":"Article 100845"},"PeriodicalIF":0.9,"publicationDate":"2023-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50202958","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
A rewriting logic approach to specification, proof-search, and meta-proofs in sequent systems 顺序系统中规范、证明搜索和元证明的重写逻辑方法
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-01-01 DOI: 10.1016/j.jlamp.2022.100827
Carlos Olarte , Elaine Pimentel , Camilo Rocha

This paper develops an algorithmic-based approach for proving inductive properties of propositional sequent systems such as admissibility, invertibility, cut-admissibility, and identity expansion. Although undecidable in general, these structural properties are crucial in proof theory because they can reduce the proof-search effort and further be used as scaffolding for obtaining other meta-results such as consistency. The algorithms –which take advantage of the rewriting logic meta-logical framework– are explained in detail and illustrated with examples throughout the paper. They have been fully mechanized in the L-Framework, thus offering both a formal specification language and off-the-shelf mechanization of the proof-search algorithms coming together with semi-decision procedures for proving theorems and meta-theorems of the object system. As illustrated with case studies in the paper, the L-Framework achieves a great degree of automation when used on several propositional sequent systems, including single conclusion and multi-conclusion intuitionistic logic, classical logic, classical linear logic and its dyadic system, intuitionistic linear logic, and normal modal logics.

本文提出了一种基于算法的方法来证明命题序列系统的可容许性、可逆性、切容许性和恒等展开等归纳性质。虽然一般来说是不可判定的,但这些结构性质在证明理论中是至关重要的,因为它们可以减少证明搜索的工作量,并进一步用作获得其他元结果(如一致性)的脚手架。算法-利用重写逻辑元逻辑框架-被详细解释,并在整个论文中用例子说明。它们在L-Framework中已经完全机械化,因此提供了一种正式的规范语言和现成的证明搜索算法机械化,这些算法与用于证明对象系统的定理和元定理的半决策过程结合在一起。通过实例研究表明,l -框架在单结论和多结论直觉逻辑、经典逻辑、经典线性逻辑和它的二元系统、直觉线性逻辑和正态模态逻辑等命题序列系统中实现了很大程度的自动化。
{"title":"A rewriting logic approach to specification, proof-search, and meta-proofs in sequent systems","authors":"Carlos Olarte ,&nbsp;Elaine Pimentel ,&nbsp;Camilo Rocha","doi":"10.1016/j.jlamp.2022.100827","DOIUrl":"https://doi.org/10.1016/j.jlamp.2022.100827","url":null,"abstract":"<div><p>This paper develops an algorithmic-based approach for proving inductive properties of propositional sequent systems such as admissibility, invertibility, cut-admissibility, and identity expansion. Although undecidable in general, these structural properties are crucial in proof theory because they can reduce the proof-search effort and further be used as scaffolding for obtaining other meta-results such as consistency. The algorithms –which take advantage of the rewriting logic meta-logical framework– are explained in detail and illustrated with examples throughout the paper. They have been fully mechanized in the <span>L-Framework</span>, thus offering both a formal specification language and off-the-shelf mechanization of the proof-search algorithms coming together with semi-decision procedures for proving theorems and meta-theorems of the object system. As illustrated with case studies in the paper, the <span>L-Framework</span> achieves a great degree of automation when used on several propositional sequent systems, including single conclusion and multi-conclusion intuitionistic logic, classical logic, classical linear logic and its dyadic system, intuitionistic linear logic, and normal modal logics.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"130 ","pages":"Article 100827"},"PeriodicalIF":0.9,"publicationDate":"2023-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49888511","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}
引用次数: 4
Monadic second-order incorrectness logic for GP 2 GP 2的一元二阶不正确性逻辑
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-01-01 DOI: 10.1016/j.jlamp.2022.100825
Christopher M. Poskitt , Detlef Plump

Program logics typically reason about an over-approximation of program behaviour to prove the absence of bugs. Recently, program logics have been proposed that instead prove the presence of bugs by means of under-approximate reasoning, which has the promise of better scalability. In this paper, we present an under-approximate program logic for GP 2, a rule-based programming language for manipulating graphs. We define the proof rules of this program logic extensionally, i.e. independently of fixed assertion languages, then instantiate them with a morphism-based assertion language able to specify monadic second-order properties on graphs (e.g. path properties). We show how these proof rules can be used to reason deductively about the presence of forbidden graph structure or failing executions. Finally, we prove our ‘incorrectness logic’ to be sound, and our extensional proof rules to be relatively complete.

程序逻辑通常会推理程序行为的过度近似,以证明没有错误。最近,有人提出了程序逻辑,通过欠近似推理来证明错误的存在,这有助于更好的可扩展性。在本文中,我们提出了GP2的欠近似程序逻辑,这是一种基于规则的图形处理编程语言。我们扩展地定义了这个程序逻辑的证明规则,即独立于固定的断言语言,然后用基于态射的断言语言实例化它们,该断言语言能够指定图上的一元二阶属性(例如路径属性)。我们展示了如何使用这些证明规则来推断禁止图结构或失败执行的存在。最后,我们证明了我们的“不正确逻辑”是健全的,并且我们的外延证明规则是相对完整的。
{"title":"Monadic second-order incorrectness logic for GP 2","authors":"Christopher M. Poskitt ,&nbsp;Detlef Plump","doi":"10.1016/j.jlamp.2022.100825","DOIUrl":"https://doi.org/10.1016/j.jlamp.2022.100825","url":null,"abstract":"<div><p>Program logics typically reason about an over-approximation of program behaviour to prove the absence of bugs. Recently, program logics have been proposed that instead prove the <em>presence</em> of bugs by means of <em>under-approximate reasoning</em><span>, which has the promise of better scalability. In this paper, we present an under-approximate program logic for GP 2, a rule-based programming language for manipulating graphs. We define the proof rules of this program logic extensionally, i.e. independently of fixed assertion languages, then instantiate them with a morphism-based assertion language able to specify monadic second-order properties on graphs (e.g. path properties). We show how these proof rules can be used to reason deductively about the presence of forbidden graph structure or failing executions. Finally, we prove our ‘incorrectness logic’ to be sound, and our extensional proof rules to be relatively complete.</span></p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"130 ","pages":"Article 100825"},"PeriodicalIF":0.9,"publicationDate":"2023-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49888901","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}
引用次数: 3
Gaining trust by tracing security protocols 通过跟踪安全协议获得信任
IF 0.9 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2023-01-01 DOI: 10.1016/j.jlamp.2022.100829
Lars-Åke Fredlund , Clara Benac Earle , Thomas Arts , Hans Svensson

In this article, a novel form of white-box testing is used to test an implementation of the Noise Cryptographic Protocol Framework, which is used as an integral component in a commercial blockchain. Our approach extends the normal interoperability testing, where the noise implementation under test, written in the Erlang programming language, is tested against an implementation of the Noise protocol framework written in the C programming language. Testing typically performs a noise protocol handshake between the two implementations. If successful, then both implementations are considered compatible. However, such testing does not, for example, detect whether the Erlang implementation incorrectly reuse session keys that should have been newly generated. In this article, such interoperability testing is extended to also check that keys and information transmitted in protocol handshakes is correctly constructed, e.g., that session keys are freshly generated by calling the correct low-level cryptographic libraries. Such extended, white-box testing, begins by tracing the Erlang Noise implementation during protocol handshakes with the C programming protocol implementation. The resulting protocol trace is refactored, obtaining as the end result a symbolic description (a functional term) of how key protocol values are constructed using cryptographic operations and keys. Thereafter, this symbolic term is compared, using term rewriting, with another symbolic term representing the ideal symbolic execution of the tested Noise protocol handshake, i.e., the “semantics” of the handshake. The semantic symbolic term is obtained by executing a symbolic implementation of the noise protocol that we have developed, which very closely follows the semi-formal authoritative description of the Noise protocol framework.

在本文中,一种新形式的白盒测试被用于测试噪声加密协议框架的实现,该框架被用作商业区块链中的一个组成部分。我们的方法扩展了正常的互操作性测试,在这种测试中,用Erlang编程语言编写的被测噪声实现是针对用C语言编写的噪声协议框架的实现进行测试的。测试通常在两个实现之间执行噪声协议握手。如果成功,则认为这两种实现是兼容的。然而,例如,这样的测试并不能检测Erlang实现是否错误地重用了本应新生成的会话密钥。在本文中,这种互操作性测试被扩展到还检查在协议握手中传输的密钥和信息是否正确构建,例如,会话密钥是否是通过调用正确的低级密码库而新生成的。这种扩展的白盒测试从跟踪与C编程协议实现的协议握手期间的Erlang Noise实现开始。重构生成的协议跟踪,最终获得如何使用加密操作和密钥构建密钥协议值的符号描述(一个函数项)。此后,使用术语重写将该符号术语与另一个符号术语进行比较,该符号术语表示测试的Noise协议握手的理想符号执行,即握手的“语义”。语义符号术语是通过执行我们开发的噪声协议的符号实现来获得的,该协议非常接近于噪声协议框架的半形式权威描述。
{"title":"Gaining trust by tracing security protocols","authors":"Lars-Åke Fredlund ,&nbsp;Clara Benac Earle ,&nbsp;Thomas Arts ,&nbsp;Hans Svensson","doi":"10.1016/j.jlamp.2022.100829","DOIUrl":"https://doi.org/10.1016/j.jlamp.2022.100829","url":null,"abstract":"<div><p><span>In this article, a novel form of white-box testing is used to test an implementation of the Noise Cryptographic Protocol Framework, which is used as an integral component in a commercial </span>blockchain<span><span>. Our approach extends the normal interoperability testing, where the noise implementation under test, written in the Erlang programming language, is tested against an implementation of the Noise protocol framework written in the </span>C programming language<span>. Testing typically performs a noise protocol handshake<span> between the two implementations. If successful, then both implementations are considered compatible. However, such testing does not, for example, detect whether the Erlang implementation incorrectly reuse session keys that should have been newly generated. In this article, such interoperability testing is extended to also check that keys and information transmitted in protocol handshakes is correctly constructed, e.g., that session keys are freshly generated by calling the correct low-level cryptographic libraries. Such extended, white-box testing, begins by tracing the Erlang Noise implementation during protocol handshakes with the C programming protocol implementation. The resulting protocol trace is refactored, obtaining as the end result a symbolic description (a functional term) of how key protocol values are constructed using cryptographic operations and keys. Thereafter, this symbolic term is compared, using term rewriting, with another symbolic term representing the ideal symbolic execution of the tested Noise protocol handshake, i.e., the “semantics” of the handshake. The semantic symbolic term is obtained by executing a symbolic implementation of the noise protocol that we have developed, which very closely follows the semi-formal authoritative description of the Noise protocol framework.</span></span></span></p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"130 ","pages":"Article 100829"},"PeriodicalIF":0.9,"publicationDate":"2023-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49888900","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
期刊
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