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

筛选
英文 中文
An axiomatic approach to differentiation of polynomial circuits 多项式电路微分的公理化方法
IF 0.9 4区 数学
Journal of Logical and Algebraic Methods in Programming Pub Date : 2023-06-01 DOI: 10.1016/j.jlamp.2023.100892
Paul W. Wilson, F. Zanasi
{"title":"An axiomatic approach to differentiation of polynomial circuits","authors":"Paul W. Wilson, F. Zanasi","doi":"10.1016/j.jlamp.2023.100892","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100892","url":null,"abstract":"","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"135 1","pages":"100892"},"PeriodicalIF":0.9,"publicationDate":"2023-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"54463339","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
Evaluation diversity for graph conditions 图条件的评价多样性
IF 0.9 4区 数学
Journal of Logical and Algebraic Methods in Programming Pub Date : 2023-06-01 DOI: 10.1016/j.jlamp.2023.100862
Sven Schneider , Leen Lambers
{"title":"Evaluation diversity for graph conditions","authors":"Sven Schneider ,&nbsp;Leen Lambers","doi":"10.1016/j.jlamp.2023.100862","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100862","url":null,"abstract":"<div><p><span>Graphs are used as a universal data structure in various domains. Sets of graphs (and likewise graph morphisms) can be specified using, e.g., the graph logic </span><figure><img></figure> of Graph Conditions (GCs). The <em>evaluation</em> of a graph against such a GC results in a Boolean satisfaction judgement on whether the graph is specified by the GC. The graph logic <figure><img></figure> is known to be as expressive as first-order logic on graphs. However, since infinitely many graphs exist, there are also infinitely many evaluations for each given GC. To support GC validation, testing, debugging, and repair, a suitable synthesis procedure generating a complete compact overview of <em>how</em> a given GC may be evaluated for possibly varying graphs is called for.</p><p>In a previous paper, we generated such an overview for a given GC in the form of a complete finite set of diverse evaluations for varying associated graphs formally given by so called Evaluation Trees (ETs). Each of these ETs concretely describes <em>how</em><span> its associated graph is evaluated against the given GC by recording the executed evaluation steps. Moreover, these generated ETs and the given GC for which they are generated have the same underlying structure easing comprehensibility of the represented evaluation steps. The returned ETs are </span><em>complete</em> since each possible ET subsumes one of the returned ETs and <em>diverse</em> by not containing superfluous ETs subsuming smaller ETs.</p><p>We now extend and refine this approach still solving the ET synthesis problem by (a) extending the graph logic GL allowing for the specification of a minimal number of graph patterns to be contained in specified graphs, (b) provide means to scale the size of the generated ETs up to a user-provided bound allowing for the generation of not just minimal ETs, (c) record the order of evaluations steps also for operators where the evaluation but not the operator itself defines such an order, and (d) generate ETs recording combinations of reasons for (non-)satisfaction of GCs where only single reasons were recorded before.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"133 ","pages":"Article 100862"},"PeriodicalIF":0.9,"publicationDate":"2023-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50203595","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 semantics for agent distribution and fault tolerance in Jason Jason中代理分布和容错的形式语义
IF 0.9 4区 数学
Journal of Logical and Algebraic Methods in Programming Pub Date : 2023-06-01 DOI: 10.1016/j.jlamp.2023.100874
Álvaro Fernández Díaz, Lars-Åke Fredlund, Clara Benac-Earle, Julio Mariño
{"title":"A formal semantics for agent distribution and fault tolerance in Jason","authors":"Álvaro Fernández Díaz,&nbsp;Lars-Åke Fredlund,&nbsp;Clara Benac-Earle,&nbsp;Julio Mariño","doi":"10.1016/j.jlamp.2023.100874","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100874","url":null,"abstract":"<div><p>This article provides a formal specification of the distribution and fault-tolerance mechanisms of eJason. The eJason programming language is an extension to the agent-oriented programming language Jason that introduces native support for the transparent distribution of agents as well as fault-tolerance mechanisms. This formal semantics is presented from a multiagent system perspective. It unambiguously describes both the possible evolution of the distributed multiagent system over time and the different instruments for fault detection and fault recovery, hence exposing their strengths. This specification may serve as a reference for researchers interested in the inclusion of similar mechanisms in agent-oriented programming languages. The formal semantics has been mechanized through an (open-source) implementation written in Prolog, which implements both the standard Jason operational semantics, along with the new rules for distribution and fault-tolerance introduced in this article.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"133 ","pages":"Article 100874"},"PeriodicalIF":0.9,"publicationDate":"2023-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50203598","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
Graph rewriting and relabeling with PBPO+: A unifying theory for quasitoposes 用PBPO+重写和重新标记图:拟拓扑的统一理论
IF 0.9 4区 数学
Journal of Logical and Algebraic Methods in Programming Pub Date : 2023-06-01 DOI: 10.1016/j.jlamp.2023.100873
Roy Overbeek, Jörg Endrullis, Aloïs Rosset
{"title":"Graph rewriting and relabeling with PBPO+: A unifying theory for quasitoposes","authors":"Roy Overbeek,&nbsp;Jörg Endrullis,&nbsp;Aloïs Rosset","doi":"10.1016/j.jlamp.2023.100873","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100873","url":null,"abstract":"<div><p>We extend the powerful Pullback-Pushout (PBPO) approach for graph rewriting with strong matching. Our approach, called PBPO<sup>+</sup>, allows more control over the embedding of the pattern in the host graph, which is important for a large class of rewrite systems. We argue that PBPO<sup>+</sup> can be considered a unifying theory in the general setting of quasitoposes, by demonstrating that PBPO<sup>+</sup> can define a strict superset of the rewrite relations definable by PBPO, AGREE and DPO. Additionally, we show that PBPO<sup>+</sup> is well suited for rewriting labeled graphs and some classes of attributed graphs, by introducing a lattice structure on the label set and requiring graph morphisms to be order-preserving.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"133 ","pages":"Article 100873"},"PeriodicalIF":0.9,"publicationDate":"2023-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50203596","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
Session-based concurrency in Maude: Executable semantics and type checking Maude中基于会话的并发:可执行语义和类型检查
IF 0.9 4区 数学
Journal of Logical and Algebraic Methods in Programming Pub Date : 2023-06-01 DOI: 10.1016/j.jlamp.2023.100872
Carlos Alberto Ramírez Restrepo , Juan C. Jaramillo , Jorge A. Pérez
{"title":"Session-based concurrency in Maude: Executable semantics and type checking","authors":"Carlos Alberto Ramírez Restrepo ,&nbsp;Juan C. Jaramillo ,&nbsp;Jorge A. Pérez","doi":"10.1016/j.jlamp.2023.100872","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100872","url":null,"abstract":"<div><p>Session types are a well-established approach to communication correctness in message-passing processes. Widely studied from a process calculi perspective, here we pursue an unexplored strand and investigate the use of the Maude system for implementing session-typed process languages and reasoning about session-typed process specifications.</p><p>We present four technical contributions. First, we develop and implement in Maude an executable specification of the operational semantics of a session-typed <em>π</em>-calculus by Vasconcelos. Second, we also develop an executable specification of its associated algorithmic type checking, and describe how both specifications can be integrated. Third, we show that our executable specification can be coupled with reachability and model checking tools in Maude to detect well-typed but deadlocked processes. Finally, we demonstrate the robustness of our approach by adapting it to a <em>higher-order</em> session <em>π</em>-calculus, in which exchanged values include names but also abstractions (functions from names to processes).</p><p>All in all, our contributions define a promising new approach to the (semi)automated analysis of communication correctness in message-passing concurrency.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"133 ","pages":"Article 100872"},"PeriodicalIF":0.9,"publicationDate":"2023-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50203597","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
Relation-changing models meet paraconsistency 关系变化模型满足准一致性
IF 0.9 4区 数学
Journal of Logical and Algebraic Methods in Programming Pub Date : 2023-06-01 DOI: 10.1016/j.jlamp.2023.100870
Diana Costa , Daniel Figueiredo , Manuel A. Martins
{"title":"Relation-changing models meet paraconsistency","authors":"Diana Costa ,&nbsp;Daniel Figueiredo ,&nbsp;Manuel A. Martins","doi":"10.1016/j.jlamp.2023.100870","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100870","url":null,"abstract":"<div><p>Switch graphs are graph-like structures characterized by embedding higher-level edges (edges that link to other edges) to describe reactive phenomena. When an edge of such structure is traversed, the accessibility relation of this graph can be changed by adding/removing edges. Relation-changing models have been used to represent phenomena in diverse fields (from Biology to Computer Science) and some modal languages were introduced recently. In this paper we introduce four-valued local information in switch graphs, and propose a paraconsistent logic to study these systems.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"133 ","pages":"Article 100870"},"PeriodicalIF":0.9,"publicationDate":"2023-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50203599","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 verified VCGen based on dynamic logic: An exercise in meta-verification with Why3 基于动态逻辑的验证VCGen:使用Why3进行元验证的练习
IF 0.9 4区 数学
Journal of Logical and Algebraic Methods in Programming Pub Date : 2023-06-01 DOI: 10.1016/j.jlamp.2023.100871
Maria João Frade, Jorge Sousa Pinto
{"title":"A verified VCGen based on dynamic logic: An exercise in meta-verification with Why3","authors":"Maria João Frade,&nbsp;Jorge Sousa Pinto","doi":"10.1016/j.jlamp.2023.100871","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100871","url":null,"abstract":"<div><p>With the incresasing importance of program verification, an issue that has been receiving more attention is the certification of verification tools, addressing the vernacular question: “Who verifies the verifier?”. In this paper we approach this meta-verification problem by focusing on a fundamental component of program verifiers: the “Verification Conditions Generator” (VCGen), responsible for producing a set of proof obligations from a program and a specification. The semantic foundations of VCGens lie in program logics, such as Hoare logic, Dynamic logic, or Separation logic, and related predicate transformers.</p><p>Dynamic logic is the basis of the KeY system, one of the foremost deductive verifiers, whose logic makes use of the notion of <em>update</em><span>, which is quite intricate to formalize. In this paper we derive systematically, based on a KeY-style dynamic logic, a correct-by-construction VCGen for a toy programming language. Our workflow covers the entire process, from the logic to the VCGen. It is implemented in the Why3 tool, which is itself a program verifier. We prove the soundness and (an appropriate notion of) completeness of the logic, then define a VCGen for our language and establish its soundness.</span></p><p>Dynamic logic is one of a variety of research topics that our dear friend and colleague Luís Soares Barbosa has, over the years, initiated and promoted at the University of Minho. It is a pleasure for us to dedicate this work to him on the occasion of his 60th birthday.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"133 ","pages":"Article 100871"},"PeriodicalIF":0.9,"publicationDate":"2023-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"50203168","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
Decomposing monolithic processes in a process algebra with multi-actions 将单块过程分解为具有多动作的过程代数
IF 0.9 4区 数学
Journal of Logical and Algebraic Methods in Programming Pub Date : 2023-04-01 DOI: 10.1016/j.jlamp.2023.100858
Maurice Laveaux , Tim A.C. Willemse
{"title":"Decomposing monolithic processes in a process algebra with multi-actions","authors":"Maurice Laveaux ,&nbsp;Tim A.C. Willemse","doi":"10.1016/j.jlamp.2023.100858","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100858","url":null,"abstract":"<div><p>A monolithic process is a single recursive equation with data parameters, which only uses non-determinism, action prefixing, and recursion. We present a technique that decomposes such a monolithic process into multiple processes where each process defines behaviour for a subset of the parameters of the monolithic process. For this decomposition we can show that a composition of these processes is strongly bisimilar to the monolithic process under a suitable synchronisation context. Minimising the resulting processes before determining their composition can be used to derive a state space that is smaller than the one obtained by a monolithic exploration. We apply the decomposition technique to several specifications to show that this works in practice. Finally, we prove that state invariants can be used to further improve the effectiveness of this decomposition technique.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"132 ","pages":"Article 100858"},"PeriodicalIF":0.9,"publicationDate":"2023-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49864102","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
Safety enforcement via programmable strategies in Maude Maude通过可编程策略实施安全措施
IF 0.9 4区 数学
Journal of Logical and Algebraic Methods in Programming Pub Date : 2023-04-01 DOI: 10.1016/j.jlamp.2023.100849
M. Alpuente , D. Ballis , S. Escobar , D. Galán , J. Sapiña
{"title":"Safety enforcement via programmable strategies in Maude","authors":"M. Alpuente ,&nbsp;D. Ballis ,&nbsp;S. Escobar ,&nbsp;D. Galán ,&nbsp;J. Sapiña","doi":"10.1016/j.jlamp.2023.100849","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100849","url":null,"abstract":"<div><p>This work aims to provide a general mechanism for safety enforcement in rewriting logic computations. Our technique relies on an assertion-guided model transformation that leverages the newly defined Maude strategy language for ensuring rich safety policies in non-deterministic programs. The transformed system is guaranteed to comply with user-defined invariants that are expressed in a strategy-based, pattern-matching logic, thus preventing the concurrent system to reach any unsafe states. The performance and scalability of the technique is empirically evaluated and benchmarked on a set of realistic programs.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"132 ","pages":"Article 100849"},"PeriodicalIF":0.9,"publicationDate":"2023-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49864072","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
Program equivalence in an untyped, call-by-value functional language with uncurried functions 无类型、按值调用的函数式语言中具有无柯里化函数的程序等价性
IF 0.9 4区 数学
Journal of Logical and Algebraic Methods in Programming Pub Date : 2023-04-01 DOI: 10.1016/j.jlamp.2023.100857
Dániel Horpácsi , Péter Bereczky , Simon Thompson
{"title":"Program equivalence in an untyped, call-by-value functional language with uncurried functions","authors":"Dániel Horpácsi ,&nbsp;Péter Bereczky ,&nbsp;Simon Thompson","doi":"10.1016/j.jlamp.2023.100857","DOIUrl":"https://doi.org/10.1016/j.jlamp.2023.100857","url":null,"abstract":"<div><p>We aim to reason about the correctness of behaviour-preserving transformations of Erlang programs. Behaviour preservation is characterised by semantic equivalence. Based upon our existing formal semantics for Core Erlang, we investigate potential definitions of suitable equivalence relations. In particular we adapt a number of existing approaches of expression equivalence to a simple functional programming language that carries the main features of sequential Core Erlang; we then examine the properties of the equivalence relations and formally establish connections between them. The results presented in this paper, including all theorems and their proofs, have been machine checked using the Coq proof assistant.</p></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"132 ","pages":"Article 100857"},"PeriodicalIF":0.9,"publicationDate":"2023-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"49864101","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
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信