【24h】

The 3 R's of optimizing constraint logic programs

机译:优化约束逻辑程序的3 R

获取原文

摘要

Central to constraint logic programming (CLP) languages is the notion of a global constraint solver which is queried to direct execution and to which constraints are monotonically added. We present a methodology for use in the compilation of CLP languages which is designed to reduce the overhead of the global constraint solver. This methododology is based on three optimizations. The first, refinement, involves adding new constraints, which in effect make information available earlier in the computation, guiding subsequent execution away from unprofitable choices. The second, removal, involves eliminating constraints from the solver when they are redundant. The last, reordering, involves moving constraint addition later and constraint removal earlier in the computation. Determining the applicability of each optimization requires sophisticated global analysis. These analyses are based on abstract interpretation and provide information about potential and definite interaction between constraints.

机译:

中央约束逻辑编程(CLP)语言是全局约束求解器的概念,该查询器被要求直接执行并向其单调添加约束。我们提出了一种用于CLP语言编译的方法,该方法旨在减少全局约束求解器的开销。该方法论基于三个优化。首先,完善涉及添加新的约束,实际上使信息在计算中更早可用,从而指导后续执行摆脱无利可图的选择。第二种方法是删除,涉及从求解器中消除多余的约束。最后,重新排序涉及在计算中稍后移动约束添加并在早期移动约束删除。确定每个优化的适用性需要复杂的全局分析。这些分析基于抽象解释,并提供有关约束之间潜在的和确定的相互作用的信息。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号