Reducing Higher-order Recursion Scheme Equivalence to Coinductive Higher-order Constrained Horn Clauses
高阶约束Horn子句(HoCHC)是高阶逻辑模理论的一个语义不变系统。HoCHC具有半判定背景理论上的半判定不可解性,适合于安全验证。关于它与更大类的高阶验证问题的关系,人们知之甚少。出于程序等价性的考虑,我们引入了一个共归纳版本的HoCHC,它具有最大的模型属性。我们将高阶递归方案(HoRS)的编码定义为HoCHC逻辑程序。这种编码的正确性降低了开放HoRS等价问题的可判定性-因此,LambdaY-演算Böhm树等价问题-在一个完整的可判定树理论上的共归纳HoCHC的半可判定性。
2021-09-10 cs.FL cs.LO cs.PL
Modelling Recursion and Probabilistic Choice in Guarded Type Theory
本文在守护类型论中利用高阶归纳类型和守护递归建模带概率选择与递归类型的语言,并建立操作与指称语义间的关系以支持充分性和上下文等价推理。
2024-10-24 cs.LO cs.PL
Guarded Cubical Type Theory: Path Equality for Guarded Recursion
本文将保护依赖类型论(GDTT)与立方类型论(CTT)相结合,改进了GDTT中等式的处理. GDTT是一种具有保护递归类型的可拓类型论,它对于建立程序逻辑模型以及使用共归纳类型进行程序设计和推理是有用的。我们希望用可判定的类型检查实现GDTT,同时仍然支持非平凡的等式证明,这是关于保护递归构造的扩展的原因。CTT是Martin-Löf类型论的变体,其中单位类型被项之间的抽象路径所取代。CTT提供了一个计算解释的功能扩展性,被证明有可判定的类型检查,并已实现的类型检查器。我们的新的类型论,称为守护立方类型论,提供了一个计算解释的可拓性守护递归类型。这进一步扩展了CTT作为数学和计算机科学形式化基础的基础。我们提出的例子来证明我们的类型论,所有这些都已经检查使用原型类型检查器实现的表达能力,并在一个preheaf类别的语义。
2016-06-28 cs.LO cs.PL
Denotational semantics for guarded dependent type theory
我们提出了一个新的模型的保护依赖类型论(GDTT),一个类型论与保护递归和多个时钟,其中一个可以编程,共归纳类型的原因。递归定义的共归纳程序和证明的生产力是使用保护递归编码在类型中的,因此可以模块化地检查,不像现代证明助手中实现的语法检查。该模型基于一类时间对象的协变预层,并使用时钟的预层对时钟进行量化建模。为了模拟时钟无关性公理,这对于使用共归纳类型进行编程至关重要,类型必须被解释为与时钟对象正交的预层。在依赖类型的情况下,这转化为提升条件,类似于在类型论的同伦理论模型中发现的提升条件,但在这里具有提升唯一性的额外要求。由于在这个模型中标准的Hofmann-Streicher构造定义的宇宙不满足这个性质,GDTT中的宇宙必须通过时钟变量的上下文来索引。我们展示了如何模拟这些宇宙的方式,时钟上下文的夹杂物引起的夹杂物的宇宙与类型操作的鼻子。
2020-04-13 cs.LO
Beating the Productivity Checker Using Embedded Languages
一些全语言,如Agda和Coq,允许使用保护上递归来构造无穷值和证明。保护共递归(英语:Guarded corecursion)是递归的一种形式,其中允许任意递归调用,只要它们被共归纳构造函数保护。守护性确保程序是生产性的,即可以在有限时间内计算无限值的每个有限前缀。然而,许多生产性程序不是受保护的,并且将它们置于受保护的形式中可能是不平凡的。本文给出了一种将生产性程序转化为防护程序的方法。该方法相当于将特定于问题的语言定义为数据类型,用特定于问题的语言编写程序,并为该语言编写一个受保护的解释器。
2010-12-22 cs.LO cs.PL
Guard Your Daggers and Traces: Properties of Guarded (Co-)recursion
出于最近的兴趣在模型的保护(共)递归,我们研究他们的方程性质。我们制定公理守护不动点算子推广公理的迭代理论的布卢姆和Ésik。这些公理的模型包括标准的(例如,基于CPO的)模型的迭代理论和模型的保护递归,如完整的度量空间或拓扑的树研究Birkedal等人。我们表明,标准的结果满足所有康威公理的一个独特的匕首操作推广到保护设置。我们还在范畴上引入了保护迹算子的概念,并证明了保护迹算子与保护不动点算子是一一对应的。我们的研究结果的目的是作为第一步领导,希望,对未来的描述分类理论的守护递归。
2016-03-16 cs.LO
Guard Your Daggers and Traces: On The Equational Properties of Guarded (Co-)recursion
出于最近的兴趣在模型的保护(共)递归,我们研究其方程的性质。我们制定公理守护不动点算子推广的公理的迭代理论的布卢姆和Esik。这些公理的模型包括标准的(例如,基于CPO的)模型的迭代理论和模型的保护递归,如完整的度量空间或拓扑的树研究Birkedal等人。我们表明,标准的结果满足所有康威公理的一个独特的匕首操作推广到保护设置。我们还在范畴上引入了保护迹算子的概念,并证明了保护迹算子与保护不动点算子是一一对应的。我们的研究结果的目的是作为第一步,导致的分类理论的描述守护递归,因此完整性的结果涉及我们的公理守护不动点算子在未来的工作。
2013-09-04 cs.LO
A Generalized Modality for Recursion
中野的后期模态允许类型表示函数的输出不直接依赖于其输入,因此计算其不动点是安全的。事实证明,这种保护递归的想法在各种上下文中都很有用,从具有无限数据结构的函数式编程到类型论内部的步进索引公式。分类模型表明,后一种模态本质上对应于离散时间尺度的简单重新索引。不幸的是,现有的保护类型论遭受编程目的的重大限制。这些局限性源于这样一个事实,即后一种模态的表达能力不足以捕捉函数的精确输入-输出依赖关系。因此,守卫类型论拒绝许多生产性定义。结合守卫类型论和同步程序设计语言的见解,我们提出了一个新的模式守卫递归。此模态可以将时间尺度的任何行为良好的重新索引应用于类型。我们称这种重新索引为时间扭曲。文献中的几种模态,包括后来的模态,对应于固定的时间扭曲,因此作为我们的特例出现。
2020-08-03 cs.LO cs.PL
Non-Cartesian Guarded Recursion with Daggers
University of Edinburgh(爱丁堡大学)
本文将对合范畴中的保护递归框架扩展到非笛卡尔环境,通过构造合适的范畴并研究其与对合范畴结构的交互,为高阶可逆编程语言添加保护递归特性。
2026-11-04 cs.LO cs.PL math.CT
General Recursion via Coinductive Types
理论计算机科学中一个肥沃的研究领域是研究一般递归函数在内涵类型论中的表示。其中最成功的方法是:使用良基关系,实施操作语义,形式化的域理论,和归纳定义的域谓词。在这里,提出了一个不同的解决方案:利用共归纳类型来模拟无限计算。对于每一个类型A,我们关联一个类型的部分元素Partial(A),它由两个构造函数共归纳生成:第一个构造函数return(a)只返回一个元素a:A;第二个构造函数step(x)给递归元素x:Partial(A)增加一个计算步骤。我们展示了这个简单的设备如何足以形式化两个给定类型之间的所有递归函数。它允许定义有限的不动点,也就是连续的算子。我们将把这种方法与文献中的不同方法进行比较。最后,我们提到的形式化,适当的结构图,定义了一个强大的单子。
2005-09-29 cs.LO
On infinite guarded recursive specifications in process algebra
在大多数具有保护递归的ACP的表示中,递归规范是递归方程的有限或无限集合,其右侧是保护项。关于ACP公理与保护递归的互模拟等价的完备性仅在递归规范是递归方程的有限集的特殊情况下得到证明,其中递归方程的右手边是被称为线性项的限制形式的保护项。在本文中,我们将这个完全性结果推广到一般情况。
2020-05-02 cs.LO
Unguarded Recursion on Coinductive Resumptions
本文证明协归纳续接单子变换器在底层效应支持无保护迭代时也允许无保护迭代,构成完全Elgot单子,并给出其作为完全Elgot单子余积的泛性质刻画。
2018-08-24 cs.LO
Classifying topoi in synthetic guarded domain theory
本文证明合成保护域理论中的多个拓扑斯模型分类简单几何理论,并利用下袋拓扑斯构造将多时钟保护递归模块化,适用于任何单时钟模型。
2023-02-20 cs.LO cs.PL math.CT
(Co)recursion in Logic Programming: Lazy vs Eager
CoALP(英语:CoAlgebraic Logic Programming)是逻辑编程的一种方言,旨在为逻辑编程中的递归和共递归函数带来更精确的编译时和运行时终止和生产力分析。它的第二个目标是将类似于函数定理证明器的保护惰性(共)递归引入逻辑编程。在本文中,我们解释了CoALP的懒惰特性,并将其与CoLP中的循环分析和急切执行进行了比较。最后,我们概述了未来的发展方向,在逻辑编程的守护(共)递归。
2014-05-20 cs.LO cs.PL
Using Structural Recursion for Corecursion
我们提出了一个(有限的)解决方案的问题,构造流值定义的递归方程,不尊重guardedness条件。在Coq、AGDA和其他高阶证明助手中,对上递归函数的定义施加了保护性条件。在本文中,我们特别集中在那些非守护方程递归调用下出现的功能。我们使用的流和函数之间的对应关系自然数表明,一些类的非保护的定义可以通过结构递归函数的编码建模。在实践中,这项工作扩展了流值类,可以在基于构造性类型论的定理证明器中定义归纳和共归纳类型,结构递归和保护共递归
2009-03-23 cs.LO
The clocks they are adjunctions:Denotational semantics for Clocked Type Theory
Clocked类型论(Clotted Type Theory,CloTT)是一种用于保护递归的类型论,可用于使用共归纳类型进行编程,允许将生产力编码在类型中,并用于使用步骤索引的抽象形式来推理高级程序设计语言功能。CloTT之前已经被证明具有许多语法属性,包括强规范化,规范性和类型检查的可判定性。在本文中,我们为CloTT提供了一个有用的指称语义,例如,用于研究未来的CloTT扩展,如路径类型。构建这个模型的主要挑战是对CloTT中用于共归纳类型的共归纳推理的滴答概念进行建模。我们建立在一个以前用于对保护递归进行建模的类别上,但是在这个类别中没有ticks对象,因此不能使用标准工具对上下文中的tick假设进行建模。相反,我们展示了如何使用伴随函子来建模滴答,以及如何使用语义替换来建模滴答常数。
2018-04-18 cs.LO
Almost-Sure Termination by Guarded Refinement
本文提出Caliper,一种基于受保护递归和概率耦合的高阶分离逻辑,通过证明程序与简单模型间的精化来建立概率程序的几乎必然终止,并在Coq中验证多个示例。
2024-11-11 cs.LO cs.PL
Type-Based Termination, Inflationary Fixed-Points, and Mixed Inductive-Coinductive Types
类型系统以组合的方式证明程序属性。从一个更大的程序中,可以抽象出一个部分,并通过使用被抽象出的部分的类型来证明所得到的抽象程序的属性。终止性和生产力是非平凡的,但所需的程序属性,并已提出了几个类型系统,保证终止,组成。这些类型系统与通过顺序迭代定义的最小和最大不动点密切相关。虽然大多数类型系统使用常规迭代,但我们在本文中考虑膨胀迭代。我们演示了这是如何导致一个更有原则的类型系统,递归基于有理有据的归纳。该类型系统有一个原型实现,MiniAgda,我们特别展示了它如何证明生产力的correcursive和混合递归correcursive功能。
2012-02-16 cs.LO cs.PL
Type Theory based on Dependent Inductive and Coinductive Types
我们开发了一个依赖的类型论,纯粹基于归纳和共归纳类型,以及相应的递归和共递归原则。这就产生了一个只有少量规则集的类型论,同时仍然具有相当的表达能力。例如,所有众所周知的基本类型和类型的形式,需要使用这个类型论作为一个逻辑是可定义的:命题连接词,如虚假,合取,析取,和功能空间,依赖功能空间,存在量化,平等,自然数,向量等。众所周知的类型的归约关系由此产生。为了进一步支持这个新的类型论的引入,我们还证明了它的项演算的基本性质。最重要的是,我们证明了主题减少和强规范化的减少关系,这使得计算意义的条款。所提出的类型论是基于第一作者以前研究过的分类逻辑的思想,它将Hagino的分类数据类型扩展到依赖类型化的设置。通过将类型论建立在范畴论的概念上,我们保持了归纳类型和上归纳类型之间的对偶性,并且它允许我们将函数空间描述为上归纳类型。
2016-05-07 cs.LO
Inductive Reasoning for Coinductive Types
本文提出 AlgCo 框架,利用代数完全偏序和稠密集合上的原始递归,实现对 conats、流等余归纳类型的归纳推理,并在 Coq 中验证了筛法、正则表达式库和概率采样语义。
2023-04-07 cs.LO
Two Guarded Recursive Powerdomains for Applicative Simulation
时钟立方类型论是一种新的类型论,它结合了保护递归的能力、单值和高级归纳类型(HIT)。这种类型论可以被用来作为一种元语言的合成守护域理论,其中可以解决守护递归型方程,也与负变量的出现,并使用这些来构建模型的推理程序设计语言。将其与HIT相结合,允许使用基于集合论的语义方法中熟悉的类型构造器,例如这些模型中的幂集和有限幂集。在本文中,我们展示了如何推理的组合有限的非决定性和递归在这个类型论。与传统的论域理论不同,它把程序的排序作为原语,综合保护论域理论把计算步骤的概念作为模态算子的原语。我们使用这个额外的内涵信息来定义两个守护递归(有限)powerdomain建设不同的方式非确定性与计算步骤的相互作用。作为一个例子,这些应用程序,我们展示了如何证明适用的相似性的情况下,可能和必须收敛的有限非确定性的无类型的λ演算的同余。这些结果通常使用操作推理和Howe方法来证明。在这里,我们使用一个适应的指称方法开发的皮茨域理论的背景下。
2021-12-28 cs.LO
Breaking the Loop: Recursive Proofs for Coinductive Predicates in Fibrations
本文的目的是发展和研究共归纳谓词的递归证明。这样的递归证明允许人们在共归纳谓词的证明的构造中发现证明目标,同时仍然允许使用最高技术。这种方法解除了预先猜测不变量的负担,比如互模拟关系。相反,它们允许人们从追求的证明目标开始,并从那里发展证明,直到达到一个点,在这个点上,证明可以通过递归步骤关闭。以这种方式给出的证明更容易构造和理解,类似于循环证明系统或吸引人的参数化共归纳给出的证明。在本文中,我们开发了一个框架,递归证明的共归纳谓词,通过Fibrational谓词提升。这个框架是建立在所谓的后期模态,这已经使它出现在类型理论的设置之前。特别是,我们展示了递归证明的合理性和完整性,证明了兼容的最新技术可以用作递归证明中的推理规则,并提供了一些说明性例子。
2018-02-20 cs.LO
Implicit complexity for coinductive data: a characterization of corecurrence
我们提出了一个框架推理的程序,操纵共归纳数据以及归纳数据。我们的方法是基于使用等式程序,它支持计算和推理的无缝结合,并使用生产力(公平性)作为基本断言,而不是双向模拟。后者可以用前者来表达。作为这个框架的应用程序,我们给出了一个隐含的特征correcurrence:一个函数是可定义的使用correcurrence当且仅当其生产力是可证明的使用coinduction的公式中,数据谓词不出现负。这是[Leivant,单极归纳,TCS 318,2004]中递归(即原始递归)特征的模拟,尽管形式较弱。
2012-01-05 cs.CC cs.LO
Denotational semantics of recursive types in synthetic guarded domain theory
就像数学的任何其他分支一样,程序设计语言的指称语义应该在类型论中形式化,但是将传统的域理论语义(如最初在经典集合论中制定的)适应类型论已经证明是具有挑战性的。本文是一个项目的一部分,制定指称语义的类型论与保护递归。这样做的好处不仅是提供更简单的语义和充分性等属性的证明,而且有望在未来扩展到具有高级功能的语言,如通用引用,超出了传统域理论技术的范围。工作在保护依赖类型论(GDTT),我们开发的指称语义的FPC,简单类型的λ演算扩展与递归类型,建模的递归类型的FPC使用保护递归类型的GDTT。我们证明了GDTT模型的合理性和计算充分性,使用语法和语义之间的逻辑关系,也使用守护递归类型。指称语义是内涵的,在这个意义上,它计算计算一个项的值所需的展开-折叠约简的数量,但是我们构建了一个关系,该关系涉及外延相等项的指称,即,在不同步骤中计算相同值的项对。最后,我们展示了如何在类型论中执行术语的指称语义,并证明了执行布尔术语的指称计算与FPC的操作语义相同的值。
2018-05-02 cs.LO cs.PL
Unique Solutions of Guarded Recursive Equations
本文研究受守护递归方程组的解的唯一性问题,证明其在强互模拟等多种等价关系与预序下的唯一解性质,推导相关同余结论,并给出有穷GSOS语言强互模拟的可靠基完备公理化方法。
2025-10-28 cs.LO
A Light Modality for Recursion
本文提出一种语法上静默的模态,用于控制无限结构上递归函数式程序的行为,将递归控制负担从程序员转移到编译器,并引入带静默模态和守护递归类型的类型化lambda演算,保证归一化且可推断类型。
2019-02-02 cs.LO cs.PL
Guarded Cubical Type Theory
本文将保护依赖类型论(GDTT)与立方类型论(CTT)相结合,改进了GDTT中等式的处理. GDTT是一种具有保护递归类型的可拓类型论,它对于建立程序逻辑模型以及使用共归纳类型进行程序设计和推理是有用的。我们希望用可判定的类型检查实现GDTT,同时仍然支持非平凡的等式证明,这些证明是关于保护递归构造的扩展的原因。CTT是Martin-Löf类型论的变体,其中单位类型被项之间的抽象路径所取代。CTT提供了一个计算解释的功能扩展性,享有规范的自然数类型,并被构造为支持可判定的类型检查。我们的新类型论,守护立方类型论(GCTT),提供了一个计算解释的可拓性守护递归类型。这进一步扩展了CTT作为数学和计算机科学形式化基础的基础。我们提出的例子来证明我们的类型论,所有这些都已检查使用原型类型检查器实现的表达能力。我们表明,CTT可以给出语义的立方体范畴和一个小的类别与初始对象的产品上的预层。然后,我们表明,类别的立方体类别和欧米茄的产品上的预层提供GCTT的语义。
2017-10-06 cs.LO math.CT math.LO
Master Thesis Impredicative Encodings of Inductive and Coinductive Types
本硕士论文拓展Awodey等人的研究,在带扩展的λC系统中为System F风格归纳/共归纳类型构造满足(共)归纳原理的编码,覆盖列表、商、W-类型、流、M-类型等。
2025-05-15 cs.LO
Induction and Recursion Principles in a Higher-Order Quantitative Logic for Probability
Aalborg University(奥尔堡大学);IT University of Copenhagen(哥本哈根信息技术大学)
本文研究了高阶量化逻辑的基本推理原理及其在概率程序和过程推理中的应用,提出了新的 guarded recursion 原理和概率测度与自然数的归纳原理。
2026-05-20 cs.LO math.LO
First steps in synthetic guarded domain theory: step-indexing in the topos of trees
我们提出的拓扑S的树作为一个模型的保护递归。我们研究了内部依赖类型的高阶逻辑的S,并表明S模型的两个模态算子,谓词和类型,作为后卫的递归定义的条款,谓词和类型。特别是,我们将展示如何解决递归类型方程涉及依赖类型。我们建议S的内部逻辑为程序设计语言和程序逻辑的步骤索引模型的抽象版本的合成构造提供了正确的设置。作为一个例子,我们展示了如何构建一个程序设计语言的模型,该语言具有完全在S内部逻辑中的高阶存储和递归类型。此外,我们给出了合成守护整环理论模型的公理化范畴处理,证明了对任何具有良基的完备Heyting代数A,A上层的拓扑构成合成守护整环理论的模型,推广了S的结果.
2012-10-01 cs.LO
Ticking clocks as dependent right adjoints: Denotational semantics for clocked type theory
本文为时钟类型理论(CloTT)构建指称语义,利用依赖右伴随函子建模滴答概念,以支持余归纳推理,并改进了先前有缺陷且复杂的模型。
2020-12-14 cs.LO
Type-Based Termination for Futures
本文将顺序语言中的大小类型终止性检查方法适配到并发场景,通过扩展半公理化相继式演算提出大小类型细化方案,借助无限宽有限深的类型推导树和新颖逻辑关系论证,实现基于futures的函数式并发程序的终止性验证。
2024-04-15 cs.LO cs.PL
Sikkel: Multimode Simple Type Theory as an Agda Library
类型论的许多变体通过额外的原语或属性(如univalence,guarded recursion或parametricity)扩展了基本理论,以实现在原始理论中更难或不可能实现的构造或证明。然而,实现这种扩展的类型论(无论是从头开始还是通过修改现有的实现)是它们更广泛采用的一大障碍。在本文中,我们提出了Sikkel,在依赖类型的程序设计语言Agda,允许用户在扩展的类型论编程库。它使用了一种深度嵌入的语言,可以很容易地扩展额外的类型和术语构造函数,从而支持各种各样的类型论。此外,Sikkel有一个类型检查器,在这个意义上,所有类型良好的程序都自动转换为基于预层模型的浅嵌入中的语义。此外,我们的模型支持通过使用模态在它们之间传输定义来组合不同的基本类别。这使得特别是一个通用的方法提取定义的元级别,使我们可以使用扩展的类型论来定义定期Agda功能和证明他们的属性。在本文中,我们证明了Sikkel理论与保护递归和参数,但其他扩展可以很容易地插入。目前,Sikkel只支持简单的类型论,但它的模型已经预测了未来依赖类型和宇宙的增加。
2022-07-02 cs.LO cs.PL
Mechanizing Coinduction and Corecursion in Higher-order Logic
递归和上递归定义的理论已经在高阶逻辑(HOL)中得到了发展,并使用Isabelle进行了机械化。最小不动点表示归纳数据类型,如严格列表;最大不动点表示共归纳数据类型,如懒惰列表。良基递归表示归纳数据类型上的递归函数;协递归表示产生共归纳数据类型元素的函数。该理论依赖于传统的形式化的无限树。该理论旨在用于规范和验证。它支持大范围的可计算函数的推理,但没有形式化它们的操作语义,也可以表示不可计算函数。该理论说明使用有限和无限的列表。共递归表示无限列表上的函数;共归纳推理这类函数。
2000-10-31 cs.LO
Denotational semantics of general store and polymorphism
本文首次提出结合卫递归与非直谓多态性的多态依赖类型理论指称语义,支持一般高阶引用和递归类型,并通过“逻辑关系即类型”的模态构造实现对有状态抽象数据类型的关系推理。
2023-04-12 cs.LO cs.PL
Unifying cubical and multimodal type theory
本文结合多模态与立方类型论提出立方模态类型论,验证模态外延性原则,基于拓扑斯内部语言给出公理化模型构造法,并用于构建保护递归模型以支持Löb归纳推理。
2024-12-11 cs.LO
Subtyping on Nested Polymorphic Session Types
子类型对于支持更广泛的良好类型程序的重要性是不可否认的。然而,子类型、递归和多态之间的相互作用还没有完全理解。在这项工作中,我们探讨子类型的嵌套,递归和多态类型的系统与共归纳的解释,我们证明了这个问题是不可判定的。我们的结果将是广泛适用的,但保持我们的研究扎根在一个具体的设置,我们的工作与显式多态性,参数类型构造函数,嵌套类型的会话类型的扩展。我们证明了子类型是不可判定的,即使是只有内部选择和嵌套的一元递归类型构造函数的片段。尽管这个负面的结果,我们提出了一个子类型算法,我们的系统,并证明其可靠性。我们通过使程序员能够用子类型声明(由算法验证)来播种算法,从而最大限度地减少不可避免的不完整性的影响。我们已经在Rast中实现了该算法,并在各种示例程序中证明了其有效性。
2021-03-28 cs.LO cs.PL
A Type-Based Complexity Analysis of Object Oriented Programs
介绍了一种面向对象的通用程序设计语言的类型系统,以推断资源上界。得到了多项式时间可计算函数集的一个可靠而完整的刻画。因此,类型化程序的堆空间和栈空间需求也是多项式有界的。这种类型系统的灵感来自于以前关于隐式计算复杂性的工作,使用分层和非干扰技术。所提出的方法有几个优点。首先,它为程序员提供了显式的大$O$多项式上界,因此它的使用可以允许程序员避免内存错误;其次,类型检查在多项式时间内是可判定的。最后,它具有良好的表达能力,因为它分析了大多数面向对象的特性,如继承,重载,重写和递归。此外,它可以处理由对象保护的循环,也可以扩展到改变控制流的语句,如break或return。
2018-02-19 cs.LO cs.PL