Relaxed_LCMDCBD是近期主流求解器。其中本身具有导出proof证明UNSAT的相应代码。可以按照以下步骤激活相应代码,求解的同时输出相应drup格式的文件。


复活输出drup文件输出的代码
1.在main.c文件头部设置
  BoolOption drup 为 true
  StringOption drup_file 为 自定义的固定文件名
2.在main.c文件中部将文件打开方式设置为文本
  fopen(drup_file, "wb") 改为 fopen(drup_file, "w")
3.在solver.h文件中设置
  带头部注释掉#define BIN_DRUP
4.在solver.c中查找BIN_DRUP和drup_file,了解输出情况:
  几处化简函数函数体中注释掉了部分相关输出语句;
  输出drup主要集中在以下函数体中:
    (1) search
    (2) removeClause
    (3) addClause_
    (4) simplifyLearnt_tier2 保留了一部分
    (5) simplifyLearnt_core 保留了一部分
    (6) solve_() 最后部 关于二进制输出有一句。
5. 说明-由于导出drup文件规模较大-不适合较难的样例求解输出

posted on 2022-09-03 09:21  海阔凭鱼跃越  阅读(24)  评论(0编辑  收藏  举报