在OTTER中,可以使用如下输入来生成长度为13的wff的括号类型(长度是不是括号或谓词符号的符号数),其中i(x,y) )可以读作" x表示y"。
set(hyper_res).
clear(for_sub).
clear(back_sub).
assign(max_weight, 14).
list(sos).
-P(x) | -P(y) | P(i(x,y)).
end_of_list.
list(usable).
P(x).
end_of_list.
还可以测试一个公式是否是带有这样输入的重言式:
set(hyper_res).
assign(stats_level, 1).
clear(print_kept).
list(usable).
P(0).
P(1).
-P(x) | -P(y) | P(i(x,y)).
end_of_list.
list(sos).
-P(x) | -P(y) | -P(z) | -P(u) | -P(v) | D2(P(i(i(i(x,y),i(i(i(n(z),n(u)),v),z)),i(w,i(i(z,x),i(u,x))))),1).
end_of_list.
list(demodulators).
i(0,0)=1.
i(0,1)=1.
i(1,0)=0.
i(1,1)=1.
end_of_list.
list(passive).
D2(x,x).
end_of_list.
更新:以下作为输入生成所有公式,直到重新编写长度为7 而没有包含,这似乎很有用。
set(hyper_res).
set(print_lists_at_end).
assign(stats_level,0).
list(sos).
%generates all relevant possibilities
-P(i(i(i(x,y),z),u)) | -Q(x,y,z,u) | R(i(i(i(x,y),z),u)).
-P(i(i(x,i(y,z)),u)) | -Q(x,y,z,u) | R(i(i(x,i(y,z)),u)).
-P(i(i(x,y),i(z,u))) | -Q(x,y,z,u) | R(i(i(x,y),i(z,u))).
-P(i(x,i(i(y,z),u))) | -Q(x,y,z,u) | R(i(x,i(i(y,z),u))).
-P(i(x,i(y,i(z,u)))) | -Q(x,y,z,u) | R(i(x,i(y,i(z,u)))).
end_of_list.
list(usable).
% bracket types
P(i(i(i(x,y),z),u)).
P(i(i(x,i(y,z)),u)).
P(i(i(x,y),i(z,u))).
P(i(x,i(i(y,z),u))).
P(i(x,i(y,i(z,u)))).
%relevant permutations
Q(x,y,z,u).
Q(x,y,z,z).
Q(x,y,z,y).
Q(x,y,z,x).
Q(x,y,y,z).
Q(x,y,y,y).
Q(x,y,y,x).
Q(x,y,x,z).
Q(x,y,x,y).
Q(x,y,x,x).
Q(x,x,y,z).
Q(x,x,y,y).
Q(x,x,y,x).
Q(x,x,x,y).
Q(x,x,x,x).
end_of_list.
但是,我仍然无法将上述内容与某种输入相结合来测试所有这些重言式。我们如何让OTTER生成一定长度的所有公式,然后在一次运行中测试一定长度的公式作为重言式,这样我们只有OTTER,x,y,z,u,w,v5中的变量, v6,...,vn,在公式中,然后打印那些重言式?什么是输入的例子,这适用于长度为7的公式?
背景:我想[尝试找到长度为13的蕴涵命题演算的单个公理的候选者...编辑,只有一个公理,文献已经指出了一段时间],以及找到长度为21(或更短的?)的条件否定(CN)经典命题的单个公理的候选者。如果有一种方法可以将这样的输入与像Mace4,Mace2这样的模型检查器结合起来,那么候选者可以更有效地消除并以可用于OTTER 的校对的形式输出这些候选者如果你能做到这一点,我会尝试为这个问题添加赏金,如果你找到这样的程序就会给你这些积分。
(如果您愿意,请参阅编辑更多失败的尝试)。
答案 0 :(得分:1)
我仍然对如何将上述内容与Mace2或Mace4结合起来感兴趣。此外,这并没有说明我们如何获得支架类型的生成,一定长度的所有可能性,以及在一次运行中测试重言式。这是查找长度为7的所有重言式的输入:
set(hyper_res). % hyperresolution rule of inference
assign(max_proofs,-1).
clear(for_sub).
clear(back_sub). % the last two clear forward subsumption and back subsumption
assign(max_weight,8).
clear(print_kept). % clears kept formulas
weight_list(pick_and_purge).
% these get weighted to keep weight down for the entire run
weight(Y1(1,i(i(i(x,y),z),u)),1).
weight(Y2(1,i(i(x,i(y,z)),u)),1).
weight(Y3(1,i(i(x,y),i(z,u))),1).
weight(Y4(1,i(x,i(i(y,z),u))),1).
weight(Y5(1,i(x,i(y,i(z,u)))),1).
end_of_list.
list(sos). % set of support list
%generates all relevant possibilities
-P(i(i(i(x,y),z),u)) | -Q(x,y,z,u) | R(i(i(i(x,y),z),u)).
-P(i(i(x,i(y,z)),u)) | -Q(x,y,z,u) | R(i(i(x,i(y,z)),u)).
-P(i(i(x,y),i(z,u))) | -Q(x,y,z,u) | R(i(i(x,y),i(z,u))).
-P(i(x,i(i(y,z),u))) | -Q(x,y,z,u) | R(i(x,i(i(y,z),u))).
-P(i(x,i(y,i(z,u)))) | -Q(x,y,z,u) | R(i(x,i(y,i(z,u)))).
% will infer to Yx(1, r), where "r" indicates a formula,
% and "x" indicates the bracket type of the formula
-R(i(i(i(x,y),z),u)) | -X(x) | -X(y) | -X(z) | -X(u) | Y1(1,i(i(i(x,y),z),u)).
-R(i(i(x,i(y,z)),u)) | -X(x) | -X(y) | -X(z) | -X(u) | Y2(1,i(i(x,i(y,z)),u)).
-R(i(i(x,y),i(z,u))) | -X(x) | -X(y) | -X(z) | -X(u) | Y3(1,i(i(x,y),i(z,u))).
-R(i(x,i(i(y,z),u))) | -X(x) | -X(y) | -X(z) | -X(u) | Y4(1,i(x,i(i(y,z),u))).
-R(i(x,i(y,i(z,u)))) | -X(x) | -X(y) | -X(z) | -X(u) | Y5(1,i(x,i(y,i(z,u)))).
end_of_list.
断裂
list(usable).
% bracket types
P(i(i(i(x,y),z),u)).
P(i(i(x,i(y,z)),u)).
P(i(i(x,y),i(z,u))).
P(i(x,i(i(y,z),u))).
P(i(x,i(y,i(z,u)))).
%relevant permutations of the variables...
%(Q(y,x,y,x) and Q(x,y,x,y) are the same permutation,
% and in general, in OTTER x is always the first variable,
% one of {x, y} is the second, one of {x, y, z} is the third, etc.)
Q(x,y,z,u).
Q(x,y,z,z).
Q(x,y,z,y).
Q(x,y,z,x).
Q(x,y,y,z).
Q(x,y,y,y).
Q(x,y,y,x).
Q(x,y,x,z).
Q(x,y,x,y).
Q(x,y,x,x).
Q(x,x,y,z).
Q(x,x,y,y).
Q(x,x,y,x).
Q(x,x,x,y).
Q(x,x,x,x).
% truth values
X(0).
X(1).
end_of_list.
断裂
list(demodulators). %two equations to demodulate the Yx formulas
i(0,x)=1.
i(1,y)=y.
end_of_list.
list(passive). %negations of Yx(1,0).
-Y1(1,0).
-Y2(1,0).
-Y3(1,0).
-Y4(1,0).
-Y5(1,0).
end_of_list.
OTTER然后证明长度为7的所有公式 not 重言式。因此,任何保留在给定列表中但未得到证明的公式都是长度为7(或等效权重为8)的重言式。