首页 > 最新文献

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

英文 中文
Journal of logical and algebraic methods in programming – Publisher's Note 2025 程序设计中的逻辑和代数方法杂志-出版商注释2025
IF 0.7 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2025-03-06 DOI: 10.1016/j.jlamp.2025.101058
{"title":"Journal of logical and algebraic methods in programming – Publisher's Note 2025","authors":"","doi":"10.1016/j.jlamp.2025.101058","DOIUrl":"10.1016/j.jlamp.2025.101058","url":null,"abstract":"","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"145 ","pages":"Article 101058"},"PeriodicalIF":0.7,"publicationDate":"2025-03-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143563066","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"数学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Editorial message from the new Editor-in-Chief 新主编的社论
IF 0.7 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2025-03-04 DOI: 10.1016/j.jlamp.2025.101057
Alberto Lluch Lafuente
{"title":"Editorial message from the new Editor-in-Chief","authors":"Alberto Lluch Lafuente","doi":"10.1016/j.jlamp.2025.101057","DOIUrl":"10.1016/j.jlamp.2025.101057","url":null,"abstract":"","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"145 ","pages":"Article 101057"},"PeriodicalIF":0.7,"publicationDate":"2025-03-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143552276","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
An algebraic theory of nondeterministic finite automata 不确定有限自动机的代数理论
IF 0.7 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2025-02-24 DOI: 10.1016/j.jlamp.2025.101055
Roberto Gorrieri
A process algebra is proposed, whose semantics maps a term to a nondeterministic finite automaton (NFA, for short). We prove a representability theorem: for each NFA N, there exists a process algebraic term p such that its semantics is an NFA isomorphic to N. Moreover, we provide a concise axiomatization of language equivalence: two NFAs N1 and N2 recognize the same language if and only if the associated terms p1 and p2, respectively, can be equated by means of a set of axioms, comprising 7 axioms plus 3 conditional axioms, only.
提出了一个过程代数,它的语义将一个项映射到一个不确定性有限自动机(简称NFA)。我们证明了一个可表征性定理:对于每个NFA N,存在一个过程代数项p,使得它的语义与N同构。此外,我们提供了一个简洁的语言等价公理:两个NFA N1和N2承认同一语言,当且仅当相关项p1和p2分别可以通过一组公理(包括7个公理和3个条件公理)来等价。
{"title":"An algebraic theory of nondeterministic finite automata","authors":"Roberto Gorrieri","doi":"10.1016/j.jlamp.2025.101055","DOIUrl":"10.1016/j.jlamp.2025.101055","url":null,"abstract":"<div><div>A process algebra is proposed, whose semantics maps a term to a nondeterministic finite automaton (NFA, for short). We prove a representability theorem: for each NFA <em>N</em>, there exists a process algebraic term <em>p</em> such that its semantics is an NFA isomorphic to <em>N</em>. Moreover, we provide a concise axiomatization of language equivalence: two NFAs <span><math><msub><mrow><mi>N</mi></mrow><mrow><mn>1</mn></mrow></msub></math></span> and <span><math><msub><mrow><mi>N</mi></mrow><mrow><mn>2</mn></mrow></msub></math></span> recognize the same language if and only if the associated terms <span><math><msub><mrow><mi>p</mi></mrow><mrow><mn>1</mn></mrow></msub></math></span> and <span><math><msub><mrow><mi>p</mi></mrow><mrow><mn>2</mn></mrow></msub></math></span>, respectively, can be equated by means of a set of axioms, comprising 7 axioms plus 3 conditional axioms, only.</div></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"145 ","pages":"Article 101055"},"PeriodicalIF":0.7,"publicationDate":"2025-02-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143479174","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
Transforming imperative programs into bisimilar logically constrained term rewrite systems via injective functions from configurations to terms 通过从组态到项的内射函数,将命令式程序转化为双相似的逻辑约束项重写系统
IF 0.7 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2025-02-24 DOI: 10.1016/j.jlamp.2025.101056
Naoki Nishida, Misaki Kojima , Takumi Kato
To transform an imperative program into a logically constrained term rewrite system (LCTRS, for short), previous work transforms a list of statements into rewrite rules in a stepwise manner, and proves the correctness along the transformation and the big-step semantics of the program. On the other hand, the small-step semantics of a programming language consists of inference rules that define single transitions of configurations. Partial instances of such inference rules are almost the same as rewrite rules in the transformed LCTRS. In this paper, we aim at establishing a framework for simpler definitions and correctness proofs of transformations from programs into LCTRSs. To this end, for the transformation in previous work as an example, we show the existence of an injective function from configurations of a given program to terms, and reformulate the transformation by means of the injective function. The injective function enables us to make a one-to-one correspondence between single small-step transitions and reduction steps, and provides bisimilarity between the program and transformed LCTRS, resulting in a simpler correctness proof.
为了将一个指令式程序转换为逻辑约束的术语重写系统(简称LCTRS),之前的工作将语句列表逐步转换为重写规则,并沿着转换和程序的大步语义证明了其正确性。另一方面,编程语言的小步骤语义由定义单个配置转换的推理规则组成。这种推理规则的部分实例与转换后的LCTRS中的重写规则几乎相同。在本文中,我们旨在建立一个框架,用于从程序到lctrs的转换的更简单的定义和正确性证明。为此,我们以前面工作中的变换为例,证明了给定程序的组形到项的单射函数的存在性,并利用单射函数对变换进行了重新表述。单射函数使我们能够在单个小步转换和约简步骤之间建立一对一的对应关系,并提供了程序与变换后的LCTRS之间的双相似性,从而简化了正确性证明。
{"title":"Transforming imperative programs into bisimilar logically constrained term rewrite systems via injective functions from configurations to terms","authors":"Naoki Nishida,&nbsp;Misaki Kojima ,&nbsp;Takumi Kato","doi":"10.1016/j.jlamp.2025.101056","DOIUrl":"10.1016/j.jlamp.2025.101056","url":null,"abstract":"<div><div>To transform an imperative program into a logically constrained term rewrite system (LCTRS, for short), previous work transforms a list of statements into rewrite rules in a stepwise manner, and proves the correctness along the transformation and the big-step semantics of the program. On the other hand, the small-step semantics of a programming language consists of inference rules that define single transitions of configurations. Partial instances of such inference rules are almost the same as rewrite rules in the transformed LCTRS. In this paper, we aim at establishing a framework for simpler definitions and correctness proofs of transformations from programs into LCTRSs. To this end, for the transformation in previous work as an example, we show the existence of an injective function from configurations of a given program to terms, and reformulate the transformation by means of the injective function. The injective function enables us to make a one-to-one correspondence between single small-step transitions and reduction steps, and provides bisimilarity between the program and transformed LCTRS, resulting in a simpler correctness proof.</div></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"145 ","pages":"Article 101056"},"PeriodicalIF":0.7,"publicationDate":"2025-02-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143509467","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 rewriting logic semantics for the analysis of P programs 用于P程序分析的重写逻辑语义
IF 0.7 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2025-02-15 DOI: 10.1016/j.jlamp.2025.101048
Francisco Durán , Carlos Ramírez , Camilo Rocha , Nicolás Pozas
P is a domain-specific language designed for specifying asynchronous, event-driven systems. Its computational model is based on actors, i.e., on communicating state machines. This paper presents a formal semantics of P using rewriting logic, extending the language's verification capabilities. Implemented in Maude, a rewriting logic language, this semantics enables automated analysis of P programs, including reachability analysis, LTL model checking, and statistical model checking. Through illustrative examples, this paper demonstrates how this formalization significantly enhances P's verification capacities in practical scenarios.
P是一种特定于领域的语言,用于指定异步的、事件驱动的系统。它的计算模型基于参与者,即基于通信状态机。本文利用重写逻辑给出了P的形式化语义,扩展了P语言的验证能力。该语义在Maude(一种重写逻辑语言)中实现,支持对P程序进行自动分析,包括可达性分析、LTL模型检查和统计模型检查。通过举例说明,本文演示了这种形式化如何在实际场景中显著提高P的验证能力。
{"title":"A rewriting logic semantics for the analysis of P programs","authors":"Francisco Durán ,&nbsp;Carlos Ramírez ,&nbsp;Camilo Rocha ,&nbsp;Nicolás Pozas","doi":"10.1016/j.jlamp.2025.101048","DOIUrl":"10.1016/j.jlamp.2025.101048","url":null,"abstract":"<div><div><span><math><mtext>P</mtext></math></span> is a domain-specific language designed for specifying asynchronous, event-driven systems. Its computational model is based on actors, i.e., on communicating state machines. This paper presents a formal semantics of <span><math><mtext>P</mtext></math></span> using rewriting logic, extending the language's verification capabilities. Implemented in Maude, a rewriting logic language, this semantics enables automated analysis of <span><math><mtext>P</mtext></math></span> programs, including reachability analysis, LTL model checking, and statistical model checking. Through illustrative examples, this paper demonstrates how this formalization significantly enhances <span><math><mtext>P</mtext></math></span>'s verification capacities in practical scenarios.</div></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"144 ","pages":"Article 101048"},"PeriodicalIF":0.7,"publicationDate":"2025-02-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143438019","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
Efficient iterative programs with distributed data collections 具有分布式数据集合的高效迭代程序
IF 0.7 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2025-02-12 DOI: 10.1016/j.jlamp.2025.101047
Sarah Chlyah, Nils Gesbert, Pierre Genevès, Nabil Layaïda
Big data programming frameworks have become increasingly important for the development of applications for which performance and scalability are critical. In those complex frameworks, optimizing code by hand is hard and time-consuming, making automated optimization particularly necessary. In order to automate optimization, a prerequisite is to find suitable abstractions to represent programs; for instance, algebras based on monads or monoids to represent distributed data collections. Currently, however, such algebras do not represent recursive programs in a way which allows for analyzing or rewriting them. In this paper, we extend a monoid algebra with a fixpoint operator for representing recursion as a first class citizen and show how it enables new optimizations. Experiments with the Spark platform illustrate performance gains brought by these systematic optimizations.
大数据编程框架对于性能和可伸缩性至关重要的应用程序的开发变得越来越重要。在这些复杂的框架中,手动优化代码既困难又耗时,因此自动化优化尤为必要。为了自动化优化,一个先决条件是找到合适的抽象来表示程序;例如,基于单子或单子的代数来表示分布式数据集合。然而,目前,这样的代数不能以一种允许分析或重写它们的方式来表示递归程序。在本文中,我们用一个不动点算子扩展了一元代数,将递归表示为一类公民,并展示了它如何实现新的优化。在Spark平台上的实验证明了这些系统优化带来的性能提升。
{"title":"Efficient iterative programs with distributed data collections","authors":"Sarah Chlyah,&nbsp;Nils Gesbert,&nbsp;Pierre Genevès,&nbsp;Nabil Layaïda","doi":"10.1016/j.jlamp.2025.101047","DOIUrl":"10.1016/j.jlamp.2025.101047","url":null,"abstract":"<div><div>Big data programming frameworks have become increasingly important for the development of applications for which performance and scalability are critical. In those complex frameworks, optimizing code by hand is hard and time-consuming, making automated optimization particularly necessary. In order to automate optimization, a prerequisite is to find suitable abstractions to represent programs; for instance, algebras based on monads or monoids to represent distributed data collections. Currently, however, such algebras do not represent recursive programs in a way which allows for analyzing or rewriting them. In this paper, we extend a monoid algebra with a fixpoint operator for representing recursion as a first class citizen and show how it enables new optimizations. Experiments with the Spark platform illustrate performance gains brought by these systematic optimizations.</div></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"144 ","pages":"Article 101047"},"PeriodicalIF":0.7,"publicationDate":"2025-02-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143445375","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
Transforming concurrent programs with semaphores into logically constrained term rewrite systems 将带有信号量的并发程序转换为逻辑约束的术语重写系统
IF 0.7 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2025-02-01 DOI: 10.1016/j.jlamp.2024.101033
Misaki Kojima , Naoki Nishida, Yutaka Matsubara
In this paper, as a first step of modeling concurrent programs by logically constrained term rewrite systems (LCTRSs, for short), we show transformations of concurrent programs with semaphore-based exclusive control into LCTRSs. To this end, we show how to encode configurations of concurrent programs with a fixed number of processes. Then, we show how to encode some well-known operations for semaphores by rewrite rules, showing two transformations of concurrent programs with semaphores into LCTRSs. We adopt list-using and list-free approaches to the encoding of waiting queues for semaphores in LCTRSs. While the former straightforwardly uses lists, the latter uses a so-called take-a-number system in order to avoid using any recursive data structures for waiting queues.
在本文中,作为通过逻辑约束项重写系统(简称lctrs)对并发程序建模的第一步,我们展示了将具有基于信号量的独占控制的并发程序转换为lctrs。为此,我们将展示如何对具有固定数量进程的并发程序的配置进行编码。然后,我们展示了如何通过重写规则对一些众所周知的信号量操作进行编码,并展示了将带有信号量的并发程序转换为lctrs的两种方法。我们采用了使用列表和不使用列表的方法来编码lctrs中信号量的等待队列。前者直接使用列表,而后者使用所谓的take-a-number系统,以避免在等待队列中使用任何递归数据结构。
{"title":"Transforming concurrent programs with semaphores into logically constrained term rewrite systems","authors":"Misaki Kojima ,&nbsp;Naoki Nishida,&nbsp;Yutaka Matsubara","doi":"10.1016/j.jlamp.2024.101033","DOIUrl":"10.1016/j.jlamp.2024.101033","url":null,"abstract":"<div><div>In this paper, as a first step of modeling concurrent programs by logically constrained term rewrite systems (LCTRSs, for short), we show transformations of concurrent programs with semaphore-based exclusive control into LCTRSs. To this end, we show how to encode configurations of concurrent programs with a fixed number of processes. Then, we show how to encode some well-known operations for semaphores by rewrite rules, showing two transformations of concurrent programs with semaphores into LCTRSs. We adopt list-using and list-free approaches to the encoding of waiting queues for semaphores in LCTRSs. While the former straightforwardly uses lists, the latter uses a so-called take-a-number system in order to avoid using any recursive data structures for waiting queues.</div></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"143 ","pages":"Article 101033"},"PeriodicalIF":0.7,"publicationDate":"2025-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143170706","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
Formalization and analysis of the post-quantum signature scheme FALCON with Maude 基于Maude的后量子签名方案FALCON的形式化分析
IF 0.7 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2025-02-01 DOI: 10.1016/j.jlamp.2024.101034
Víctor García , Santiago Escobar , Kazuhiro Ogata
Digital signatures ensure the authenticity and integrity of digital assets, vital properties for any secure communication. The National Institute of Standards and Technologies launched the Post-Quantum Cryptography project to standardise new algorithms and protocols that are secure against quantum attackers. The post-quantum signature scheme FALCON was one of the finalists. We present a continuation of the first steps towards the formal specification and analysis, in the high-performance language Maude, of signature schemes. We have adapted and improved a previous framework, originally aimed to formally specify and analyse post-quantum key encapsulation mechanisms. As a use case of the new framework, we specify an executable symbolic model of FALCON. On the symbolic model, we verify termination and fairness using LTL formulas with Maude's model checker. Furthermore, authentication, integrity and non-repudiation are analysed through invariant analysis. Integrity and non-repudiation hold, meanwhile, authentication does not hold in our symbolic model.
数字签名确保数字资产的真实性和完整性,这是任何安全通信的重要属性。美国国家标准与技术研究所启动了后量子密码学项目,以标准化新的算法和协议,以防止量子攻击者。后量子签名方案FALCON是决赛选手之一。我们在高性能语言Maude中对签名方案进行了正式规范和分析,这是第一步的延续。我们已经调整和改进了以前的框架,最初旨在正式指定和分析后量子密钥封装机制。作为新框架的一个用例,我们指定了一个可执行的FALCON符号模型。在符号模型上,我们使用LTL公式和Maude模型检查器来验证终止性和公平性。通过不变性分析,对认证、完整性和不可抵赖性进行了分析。完整性和不可否认性在我们的符号模型中是成立的,而认证在我们的符号模型中是不成立的。
{"title":"Formalization and analysis of the post-quantum signature scheme FALCON with Maude","authors":"Víctor García ,&nbsp;Santiago Escobar ,&nbsp;Kazuhiro Ogata","doi":"10.1016/j.jlamp.2024.101034","DOIUrl":"10.1016/j.jlamp.2024.101034","url":null,"abstract":"<div><div>Digital signatures ensure the authenticity and integrity of digital assets, vital properties for any secure communication. The National Institute of Standards and Technologies launched the Post-Quantum Cryptography project to standardise new algorithms and protocols that are secure against quantum attackers. The post-quantum signature scheme FALCON was one of the finalists. We present a continuation of the first steps towards the formal specification and analysis, in the high-performance language Maude, of signature schemes. We have adapted and improved a previous framework, originally aimed to formally specify and analyse post-quantum key encapsulation mechanisms. As a use case of the new framework, we specify an executable symbolic model of FALCON. On the symbolic model, we verify termination and fairness using LTL formulas with Maude's model checker. Furthermore, authentication, integrity and non-repudiation are analysed through invariant analysis. Integrity and non-repudiation hold, meanwhile, authentication does not hold in our symbolic model.</div></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"143 ","pages":"Article 101034"},"PeriodicalIF":0.7,"publicationDate":"2025-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143170707","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"数学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Towards a type-based abstract semantics for Python 为Python实现基于类型的抽象语义
IF 0.7 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2025-02-01 DOI: 10.1016/j.jlamp.2024.101032
Andrei Nacu
Python is a high-level programming language that is strongly, but dynamically typed. In this paper, we propose a type inference framework to compute specifications for Python functions in isolation. To achieve this, we aim to use an abstract-interpretation-based data flow analysis to infer variable types on a subset of Python programs that use built-in types, operators and functions. To evaluate the expressions found in every program point, specifications for the encountered operations and functions are required. We propose a method for extracting these specifications from the Typeshed project, which contains a set of annotations for built-in and popular third-party libraries. These specifications will be used then to extend the proposed type inference to large Python programs.
Python是一种强但动态类型的高级编程语言。在本文中,我们提出了一个类型推断框架,用于隔离地计算Python函数的规范。为了实现这一点,我们的目标是使用基于抽象解释的数据流分析来推断使用内置类型、操作符和函数的Python程序子集的变量类型。要计算在每个程序点中找到的表达式,需要对遇到的操作和函数进行说明。我们提出了一种从Typeshed项目中提取这些规范的方法,该项目包含一组用于内置和流行的第三方库的注释。然后将使用这些规范将所建议的类型推断扩展到大型Python程序。
{"title":"Towards a type-based abstract semantics for Python","authors":"Andrei Nacu","doi":"10.1016/j.jlamp.2024.101032","DOIUrl":"10.1016/j.jlamp.2024.101032","url":null,"abstract":"<div><div>Python is a high-level programming language that is strongly, but dynamically typed. In this paper, we propose a type inference framework to compute specifications for Python functions in isolation. To achieve this, we aim to use an abstract-interpretation-based data flow analysis to infer variable types on a subset of Python programs that use built-in types, operators and functions. To evaluate the expressions found in every program point, specifications for the encountered operations and functions are required. We propose a method for extracting these specifications from the Typeshed project, which contains a set of annotations for built-in and popular third-party libraries. These specifications will be used then to extend the proposed type inference to large Python programs.</div></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"143 ","pages":"Article 101032"},"PeriodicalIF":0.7,"publicationDate":"2025-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143170705","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"数学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Open compliance in multiparty sessions with partial typing 在带有部分类型的多方会话中开放遵从性
IF 0.7 4区 数学 Q3 COMPUTER SCIENCE, THEORY & METHODS Pub Date : 2025-01-31 DOI: 10.1016/j.jlamp.2025.101046
Franco Barbanera , Viviana Bono , Mariangiola Dezani-Ciancaglini
Multiparty sessions are a foundational model for distributed entities interacting through message passing. Communication is disciplined by global types: well-typed sessions are lock-free and their participants do follow the described protocols. A key issue is the composition of well-typed sessions, that we face via the participants-as-interfaces approach. We study session composition when a client session is connected to compliant server sessions, where compliance is naturally biased towards the client. We prove that a unique session can be constructed by transforming the interface participants of the client and the servers into gateways (that is, forwarders), if the sessions are well-typed and the compliance relation can be proved. The obtained session has a global type that can be derived from the global types of the composing sessions and the proof of compliance among the client and the servers. A novelty of our approach is that in the composition we only ensure Lock-freedom for the client session, disregarding this property for the server sessions, via a partial typing system. This choice strongly simplifies the construction of the gateways. We consider the present study as a further step toward a theory of Open MultiParty Session Types.
多方会话是分布式实体通过消息传递进行交互的基础模型。通信是由全局类型约束的:类型良好的会话是无锁的,它们的参与者遵循所描述的协议。一个关键问题是类型良好的会话的组合,这是我们通过参与者即接口方法所面临的问题。当客户端会话连接到兼容的服务器会话时,我们研究会话组成,其中遵从性自然偏向于客户端。我们证明,如果会话类型良好且遵从性关系可以证明,则可以通过将客户端和服务器的接口参与者转换为网关(即转发器)来构造唯一会话。获得的会话具有全局类型,该类型可以从组合会话的全局类型和客户端和服务器之间的遵从性证明中派生出来。我们方法的新颖之处在于,在组合中,我们只通过部分类型系统确保客户端会话的锁自由,而忽略服务器会话的锁自由属性。这种选择极大地简化了网关的构造。我们认为本研究是向开放多方会议类型理论迈出的又一步。
{"title":"Open compliance in multiparty sessions with partial typing","authors":"Franco Barbanera ,&nbsp;Viviana Bono ,&nbsp;Mariangiola Dezani-Ciancaglini","doi":"10.1016/j.jlamp.2025.101046","DOIUrl":"10.1016/j.jlamp.2025.101046","url":null,"abstract":"<div><div>Multiparty sessions are a foundational model for distributed entities interacting through message passing. Communication is disciplined by global types: well-typed sessions are lock-free and their participants do follow the described protocols. A key issue is the composition of well-typed sessions, that we face via the <em>participants-as-interfaces</em> approach. We study session composition when a client session is connected to compliant server sessions, where compliance is naturally biased towards the client. We prove that a unique session can be constructed by transforming the interface participants of the client and the servers into gateways (that is, forwarders), if the sessions are well-typed and the compliance relation can be proved. The obtained session has a global type that can be derived from the global types of the composing sessions and the proof of compliance among the client and the servers. A novelty of our approach is that in the composition we only ensure Lock-freedom for the client session, disregarding this property for the server sessions, via a partial typing system. This choice strongly simplifies the construction of the gateways. We consider the present study as a further step toward a theory of <em>Open</em> MultiParty Session Types.</div></div>","PeriodicalId":48797,"journal":{"name":"Journal of Logical and Algebraic Methods in Programming","volume":"144 ","pages":"Article 101046"},"PeriodicalIF":0.7,"publicationDate":"2025-01-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"143092824","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"数学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"OA","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学术文献互助群
群 号:604180095
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1