首页> 外文期刊>Theory and Practice of Logic Programming >Technical Note Random generation of closed simply typed lambda-terms: A synergy between logic programming and Boltzmann samplers
【24h】

Technical Note Random generation of closed simply typed lambda-terms: A synergy between logic programming and Boltzmann samplers

机译:技术说明封闭式简单Lambda项的随机生成:逻辑编程与Boltzmann采样器之间的协同作用

获取原文
获取原文并翻译 | 示例
获取外文期刊封面目录资料

摘要

A natural approach to software quality assurance consists in writing unit tests securing programmer-declared code invariants. Throughout the literature, a great body of work has been devoted to tools and techniques automating this labour-intensive process. A prominent example is the successful use of randomness, in particular, random typable lambda-terms, in testing functional programming compilers such as the Glasgow Haskell Compiler. Unfortunately, due to the intrinsically difficult combinatorial structure of typable lambda-terms, no effective uniform sampling method is known, setting it as a fundamental open problem in the random software testing approach. In this paper, we combine the framework of Boltzmann samplers, a powerful technique of random combinatorial structure generation, with today's Prolog systems offering a synergy between logic variables, unification with occurs check and efficient backtracking. This allows us to develop a novel sampling mechanism able to construct uniformly random closed simply typed lambda-terms of up size 120. We apply our techniques to the generation of uniformly random closed simply typed normal forms and design a parallel execution mechanism pushing forward the achievable term size to 140.
机译:一种自然的软件质量保证方法是编写单元测试,以保护程序员声明的代码不变式。在整个文献中,大量工作致力于自动化劳动密集型过程的工具和技术。一个突出的例子是在测试功能编程编译器(例如格拉斯哥Haskell编译器)时成功使用了随机性,尤其是随机可键入的lambda术语。不幸的是,由于可输入的lambda项固有的困难的组合结构,因此尚无有效的统一抽样方法,这将其设置为随机软件测试方法中的根本性开放问题。在本文中,我们将Boltzmann采样器的框架,一种强大的随机组合结构生成技术与当今的Prolog系统相结合,在逻辑变量,事件检查统一和高效回溯之间提供了协同作用。这使我们能够开发一种新颖的采样机制,该机制能够构造最大尺寸为120的均匀随机封闭简单类型的lambda项。我们将我们的技术应用于均匀随机封闭简单类型的范式的生成,并设计了一种并行执行机制来推动可实现期限大小为140。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号