Z3 用LeoⅡ证明Frobenius代数中的定理
使用ATP Leo II和TPTP thf语言,可以证明Frobenius代数和开闭余元中的许多定理。我使用以下代码创建了一个Z3 用LeoⅡ证明Frobenius代数中的定理,z3,theorem-proving,abstract-algebra,Z3,Theorem Proving,Abstract Algebra,使用ATP Leo II和TPTP thf语言,可以证明Frobenius代数和开闭余元中的许多定理。我使用以下代码创建了一个 thf(alpha_decl,type,(alpha: $aaxa > $axaa)). thf(invalpha_decl,type,(invalpha: $axaa > $aaxa )). thf(mu_decl,type,(mu: $aa > $a )). thf(eta_decl,type,(eta: $i > $a )). thf(m
thf(alpha_decl,type,(alpha: $aaxa > $axaa)).
thf(invalpha_decl,type,(invalpha: $axaa > $aaxa )).
thf(mu_decl,type,(mu: $aa > $a )).
thf(eta_decl,type,(eta: $i > $a )).
thf(muid_decl,type,(muid: $aaxa > $aa )).
thf(idmu_decl,type,(idmu: $axaa > $aa )).
thf(etaid_decl,type,(etaid: $ja > $aa )).
thf(ideta_decl,type,(ideta: $ai > $aa )).
thf(lamb_decl,type,(lamb: $ja > $a )).
thf(rho_decl,type,(rho: $ai > $a )).
thf(delta_decl,type,(delta: $a > $aa )).
thf(deltaid_decl,type,(deltaid: $aa > $aaxa )).
thf(iddelta_decl,type,(iddelta: $aa > $axaa )).
thf(epsilon_decl,type,(epsilon: $a > $i )).
thf(invlamb_decl,type,(invlamb: $a > $ja )).
thf(invrho_decl,type,(invrho: $a > $ai )).
thf(epsilonid_decl,type,(epsilonid: $aa > $ja )).
thf(idepsilon_decl,type,(idepsilon: $aa > $ai )).
thf(id_decl,type,(id: $a > $a )).
thf(beta1_decl,type,( beta1: $a > $ai )).
thf(beta2_decl,type,(beta2: $a > $ja )).
thf(invbeta1_decl,type,(invbeta1: $ai > $a )).
thf(invbeta2_decl,type,(invbeta2: $ja > $a )).
thf(axio1,axiom,(! [X: $ja] :
( (lamb @ X) = (mu @ (etaid @ X ) ) ) )).
thf(axio2,axiom,(! [X: $ai] :
( (rho @ X) = (mu @ (ideta @ X ) ) ) )).
thf(axio3,axiom,(! [X: $aaxa] :
( (mu @ (idmu @ (alpha @ X)) ) = (mu @ (muid @ X) ) ) )).
thf(axio4,axiom,(! [X: $a] :
( (iddelta @ (delta @ X) ) = (alpha @ (deltaid @ (delta @ X)) ) ) )).
thf(axio5,axiom,(! [X: $a] :
( (epsilonid @ (delta @ X) ) = (invlamb @ X ) ) )).
thf(axio6,axiom,(! [X: $a] :
( (idepsilon @ (delta @ X) ) = (invrho @ X ) ) )).
thf(axio7,axiom,(! [X: $aa] :
( (muid @ (invalpha @ (iddelta @ X)) ) = (delta @ (mu @ X)) ) )).
thf(axio8,axiom,(! [X: $aa] :
( (idmu @ (alpha @ (deltaid @ X)) ) = (delta @ (mu @ X)) ) )).
thf(axio9,axiom,(! [X: $a] :
( (mu @ (ideta @ (beta1 @ X)) ) = (id @ X) ) )).
thf(axio10,axiom,(! [X: $a] :
( (mu @ (etaid @ (beta2 @ X)) ) = (id @ X) ) )).
thf(axio11,axiom,(! [X: $a] :
( (invbeta1 @ (idepsilon @ (delta @ X)) ) = (id @ X) ) )).
thf(axio12,axiom,(! [X: $a] :
( (invbeta2 @ (epsilonid @ (delta @ X)) ) = (id @ X) ) )).
thf(axio13,axiom,(! [X: $a] :
( (id @ (id @ X) ) = (id @ X) ) )).
thf(axio14,axiom,(! [X: $a] :
( (delta @ (id @ X) ) = (delta @ X) ) )).
例如,有可能证明
将前面的代码与下面的句子一起使用
thf(conj,conjecture,(! [X: $ja] :
( (idepsilon @ (idmu @ (alpha @ (deltaid @ (etaid @ X))) ) ) =
(idepsilon @ (delta @ (mu @ (etaid @ X))))
) )).
thf(conj2,conjecture,(! [X: $a] :
( (invbeta1 @ (idepsilon @ (delta @ (mu @ (etaid @ (beta2 @ X)))) ) ) =
(id @ X)
) )).
thf(conj3,conjecture,(! [X: $ai] :
( (epsilonid @ (muid @ (invalpha @ (iddelta @ (ideta @ X))) ) ) =
(epsilonid @ (delta @ (mu @ (ideta @ X))))
) )).
thf(conj4,conjecture,(! [X: $a] :
( (invbeta2 @ (epsilonid @ (delta @ (mu @ (ideta @ (beta1 @ X)))) ) ) =
(id @ X)
) )).
Leo II产生的输出是
% END OF SYSTEM OUTPUT
% RESULT: SOT_RS_aB8 - LEO-II---1.6.2 says Theorem - CPU = 0.05 WC = 0.17
% OUTPUT: SOT_RS_aB8 - LEO-II---1.6.2 says CNFRefutation - CPU = 0.05 WC = 0.17
我的问题是:如何使用大锤从狮子座II的输出中为人类提取证据
请看一看