The Alma Project, or How First-Order Logic Can Help Us in Imperative Programming
Alma项目的目标是设计一种强类型约束程序设计语言,它结合了逻辑和命令式编程的优点。该项目的第一阶段是设计和实现Alma-0,这是一种小型程序设计语言,为命令式编程框架内的声明式编程提供支持。它是通过扩展Modula-2的一个子集,由逻辑编程范式启发的少量功能获得的。在本文中,我们将讨论的基本原理设计的Alma-0,由此产生的混合编程框架的好处,以及目前的工作中添加约束处理能力的语言。特别是,我们讨论的逻辑和习惯变量的作用,约束存储和程序之间的相互作用,以及需要列表。
1999-07-19 cs.LO cs.PL
Exploiting Parallelism in Coalgebraic Logic Programming
我们提出了一个并行实现的共代数逻辑编程(CoALP)的程序设计语言围棋。CoALP最初是为了反映逻辑程序设计的共代数语义而引入的,其共代数推导算法具有共递归性和并行性。在这里,我们讨论如何影响我们的并行实现的逻辑编程的共代数语义。
2013-12-19 cs.PL
Minimum Model Semantics for Extensional Higher-order Logic Programming with Negation
University of Athens(雅典大学);University of Szeged(塞格德大学)
可拓高阶逻辑程序设计是经典逻辑程序设计的推广。这种范式的一个重要特征是它保留了传统逻辑编程的所有众所周知的属性。在本文中,我们考虑在新的范式的背景下,否定的语义。利用非单调不动点理论的一些最新结果,我们证明了每一个带否定的高阶逻辑程序都有唯一的最小无穷值模型。通过这种方式,我们获得了第一个纯粹的模型论语义的否定在可拓高阶逻辑编程。使用我们的方法,我们解决了一个老的悖论,介绍了W。W. Wadge,以证明高阶逻辑编程的语义困难。
2014-05-15 cs.AI cs.LO cs.PL
Integrating Reasoning Systems for Trustworthy AI, Proceedings of the 4th Workshop on Logic and Practice of Programming (LPOP)
第4届编程逻辑与实践研讨会聚焦于可信人工智能的推理系统集成,将与第40届国际逻辑编程会议联合于2024年10月13日在美国达拉斯以混合形式举行,重点是集成不同编程模型与规则和约束。
2026-07-27 cs.AI cs.LO cs.PL
The Logic Programming Paradigm and Prolog
这是一个关于逻辑编程和Prolog的教程,适合于熟悉命令式编程的学生的程序设计语言课程。
2001-07-12 cs.AI cs.PL
Nominal Logic Programming
名义逻辑是一阶逻辑的扩展,它为抽象语法的形式化和推理提供了一个简单的基础,模一致的重命名的绑定名称(即α-等价)。本文研究基于名义逻辑的逻辑程序设计。我们描述了一些典型的名义逻辑程序,并发展了这类程序的模型论、证明论和操作语义。除了确保实现的正确行为的兴趣,这些结果提供了一个严格的基础技术分析和推理的名义逻辑程序,我们通过例子说明。
2007-08-20 cs.LO cs.PL
Constraint-Logic Object-Oriented Programming with Free Arrays
约束逻辑面向对象编程提供了面向对象编程和约束逻辑搜索之间的有用的共生关系。以集成方式使用逻辑变量、约束、非确定性搜索和面向对象编程的能力,有助于在面向对象应用程序中将与搜索相关的程序部分和其他业务逻辑相结合。通过这项工作,我们概念化数组类型的逻辑变量(“自由数组”),从而完成了一套类型的逻辑变量可以假设在约束逻辑面向对象编程。自由数组具有一些有趣的特性,比如长度不确定和对数组元素的访问不确定。
2020-08-31 cs.PL
A Linear Logic Programming Language for Concurrent Programming over Graph Structures
我们已经设计了一种新的逻辑程序设计语言称为LM(线性融合)编程基于图形的算法在声明式的方式。我们的语言是基于线性逻辑,一个表达逻辑系统,逻辑事实可以消费。因为LM集成了经典逻辑和线性逻辑,所以LM比其他逻辑程序设计语言更有表现力。LM程序自然是并发的,因为事实是由图数据结构的节点划分的。计算在节点级别执行,而通信发生在连接的节点之间。在本文中,我们提出了我们的语言的语法和操作语义,并说明其使用通过一些例子。
2014-05-14 cs.PL
Introduction to the 35th International Conference on Logic Programming Special Issue
Sabanci University(萨班哲大学);Università di Perugia(佩鲁贾大学);Universitat Politècnica de València(瓦伦西亚理工大学);NVIDIA Corporation(英伟达公司)
我们很自豪地介绍这期特刊《逻辑编程理论与实践》(TPLP),专门介绍第35届逻辑编程国际会议(ICLP)接受的定期论文。ICLP会议于1982年在马赛开始,此后成为介绍和讨论逻辑编程领域工作的主要场所。正在考虑接受TPLP。
2019-08-10 cs.AI cs.LO cs.PL
18th Workshop on Logic-based methods in Programming Environments (WLPE 2008)
本卷包含了在WLPE 2008上发表的论文:2008年12月12日在意大利乌迪内举行的第18届基于逻辑的编程环境方法研讨会。它是作为ICLP 2008的卫星研讨会举行的,ICLP 2008是第24届逻辑编程国际会议。
2009-03-26 cs.PL
Expert Systems with Logic#. A Novel Modeling Framework for Logic Programming in an Object-Oriented Context of C#
IU International University of Applied Sciences(IU国际应用科学大学)
我们提出了一种新的方法如何逻辑编程的专家系统可以直接声明在一个面向对象的语言。
2022-05-16 cs.AI cs.PL
Pre-proceedings of the 26th International Workshop on Functional and Logic Programming (WFLP 2018)
本卷是第26届函数和逻辑编程国际研讨会(WFLP 2018)的预录。它是由程序委员会选出的在研讨会上发表的论文组成的。经过研讨会的讨论,项目委员会将选择一些论文邀请第二轮评审和选择的正式程序。
2018-10-01 cs.LO cs.PL
Programming with High-Level Abstractions, Proceedings of the 3rd Workshop on Logic and Practice of Programming
本文集汇集第三届LPOP研讨会成果,围绕集合与逻辑规则等高级抽象,推动其进入通用编程实践。
2024-09-28 cs.PL
Proceedings of the 23rd Workshop on Logic-based methods in Programming Environments (WLPE 2013)
本卷包含在第23届基于逻辑的编程环境方法研讨会(WLPE 2013)上提交的论文,该研讨会于2013年8月24日和25日在土耳其伊斯坦布尔举行,作为第29届逻辑编程国际会议(ICLP 2013)的卫星活动。
2013-08-22 cs.PL
Proceedings 42nd International Conference on Logic Programming
介绍第42届国际逻辑编程会议论文集,涵盖理论基础等多领域主题,包含主轨道和最近发表研究轨道的论文,展示了逻辑编程研究成果。
2026-07-21 cs.LO cs.PL
LPOP: Challenges and Advances in Logic and Practice of Programming
Stony Brook University(石溪大学)
本文介绍了2018年7月18日在英国牛津举行的第一届逻辑与编程实践(LPOP)研讨会上提出的工作,该研讨会与2018年联邦逻辑会议(FLoC)一起举行。它的重点是挑战和进步的逻辑和编程实践。研讨会围绕一个挑战性问题组织,该问题指定了基于角色的访问控制(RBAC)中的问题,许多与会者提出了以他们选择的语言表达的命令式和声明式解决方案。
2020-08-15 cs.AI cs.LO cs.PL
Proceedings of the 2nd Workshop on Logic and Practice of Programming (LPOP)
本会议录包含第二届编程逻辑与实践(LPOP)研讨会上提出的工作的摘要和立场文件。该研讨会于2010年11月15日在美国芝加哥举行,与ACM SIGPLAN系统,编程,语言和应用会议:人类软件(SPLASH)2020一起举行。这个研讨会的目的是成为使用逻辑作为实用工具的计算机科学不同领域之间的桥梁。我们利用形式逻辑的共同语言在这些不同的领域之间交换思想。
2022-11-17 cs.AI cs.LO cs.PL
Proceedings of the 16th Workshop in Logic-based Methods in Programming Environments (WLPE2006)
本卷包含在WLPE'06上提交的论文:2006年8月16日在美国华盛顿州西雅图喜来登酒店举行的第16届编程环境中基于逻辑的方法研讨会。它是作为ICLP'06(第22届逻辑编程国际会议)的卫星研讨会组织的。
2007-01-24 cs.PL
The (Lazy) Functional Side of Logic Programming
将逻辑程序转换成功能程序的可能性一直是研究的课题。许多方法的共同点是,原始逻辑程序,为了被翻译,需要被良好地模态化,这导致了这样的共识,即这些程序可以被认为是逻辑程序的“功能部分”。因此,“复杂”逻辑变量、动态选择规则的可能性以及非良模程序的一般属性是逻辑程序的独有特征,这一点已被广泛接受。这并不完全正确,因为其中一些特性在惰性函数式语言中自然存在。我们通过定义一个适用于更广泛的逻辑程序的简单翻译,重新讨论了什么功能是逻辑编程范式所独有的老问题,并证明了目前的界限是不合理的限制。
2000-03-20 cs.LO cs.PL
An interactive semantics of logic programming
我们适用于逻辑编程的一些最近出现的想法,从该领域的减少为基础的通信系统,目的是提供证据的隐藏的相互作用和协调机制,规则的运作机制,这样的编程范式。语义框架,我们选择了我们的结果是瓦片逻辑,它的优点是允许一个统一的治疗目标和意见,并应用抽象的分类工具来证明结果。作为主要的贡献,我们提到的有限表示的抽象统一,和并发和协调的抽象语义逻辑编程的最常见的语义相一致。此外,拼块语义的组合性由标准结果保证,因为它减少了对与逻辑程序相关联的拼块系统享有拼块分解属性的检查。还讨论了处理约束系统的方法的扩展。
2001-07-17 cs.LO cs.PL
Finite-Choice Logic Programming
本文提出有限选择逻辑编程,用选择替代否定以支持多解,具备稳定模型语义的全部表达能力,并给出解空间探索算法及其实现 Dusa 语言,性能优于现有答案集求解器且扩展性更可预测。
2024-11-21 cs.LO cs.PL
Extensional Higher-Order Logic Programming
University of Athens(雅典大学);University of Victoria(维多利亚大学)
我们提出了一个纯粹的扩展语义高阶逻辑编程。在这个语义中,程序谓词表示有序元组的集合,两个谓词相等当且仅当它们作为集合相等。此外,每个程序都有唯一的最小Herbrand模型,它是程序所有Herbrand模型的最大下界,也是直接结果算子的最小不动点。我们还提出了一个SLD分辨率证明程序,这是证明的声音和完整的最小模型语义。换句话说,我们提供了一个纯粹的扩展的理论框架,高阶逻辑编程的经典(一阶)逻辑编程的熟悉的理论。
2011-06-17 cs.AI cs.LO cs.PL
Proceedings of the 17th Workshop on Logic-based methods in Programming Environments (WLPE 2007)
本卷包含2007年9月13日在葡萄牙波尔图举行的WLPE 2007:第17届编程环境中基于逻辑的方法研讨会上发表的论文。它是作为ICLP 2007的卫星研讨会举行的,ICLP 2007是第23届逻辑编程国际会议。
2007-12-19 cs.PL cs.SE
A Fuzzy Logic Programming Environment for Managing Similarity and Truth Degrees
FASIL(“Fuzzy Aggregators and Similarity Into a Logic Language”的缩写)是一种模糊逻辑程序设计语言,具有隐式/显式真度注释、大量的连接词和相似性统一。FASIL集成并扩展了MALP(Multi-Adjoint Logic Programming,一种带有显式注释规则的模糊逻辑语言)和Bousi~Prolog(使用弱统一算法,非常适合灵活的查询应答)的功能。因此,它在一个框架中适当地管理相似性和真度,结合了两种语言的表达优势。本文介绍了FASILL的主要功能和实现细节。沿着该文件,我们描述了它的语法和操作语义,我们给出了线索的实施格模块和相似性模块,两个主要的构建块的新的编程环境,丰富了FLOPER系统在我们的研究小组开发。
2015-01-09 cs.LO cs.PL
Temporal Phylogenetic Networks and Logic Programming
时间系统发生网络的概念是一个自然语言家族进化的数学模型。它考虑到这样一个事实,即当语言社区接触时,语言可以相互交换它们的特征,而且只有当语言同时被使用时,接触才是可能的。我们展示了如何计算方法的答案集编程和约束逻辑编程可以用来生成似是而非的approachetures史前语言社区之间的接触,并说明我们的方法,将其应用到印欧语言的进化史。出现在逻辑编程理论与实践(TPLP)中。
2005-08-30 cs.AI cs.LO cs.PL
Reducing Fuzzy Answer Set Programming to Model Finding in Fuzzy Logics
近年来,回答集编程已经扩展到处理多值谓词。由此产生的形式主义允许建模的连续问题,优雅的ASP允许离散问题的建模,通过结合ASP与模糊逻辑的稳定模型语义。然而,与经典ASP的情况下,许多有效的求解器已被构造,迄今为止,没有有效的模糊答案集编程求解器。经典ASP的一种公知技术包括将ASP程序$P$转换为命题理论,该命题理论的模型精确地对应于$P$的答案集。在本文中,我们将展示如何将这一想法扩展到模糊ASP,铺平了道路,实现高效的模糊ASP求解器,可以利用现有的模糊逻辑推理。出现在逻辑编程理论与实践(TPLP)中。
2011-04-27 cs.LO cs.PL
Pre-Proceedings of the 28th International Workshop on Functional and Logic Programming (WFLP 2020)
本卷是由意大利博洛尼亚大学组织的第28届函数和逻辑编程国际研讨会(WFLP 2020)的预录,作为2020年程序设计语言博洛尼亚联合会议的一部分。函数和(约束)逻辑编程国际研讨会(WFLP)旨在汇集对函数编程,逻辑编程及其集成感兴趣的研究人员,学生和从业者。WFLP是一个活跃而友好的论坛,它是开放的,可以展示和讨论正在进行的工作,技术贡献,经验报告,实验,评论和系统描述。
2020-09-04 cs.PL
Logic Programming with Extensible Types
Universidad Politecnica de Madrid(马德里理工大学)
本文提出了一种在类型化函数式编程语言中通过可扩展类型、合一算法和领域特定语言实现逻辑编程的方法,展示了其可行性和实用性。
2026-01-07 cs.LO cs.PL
Logic Programming with Satisfiability
本文提出了一个Prolog接口的MiniSat可满足性求解器。具有可满足性的逻辑程序- ming结合了两种范式的优势:一方面将搜索问题编码为可满足性的逻辑编程,另一方面有效地求解SAT。这两者之间的协同作用暴露了一个编程范式,我们在这里提出的逻辑编程珍珠。为了说明逻辑编程与SAT解决我们给出了一个例子Prolog程序解决部分MAXSAT的实例。
2007-02-13 cs.AI cs.PL
Logic programming in the context of multiparadigm programming: the Oz experience
Oz是一种多范式语言,支持逻辑编程作为其主要范式之一。多范式语言被设计为支持不同的编程范式(逻辑、函数、约束、面向对象、顺序、并发等)。同样轻松。本文有两个目标:在Oz中给出逻辑编程的教程,并展示逻辑编程如何自然地融入多范式编程的更广泛背景。我们的经验表明,有两类问题,我们称之为算法和搜索问题,逻辑编程可以帮助制定实际的解决方案。数学问题有已知的有效算法。搜索问题没有已知的有效算法,但可以用搜索来解决。Oz对逻辑编程的支持专门针对这两个问题类,使用每个问题类所需的概念。这与Prolog方法相反,Prolog方法用一组概念来针对两个类,这导致对每个类的支持不是最佳的。为了解释算法程序和搜索程序之间的本质区别,我们定义了Oz执行模型。这个模型包含了并发逻辑编程(committed-choice-style)和基于搜索的逻辑编程(Prolog-style)。与Horn子句语法不同,Oz有一个简单的、完全组合的、高阶的语法,它适应了语言的能力。最后,我们总结了从这项工作中吸取的教训,奥兹国的简史,以及奥兹国文学的许多切入点。
2002-08-20 cs.PL
Logic Programming with Macro Connectives
像Prolog这样的逻辑编程通常是顺序的,而且速度很慢,因为每个执行步骤只处理一个$micro$连接符。为了解决这个问题,我们建议使用$macro$连接词作为提高可读性和性能的手段。
2018-05-07 cs.PL
Knowledge of Uncertain Worlds: Programming with Logical Constraints
Stony Brook University(石溪大学)
复杂应用程序的逻辑编程必须处理递归和否定,这两者一起在逻辑中产生了重大挑战,导致许多不同的,相互冲突的规则语义。本文描述了一种统一的语言,DA逻辑,设计和分析逻辑,统一的基础语义和约束语义的基础上,支持的权力和不同的意图语义编程的易用性。其关键思想是提供元约束,支持使用不确定信息的形式,无论是未定义的值或可能的组合值或两者兼而有之,并促进使用的知识单元,可以实例化的任何新的谓词,包括谓词与额外的参数。
2020-12-11 cs.AI cs.LO cs.PL
Reference Type Logic Variables in Constraint-logic Object-oriented Programming
约束逻辑面向对象的编程,例如使用Muli,促进了商业软件的集成开发,偶尔涉及找到约束逻辑问题的解决方案。面向对象特性的可用性要求将对象也用作逻辑变量,而不是仅限于基本类型的逻辑变量。目前的工作贡献了一个概念,引用类型的逻辑变量的约束逻辑面向对象的编程,考虑到任意类层次结构的程序编写的面向对象的语言。这个概念讨论了约束逻辑面向对象程序和引用类型逻辑变量之间的交互,特别是对逻辑变量的调用和访问,类型操作和等式。此外,它还提出了相应的执行环境如何处理这些交互的方法。
2019-03-01 cs.PL
Choice Disjunctive Queries in Logic Programming
逻辑程序设计中一个长期存在的研究问题是如何以逻辑的、高层次的方式处理割谓词。我们认为,这个问题可以通过采用线性逻辑和选择析取目标公式的形式$G_0 \add G_1$其中$G_0, G_1$的目标。这些目标具有以下预期语义:$choose$是真正的析取$G_i$并执行$G_i$,其中$i (= 0\ {\rm or}\ 1)$,而$discarding$是未选择的析取。请注意,在执行过程中只有一个目标可以保持活动。因此,这些目标使我们能够以高层次的方式指定相互排斥的任务。
2022-10-11 cs.LO cs.PL
Introduction to the 28th International Conference on Logic Programming Special Issue
Univ. di Udine(乌迪内大学);CRACS(高级计算研究中心);INESC-TEC(葡萄牙系统与计算机工程研究所-技术与科学);Univ. do Porto(波尔图大学)
我们很自豪地介绍这期《逻辑编程理论与实践杂志》(TPLP)的特刊,致力于第28届逻辑编程国际会议(ICLP)的论文全文。ICLP会议于1982年在马赛开始,此后成为介绍和讨论逻辑编程领域工作的主要场所。
2012-10-15 cs.AI cs.PL
Logic Programming Semantics for Causal Processes
German University Of Digital Science Potsdam(德国波茨坦数字科学大学)
研究逻辑程序设计语义与因果过程最终状态的关系,指出正逻辑程序稳定模型对应特定过程最终状态,支持模型描述任意起点可达状态,为逻辑程序设计语义讨论提供新视角及时间维度。
2026-07-24 cs.AI cs.LO cs.PL
Proceedings 39th International Conference on Logic Programming
Imperial College London(伦敦帝国学院)
本卷为ICLP 2023会议的技术通讯集,涵盖主轨道、博士联盟、应用与系统/演示、近期发表研究、兴趣小组及逻辑程序设计与机器学习、可解释性、伦理和可信赖性等主题轨道。
2023-08-28 cs.AI cs.LO cs.PL
Bounded Choice Queries for Logic Programming
在逻辑编程中,向目标和查询添加通用交互是一项重要任务。不幸的是,现有的逻辑语言只能通过$read$结构从用户处获取输入。我们建议添加一个新的交互式目标,以允许更多的控制和更多的指导用户的参与。我们说明我们的想法通过\muprolog,扩展的Prolog有界选择目标。
2013-08-03 cs.PL
Papers presented at the 32nd International Conference on Logic Programming (ICLP 2016)
这是在2016年10月18日至21日在美国纽约举行的第32届逻辑编程国际会议上接受的论文全文列表。除了主要会议本身,ICLP还主办了四个会前研讨会,秋季逻辑编程学校和博士生联盟。全文的最终版本将发表在《逻辑编程理论与实践》(Theory and Practice of Logic Programming,TPLP)杂志的特刊上。我们收到了88份摘要提交,其中27篇论文被接受作为TPLP快速通信出版。被认为足够高质量的论文将在会议上发表,但不足以出现在TPLP中,将作为OASICS系列的技术通讯出版。15篇论文属于这一类。
2016-08-18 cs.LO cs.PL
Functional Logic Programming with Generalized Circular Coinduction
我们提出了一种方法,以适应功能逻辑编程处理推理coinductively解释的程序,以及归纳解释的程序。为了做到这一点,我们考虑一类有趣的对象,这种共归纳的解释,即正规条款。我们展示了如何通常的数据结构可以适应捕捉这些对象。我们采用Curry的操作语义来解释程序。我们用几个例子来说明这种方法,这些例子显示了我们的方法的工作原理和几种情况下,它可能是有用的。最后,我们建议如何声明性语义可以适当地适应。
2012-03-05 cs.LO cs.PL
A Three-Valued Semantics for Typed Logic Programming
逻辑编程中的类型一方面关注常规类型对程序语义的保守近似,另一方面关注基于为类型化程序定义的规定语义的类型系统。在本文中,我们定义了一个新的语义逻辑编程,程序评估为真,假,并称为错误的一个新的语义值,对应于一个运行时类型错误。这样我们就有了一种具有分离的类型语义的类型语言。最后,我们定义了一个类型系统的逻辑编程,并证明它是语义上的声音相对于程序和类型之间的语义关系,如果一个程序有一个类型,那么它的语义是没有错的。我们的工作遵循米尔纳的方法类型的函数语言的语义程序是独立的类型的语义,类型系统被证明是健全的两个语义之间的关系。
2019-09-18 cs.LO cs.PL
Benchmarking for Integrating Logic Rules with Everything Else
本文提出一组编程与性能基准,用于评估将逻辑规则与其它语言特性集成的语言,并报告了集成语言、逻辑语言及非逻辑规则语言的评估结果。
2023-08-30 cs.LO cs.PF cs.PL
From Logic to Functional Logic Programs
逻辑编程是一种灵活的编程范式,因为它使用了谓词而没有固定的数据流。为了用函数式编程的紧凑符号扩展逻辑语言,有各种各样的建议将可评估函数映射到谓词中,以便留在逻辑编程框架中。由于融合函数逻辑语言提供灵活,以及有效的评估策略,我们提出了一个相反的方法在本文中。通过将逻辑程序映射为函数式逻辑程序,并利用基于函数依赖关系推断的转换方法,提出了一种全自动转换方法,该方法既保持了逻辑程序设计的灵活性,又能将无限搜索空间缩减为有限搜索空间,从而提高了计算效率.
2022-05-13 cs.PL
Towards Distributed Logic Programming based on Computability Logic
DongA University(东亚大学)
{ \em Computability logic}(CoL)是一个强大的计算模型,它将计算问题视为机器及其环境之间的博弈。在本文中,我们表明,CoL自然支持分布式控制的多智能体编程模型。具体地说,我们讨论了一个基于CoL的分布式逻辑编程模型(确切地说是CL 1),我们称之为CL 1 ^Ω。该模型的主要特点是支持Agent的$dynamic/evolving$知识库。事实证明,这种模型是实现通用AI和未来计算模型的一种有前途的方法。
2022-08-07 cs.AI cs.PL
Logic programming beyond Prolog
逻辑程序是一种可执行的规范。例如,合并排序在纯Prolog中是一个逻辑公式,但在长链表上显示出值得信赖的性能。但这种可执行的规范是一种妥协:逻辑被算法考虑扭曲,但只能通过抽象机器间接执行。本文介绍了关系编程,一种通过关注点分离解决逻辑编程困难的方法。它需要三个文本:(1)公理,一个指定问题并且不受算法考虑影响的逻辑公式,(2)定理,一个表达算法思想并遵循公理的逻辑公式,以及(3)代码,将定理转录为过程语言。代码的正确性依赖于定理与公理的逻辑关系,并依赖于定理到过程语言的准确转录。排序是关系编程具有更高抽象度优势的一个例子:要排序的数据可以是C++(我们在示例中使用的过程语言)中满足线性顺序公理的任何数据类型,而纯Prolog版本仅限于链接单元格形式的数据结构。我们展示了关系程序的另一个优点:它们具有模型理论和不动点语义,它们彼此等价,并且类似于纯Prolog程序。
2015-09-26 cs.LO cs.PL
Mapping Fusion and Synchronized Hyperedge Replacement into Logic Programming
在本文中,我们比较了三种不同的形式主义,可用于该地区的模型,分布式,并发和移动系统。特别是,我们分析了进程演算,融合演算,图形变换中的同步超边替换与霍尔同步(HSHR)的方法和逻辑编程之间的关系。我们提出了一个翻译融合演算到HSHR(而融合演算使用米尔纳同步),并证明了融合演算和HSHR转换的减少语义之间的对应关系。我们还提出了一个映射从HSHR到一个事务版本的逻辑编程,并证明有一个完整的对应关系之间的两个形式主义。从融合演算到逻辑编程的映射是有趣的,因为它显示了两种形式主义之间的紧密类比,特别是在处理名称生成和移动性方面。根据HSHR的中间步骤是方便的,因为图转换允许多个远程同步,如Fusion Calculus语义所要求的。
2006-01-15 cs.LO cs.PL
Mapping Objects to Persistent Predicates
Prolog逻辑程序设计在许多需要存储知识的系统中被广泛用于提供持久性。用于供应持久性的Prolog编程语言的一些实现具有与其他程序设计语言的双向接口,总体上具有面向对象的编程语言。目前,缺少用于系统开发的工具和框架,这些工具和框架以简单和敏捷的形式使用逻辑谓词持久性。更具体地说,目前需要一个面向对象和逻辑持久性提供程序,允许在主存中操作对象,并且该对象的持久性具有逻辑编程谓词方面。目前的工作介绍了一个面向对象和逻辑持久性提供者的支持对象的序言声明性映射的替代。所提出的替代方案包括逻辑编程谓词与面向对象方法的对应关系,其中对于逻辑编程的每个元素,一个面向对象的元素使其相互作用。逻辑程序设计谓词的面向对象表示提供了对组成知识的元素进行操作的便利。
2017-05-01 cs.LO cs.PL cs.SE
Book review "The Haskell Road to Logic, Maths and Programming"
Doets和van Eijck的教科书系统地将Haskell程序设计语言用于呈现逻辑和数学的主要部分。读者是通过章节的基本逻辑,证明食谱,集和列表,关系和职能,递归和共递归,一些系统,多项式和幂级数,结束康托的无穷大。这本书使用Haskell在声明式编程的层次上为各种数学概念的可执行和强类型表现。本书采用了系统但轻松的数学风格(定义,例子,练习,.);文本是非常愉快的阅读,由于少量的轶事信息,并由于事实上,定义是流畅地集成在运行的文本。这本书的一个重要目标是让读者熟悉程序的推理。
2006-06-22 cs.LO cs.PL
Extending Coinductive Logic Programming with Co-Facts
我们引入了一个广义的逻辑编程范式,程序,由事实和规则与通常的语法,可以丰富的共同事实,语法上类似的事实,但有一个特殊的意义。在共归纳逻辑程序设计中,解释是完全Herbrand基的子集,包括无限项。然而,程序的意图(声明性语义)是一个固定点,它不一定是最小的,也不一定是最大的,而是由共同事实决定的。通过这种方式,可以在非良基结构上表达谓词,例如无限列表和图,对于这些结构,共归纳解释不够精确。此外,这种范式很好地包含了标准(归纳)和共归纳逻辑编程,因为两者都可以通过特定的共事实选择来表达,因此归纳谓词和共归纳谓词可以共存于同一个程序中。通过实例对该范式进行了说明,并给出了声明语义和操作语义,证明了操作语义的正确性。最后,我们描述了一个原型元解释器。
2017-09-14 cs.LO cs.PL
Parallel Logic Programming: A Sequel
Università di Udine(乌迪内大学);GNCS-INdAM(意大利国家高等数学研究院-国家科学计算小组);University of Texas at Dallas(德克萨斯大学达拉斯分校);IMDEA Software Institute(IMDEA 软件研究所);Universidad Politécnica de Madrid(马德里理工大学);New Mexico State University(新墨西哥州立大学);CRACS/INESC TEC(CRACS/INESC TEC 研究所);University of Porto(波尔图大学)
多核和高度连接的架构已经变得无处不在,这带来了新的兴趣,基于语言的方法来开发并行性。逻辑程序设计自诞生以来就被认为是一种具有巨大潜力的并行性自动开发的编程范式。2001年出版的对并行逻辑编程前二十年研究的全面调查,一直是研究人员和开发人员的基本参考。这些内容在今天是相当有效的,但与此同时,该领域在随后的几年中继续快速发展。这些成就和正在进行的研究中有许多是由技术创新的快速步伐推动的,这导致了诸如超大型集群、多核处理器的广泛普及、通用图形处理单元的游戏规则改变作用以及云计算的普遍采用等进步。这已经被逻辑编程中的重大进步所证实,例如制表、更强大的静态分析和验证、应答集编程的快速增长,以及一般来说,更成熟的实现和系统。本次调查提供了自2001年以来的并行逻辑编程研究的回顾,从而提供了前一次调查的自然延续。该调查的目标是不仅作为逻辑编程系统的研究人员和开发人员的参考,而且作为对逻辑感兴趣的任何人的引人入胜的阅读,并作为逻辑编程之外的并行系统研究人员的有用资源。逻辑程序设计理论与实践(TPLP)
2022-01-24 cs.AI cs.DC cs.LO
Relations, Constraints and Abstractions: Using the Tools of Logic Programming in the Security Industry
逻辑编程有时被描述为关系编程:程序员使用约束系统指定和组合n元关系的范式。高级逻辑编程环境将提供抽象这些关系的工具,以转换、优化甚至验证逻辑程序的正确性。本次演讲将表明,这些概念,即关系,约束和抽象,原来也是重要的反向工程过程中,支持安全行业内的错误发现。
2009-03-13 cs.PL
AppLP: A Dialogue on Applications of Logic Programming
Stony Brook University(石溪大学)
本文介绍了2016年逻辑编程应用研讨会(AppLP)的贡献,该研讨会于10月17日举行,与纽约市法拉盛的逻辑编程国际会议(ICLP)有关。
2017-04-07 cs.AI cs.LO cs.PL
Kanren Light: A Dynamically Semi-Certified Interactive Logic Programming System
我们提出了一个实验系统强烈的启发miniKanren,实现顶部的HOL~光定理证明器的战术机制。我们的工具是在同一时间的机制,使逻辑编程风格的推理和计算的定理证明,和一个框架,用于编写逻辑程序,产生的解决方案,赋予一个正式的证明的正确性。
2020-07-09 cs.PL
Proceedings of the 15th Workshop on Logic-based methods in Programming Environments WLPE'05 -- October 5, 2005 -- Sitges (Barcelona), Spain
本卷包含在WLPE 2005年,第15届国际研讨会在编程环境中基于逻辑的方法提出的论文。研讨会的目的是为研究基于逻辑的程序开发和分析工具的研究人员提供一个非正式会议。今年我们强调了两个方面:一方面是逻辑编程环境工具的介绍,语用学和经验;另一方面是一般编程的基于逻辑的环境工具。该研讨会在西班牙锡切斯(巴塞罗那)举行,作为第21届国际逻辑编程会议(ICLP 2005)的卫星研讨会。这次研讨会是继在美国俄亥俄州(1989年)、以色列埃拉特(1990年)、法国巴黎(1991年)、美国华盛顿(1992年)、加拿大温哥华(1993年)、意大利圣玛格丽塔利古雷(1994年)、美国波特兰(1995年)、比利时鲁汶和杰斐逊港成功举办的一系列逻辑编程环境国际研讨会之后的又一次。美国拉斯克鲁塞斯(1999年)、塞浦路斯帕福斯(2001年)、丹麦哥本哈根(2002年)、印度孟买(2003年)和法国圣马洛(2004年)。我们收到了8份提交文件(2份来自法国,2份来自西班牙-美国合作,1份来自西班牙-阿根廷合作,1份来自日本,1份来自联合王国,1份来自瑞典-法国合作)。计划委员会已决定接受七份文件。本卷包含已接受论文的修订版。我们感谢论文的作者、审稿人和项目委员会成员的帮助和富有成效的讨论。
2005-08-25 cs.LO cs.PL cs.SE