-greater_or_equal(cardinality_at_time(first_movers, appear(an_organisation, sk2)), number_of_organizations(e, appear(an_organisation, sk2))) -=(cardinality_at_time(first_movers, appear(an_organisation, sk2)), number_of_organizations(e, appear(an_organisation, sk2))) -=(number_of_organizations(e, appear(an_organisation, sk2)), cardinality_at_time(first_movers, appear(an_organisation, sk2))) -greater(cardinality_at_time(first_movers, appear(an_organisation, sk2)), number_of_organizations(e, appear(an_organisation, sk2))) +greater_or_equal(appear(efficient_producers, e), appear(an_organisation, sk2)) -greater(cardinality_at_time(first_movers, appear(an_organisation, sk2)), zero) +greater(appear(efficient_producers, e), appear(an_organisation, sk2)) +greater(appear(first_movers, sk2), appear(an_organisation, sk2)) +greater_or_equal(appear(efficient_producers, e), appear(first_movers, sk2)) +greater_or_equal(number_of_organizations(e, appear(an_organisation, sk2)), zero) +greater(appear(efficient_producers, e), appear(first_movers, sk2)) +greater(number_of_organizations(e, appear(an_organisation, sk2)), zero) +greater_or_equal(appear(first_movers, sk2), appear(an_organisation, sk2)) -=(appear(first_movers, sk2), appear(an_organisation, sk2)) -=(first_movers, an_organisation) -=(an_organisation, first_movers) +greater_or_equal(_0, _0) -=(appear(an_organisation, sk2), appear(first_movers, sk2)) +in_environment(sk2, appear(an_organisation, sk2)) +environment(sk2) +=(_0, _0)
+ssPv2(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))))))))) -ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))))))))) -ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))))))))) +ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))))))) +ssPv2(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))))))) -ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))))))) +ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))))))) -ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))))) +ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))))) -ssPv2(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))))) +ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))))))) +ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))))))) +ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))))))) +ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))))) -ssPv2(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))))) -ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))))) +ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))))) -ssPv2(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))) -ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))))) +ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))) -ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))) +ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))) +ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))) +ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))))) +ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))) +ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))))) -ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))) +ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))) -ssPv2(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))) +ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))) +ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))))) -ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))) -ssPv2(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))))) +ssPv2(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))) -ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))) +ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))) -ssPv2(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))) +ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))) -ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))))) -ssPv1(skf1(skf1(skf1(skf1(skf1(=0)))))) -ssPv2(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))) -ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))) +ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))) +ssPv3(skf1(skf1(skf1(skf1(skf1(skf1(skf1(=0)))))))) -ssPv4(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))) +ssPv2(skf1(skf1(skf1(skf1(skf1(=0)))))) +ssPv1(skf1(skf1(skf1(skf1(skf1(skf1(=0))))))) -ssPv3(skf1(skf1(skf1(skf1(skf1(=0)))))) -ssPv4(skf1(skf1(skf1(skf1(=0))))) +ssPv2(skf1(skf1(skf1(skf1(=0))))) +ssPv1(skf1(skf1(skf1(=0)))) -ssPv2(skf1(skf1(=0))) -ssPv3(skf1(skf1(skf1(skf1(=0))))) -ssPv4(skf1(skf1(=0))) +ssPv1(skf1(skf1(skf1(skf1(=0))))) -ssPv2(skf1(skf1(skf1(=0)))) -ssPv3(skf1(skf1(=0))) +ssPv3(skf1(skf1(skf1(=0)))) -ssPv4(skf1(=0)) +ssPv2(=0) +ssPv1(skf1(skf1(=0))) +ssPv2(skf1(=0)) +ssPv4(skf1(skf1(skf1(=0)))) +ssPv3(skf1(=0)) -ssPv1(skf1(=0)) +ssPv4(=0) +ssPv1(=0) +ssRr(_0, skf1(_0))
EP will use the current version of the new TSTP output format, documented in [SZS03]. The current implementation lists initial clauses as of "unknown" origin. The following rule names are defined for the main proof search:
Additionally, the clausification will use additional rule names:
The first proof uses all proof search inferences except for "ef" and "csr", although it uses some in fairly trivial ways. The second is the required proof for SYN075-1, and contains examples for "ef" and "csr". The final proof is for SYN075+1, and also contains the clausification steps.
# Problem is unsatisfiable, constructing proof object # TSTP exit status: Unsatisfiable # Proof object starts here. cnf(1,axiom,(equal(f(X1,X2), f(X2,X1))),unknown). cnf(2,axiom,(equal(f(X1,f(X2,X3)), f(f(X1,X2),X3))),unknown). cnf(3,axiom,(equal(g(X1,X2), g(X2,X1))),unknown). cnf(4,axiom,(~equal(f(f(X1,X2),f(X3,g(X4,X5))), f(f(g(X4,X5),X3),f(X2,X1)))|~equal(k(X1,X1), k(a,b))),unknown). cnf(5,axiom,(equal(b, c)|~equal(X1, X2)|~equal(X3, X4)|~equal(c, d)),unknown). cnf(6,axiom,(equal(a, b)|equal(a, c)),unknown). cnf(7,axiom,(equal(i(X1), i(X2))),unknown). cnf(8,axiom,(equal(c, d)|~equal(h(i(a)), h(i(e)))),unknown). cnf(13,plain-derived,(~equal(k(a,b), k(X1,X1))),inference(ar,[status(thm)],[4,1,3,2,theory(equality)])). cnf(23,plain-derived,(equal(c, b)|epred1_0|~equal(d, c)|~equal(X3, X4)),inference(split,[split(esplit,[])],[5])). cnf(24,plain-derived,(epred2_0|~equal(X1, X2)),inference(split,[split(esplit,[])],[5])). cnf(25,plain-derived,(~epred2_0|~epred1_0),inference(split,[split(esplit,[])],[5])). cnf(26,plain-derived,(epred2_0),inference(er,[status(thm)],[24,theory(equality)])). cnf(27,plain-derived,(false|~epred1_0),inference(rw,[status(thm)],[25,26,theory(equality)])). cnf(28,plain-derived,(~epred1_0),inference(cn,[status(thm)],[27,theory(equality)])). cnf(29,plain-derived,(equal(c, b)|epred1_0|~equal(d, c)),inference(er,[status(thm)],[23,theory(equality)])). cnf(30,plain-derived,(equal(c, b)|~equal(d, c)),inference(sr,[status(thm)],[29,28,theory(equality)])). cnf(31,plain-derived,(equal(d, c)),inference(sr,[status(thm)],[8,7,theory(equality)])). cnf(32,plain-derived,(equal(c, b)|false),inference(rw,[status(thm)],[30,31,theory(equality)])). cnf(33,plain-derived,(equal(c, b)),inference(cn,[status(thm)],[32,theory(equality)])). cnf(34,plain-derived,(equal(b, a)),inference(pm,[status(thm)],[6,33,theory(equality)])). cnf(36,plain-derived,(~equal(k(b,b), k(X1,X1))),inference(rw,[status(thm)],[13,34,theory(equality)])). cnf(75,plain-derived,(false),inference(er,[status(thm)],[36,theory(equality)])). cnf(76,plain-derived,(false),75,['proof']). # Proof object ends here.
# Problem is unsatisfiable, constructing proof object # TSTP exit status: Unsatisfiable # Proof object starts here. cnf(1,axiom,(equal(X1, a)|~big_f(X1,X2)),unknown). cnf(3,axiom,(big_f(X1,X2)|~equal(X1, a)|~equal(X2, b)),unknown). cnf(4,conjecture,(equal(f(X2), X2)|~big_f(X1,f(X2))|~equal(X1, g(X2))),unknown). cnf(6,conjecture,(big_f(X1,f(X2))|equal(f(X2), X2)|~equal(X1, g(X2))),unknown). cnf(9,conjecture,(big_f(h(X1,X2),f(X1))|equal(h(X1,X2), X2)|~equal(f(X1), X1)),unknown). cnf(10,conjecture,(~equal(f(X1), X1)|~equal(h(X1,X2), X2)|~big_f(h(X1,X2),f(X1))),unknown). cnf(13,conjecture-derived,(~equal(f(X1), X1)|~equal(h(X1,X2), X2)|~equal(a, h(X1,X2))|~equal(b, f(X1))),inference(pm,[status(thm)],[10,3,theory(equality)])). cnf(15,conjecture-derived,(equal(f(X2), X2)|~equal(g(X2), X1)),inference(csr,[status(thm)],[6,4])). cnf(16,conjecture-derived,(equal(f(X1), X1)),inference(er,[status(thm)],[15,theory(equality)])). cnf(23,conjecture-derived,(false|~equal(h(X1,X2), X2)|~equal(h(X1,X2), a)|~equal(f(X1), b)),inference(rw,[status(thm)],[13,16,theory(equality)])). cnf(24,conjecture-derived,(false|~equal(h(X1,X2), X2)|~equal(h(X1,X2), a)|~equal(X1, b)),inference(rw,[status(thm)],[23,16,theory(equality)])). cnf(25,conjecture-derived,(~equal(h(X1,X2), X2)|~equal(h(X1,X2), a)|~equal(X1, b)),inference(cn,[status(thm)],[24,theory(equality)])). cnf(30,conjecture-derived,(equal(h(X1,X2), X2)|big_f(h(X1,X2),X1)|~equal(f(X1), X1)),inference(rw,[status(thm)],[9,16,theory(equality)])). cnf(31,conjecture-derived,(equal(h(X1,X2), X2)|big_f(h(X1,X2),X1)|false),inference(rw,[status(thm)],[30,16,theory(equality)])). cnf(32,conjecture-derived,(equal(h(X1,X2), X2)|big_f(h(X1,X2),X1)),inference(cn,[status(thm)],[31,theory(equality)])). cnf(38,conjecture-derived,(equal(a, h(X1,X2))|equal(h(X1,X2), X2)),inference(pm,[status(thm)],[1,32,theory(equality)])). cnf(51,conjecture-derived,(equal(h(X5,X6), a)|~equal(X6, a)),inference(ef,[status(thm)],[38,theory(equality)])). cnf(54,conjecture-derived,(equal(h(X1,X2), X2)|~equal(a, X2)|~equal(h(X1,X2), a)|~equal(X1, b)),inference(pm,[status(thm)],[25,38,theory(equality)])). cnf(85,conjecture-derived,(~equal(a, X2)|~equal(h(X1,X2), a)|~equal(X1, b)),inference(csr,[status(thm)],[54,25])). cnf(86,conjecture-derived,(~equal(a, X2)|~equal(X1, b)),inference(csr,[status(thm)],[85,51])). cnf(87,conjecture-derived,(epred1_0|~equal(a, X2)),inference(split,[split(esplit,[])],[86])). cnf(88,conjecture-derived,(epred2_0|~equal(X1, b)),inference(split,[split(esplit,[])],[86])). cnf(89,conjecture-derived,(~epred2_0|~epred1_0),inference(split,[split(esplit,[])],[86])). cnf(90,conjecture-derived,(epred1_0),inference(er,[status(thm)],[87,theory(equality)])). cnf(92,conjecture-derived,(~epred2_0|false),inference(rw,[status(thm)],[89,90,theory(equality)])). cnf(93,conjecture-derived,(~epred2_0),inference(cn,[status(thm)],[92,theory(equality)])). cnf(94,conjecture-derived,(~equal(X1, b)),inference(sr,[status(thm)],[88,93,theory(equality)])). cnf(95,conjecture-derived,(false),inference(er,[status(thm)],[94,theory(equality)])). cnf(97,conjecture-derived,(false),95,['proof']). # Proof object ends here.
# Problem is unsatisfiable, constructing proof object # TSTP exit status: Unsatisfiable # Proof object starts here. fof(1, axiom,?[X1]:?[X2]:![X3]:![X4]:(big_f(X3,X4)<=>(equal(X3, X1)&equal(X4, X2))),unknown). fof(2, conjecture,?[X2]:![X4]:(?[X1]:![X3]:(big_f(X3,X4)<=>equal(X3, X1))<=>equal(X4, X2)),unknown). fof(3, assumption-derived,~(?[X2]:![X4]:(?[X1]:![X3]:(big_f(X3,X4)<=>equal(X3, X1))<=>equal(X4, X2))),inference(assume_negation,[status(cth)],[2])). fof(4, plain-derived,?[X1]:?[X2]:![X3]:![X4]:((~(big_f(X3,X4))|(equal(X3, X1)&equal(X4, X2)))&((~(equal(X3, X1))|~(equal(X4, X2)))|big_f(X3,X4))),inference(fof_nnf,[status(thm)],[1])). fof(5, plain-derived,?[X1]:?[X2]:(![X3]:![X4]:(~(big_f(X3,X4))|(equal(X3, X1)&equal(X4, X2)))&![X3]:![X4]:((~(equal(X3, X1))|~(equal(X4, X2)))|big_f(X3,X4))),inference(shift_quantors,[status(thm)],[4])). fof(6, plain-derived,?[X5]:?[X6]:(![X7]:![X8]:(~(big_f(X7,X8))|(equal(X7, X5)&equal(X8, X6)))&![X9]:![X10]:((~(equal(X9, X5))|~(equal(X10, X6)))|big_f(X9,X10))),inference(variable_rename,[status(thm)],[5])). fof(7, plain-derived,(![X7]:![X8]:(~(big_f(X7,X8))|(equal(X7, esk1_0)&equal(X8, esk2_0)))&![X9]:![X10]:((~(equal(X9, esk1_0))|~(equal(X10, esk2_0)))|big_f(X9,X10))),inference(skolemize,[status(sab)],[6])). fof(8, plain-derived,![X7]:![X8]:![X9]:![X10]:(((equal(X7, esk1_0)|~(big_f(X7,X8)))&(equal(X8, esk2_0)|~(big_f(X7,X8))))&((~(equal(X9, esk1_0))|~(equal(X10, esk2_0)))|big_f(X9,X10))),inference(distribute,[status(thm)],[7])). cnf(9,plain-derived,(big_f(X9,X10)|~equal(X10, esk2_0)|~equal(X9, esk1_0)),inference(split_conjunct,[status(thm)],[8])). cnf(10,plain-derived,(equal(X8, esk2_0)|~big_f(X7,X8)),inference(split_conjunct,[status(thm)],[8])). cnf(11,plain-derived,(equal(X7, esk1_0)|~big_f(X7,X8)),inference(split_conjunct,[status(thm)],[8])). fof(12, assumption-derived,![X2]:?[X4]:((![X1]:?[X3]:((~(big_f(X3,X4))|~(equal(X3, X1)))&(big_f(X3,X4)|equal(X3, X1)))|~(equal(X4, X2)))&(?[X1]:![X3]:((big_f(X3,X4)&equal(X3, X1))|(~(big_f(X3,X4))&~(equal(X3, X1))))|equal(X4, X2))),inference(fof_nnf,[status(thm)],[3])). fof(13, assumption-derived,![X5]:?[X6]:((![X7]:?[X8]:((~(big_f(X8,X6))|~(equal(X8, X7)))&(big_f(X8,X6)|equal(X8, X7)))|~(equal(X6, X5)))&(?[X9]:![X10]:((big_f(X10,X6)&equal(X10, X9))|(~(big_f(X10,X6))&~(equal(X10, X9))))|equal(X6, X5))),inference(variable_rename,[status(thm)],[12])). fof(14, assumption-derived,![X5]:((![X7]:((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))&(big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))&(![X10]:((big_f(X10,esk3_1(X5))&equal(X10, esk5_1(X5)))|(~(big_f(X10,esk3_1(X5)))&~(equal(X10, esk5_1(X5)))))|equal(esk3_1(X5), X5))),inference(skolemize,[status(sab)],[13])). fof(15, assumption-derived,![X5]:![X7]:![X10]:((((~(big_f(esk4_2(X5,X7),esk3_1(X5)))|~(equal(esk4_2(X5,X7), X7)))|~(equal(esk3_1(X5), X5)))&((big_f(esk4_2(X5,X7),esk3_1(X5))|equal(esk4_2(X5,X7), X7))|~(equal(esk3_1(X5), X5))))&((((~(big_f(X10,esk3_1(X5)))|big_f(X10,esk3_1(X5)))|equal(esk3_1(X5), X5))&((~(equal(X10, esk5_1(X5)))|big_f(X10,esk3_1(X5)))|equal(esk3_1(X5), X5)))&(((~(big_f(X10,esk3_1(X5)))|equal(X10, esk5_1(X5)))|equal(esk3_1(X5), X5))&((~(equal(X10, esk5_1(X5)))|equal(X10, esk5_1(X5)))|equal(esk3_1(X5), X5))))),inference(distribute,[status(thm)],[14])). cnf(18,conjecture-derived,(equal(esk3_1(X5), X5)|big_f(X10,esk3_1(X5))|~equal(X10, esk5_1(X5))),inference(split_conjunct,[status(thm)],[15])). cnf(20,conjecture-derived,(equal(esk4_2(X5,X7), X7)|big_f(esk4_2(X5,X7),esk3_1(X5))|~equal(esk3_1(X5), X5)),inference(split_conjunct,[status(thm)],[15])). cnf(21,conjecture-derived,(~equal(esk3_1(X5), X5)|~equal(esk4_2(X5,X7), X7)|~big_f(esk4_2(X5,X7),esk3_1(X5))),inference(split_conjunct,[status(thm)],[15])). cnf(24,conjecture-derived,(~equal(esk3_1(X1), X1)|~equal(esk4_2(X1,X2), X2)|~equal(esk1_0, esk4_2(X1,X2))|~equal(esk2_0, esk3_1(X1))),inference(pm,[status(thm)],[21,9,theory(equality)])). cnf(26,conjecture-derived,(equal(esk3_1(X1), X1)|big_f(esk5_1(X1),esk3_1(X1))),inference(er,[status(thm)],[18,theory(equality)])). cnf(27,conjecture-derived,(equal(esk1_0, esk4_2(X1,X2))|equal(esk4_2(X1,X2), X2)|~equal(esk3_1(X1), X1)),inference(pm,[status(thm)],[11,20,theory(equality)])). cnf(28,conjecture-derived,(equal(esk2_0, esk3_1(X1))|equal(esk4_2(X1,X2), X2)|~equal(esk3_1(X1), X1)),inference(pm,[status(thm)],[10,20,theory(equality)])). cnf(31,conjecture-derived,(equal(esk1_0, esk5_1(X1))|equal(esk3_1(X1), X1)),inference(pm,[status(thm)],[11,26,theory(equality)])). cnf(32,conjecture-derived,(equal(esk2_0, esk3_1(X1))|equal(esk3_1(X1), X1)),inference(pm,[status(thm)],[10,26,theory(equality)])). cnf(35,conjecture-derived,(big_f(esk1_0,esk3_1(X1))|equal(esk3_1(X1), X1)),inference(pm,[status(thm)],[26,31,theory(equality)])). cnf(36,conjecture-derived,(equal(esk3_1(X2), X2)|~equal(esk2_0, X2)),inference(ef,[status(thm)],[32,theory(equality)])). cnf(50,conjecture-derived,(~big_f(esk4_2(X1,X2),X1)|~equal(esk3_1(X1), X1)|~equal(esk4_2(X1,X2), X2)|~equal(esk2_0, X1)),inference(pm,[status(thm)],[21,36,theory(equality)])). cnf(64,conjecture-derived,(big_f(esk1_0,esk2_0)|equal(esk3_1(X1), X1)),inference(pm,[status(thm)],[35,32,theory(equality)])). cnf(79,conjecture-derived,(~big_f(esk4_2(X1,X2),X1)|~equal(esk4_2(X1,X2), X2)|~equal(esk2_0, X1)),inference(csr,[status(thm)],[50,36])). cnf(80,conjecture-derived,(~big_f(esk4_2(X1,X2),X1)|~equal(esk4_2(X1,X2), X2)),inference(csr,[status(thm)],[79,10])). cnf(100,conjecture-derived,(equal(esk3_1(X1), esk2_0)|equal(esk4_2(X1,X2), X2)),inference(csr,[status(thm)],[28,32])). cnf(104,conjecture-derived,(equal(esk3_1(X1), esk2_0)|~big_f(X2,X1)|~equal(esk4_2(X1,X2), X2)),inference(pm,[status(thm)],[80,100,theory(equality)])). cnf(108,conjecture-derived,(equal(esk3_1(X1), esk2_0)|~big_f(X2,X1)),inference(csr,[status(thm)],[104,100])). cnf(113,conjecture-derived,(equal(esk3_1(esk2_0), esk2_0)|equal(esk3_1(X1), X1)),inference(pm,[status(thm)],[108,64,theory(equality)])). cnf(136,conjecture-derived,(equal(esk3_1(esk2_0), esk2_0)),inference(ef,[status(thm)],[113,theory(equality)])). cnf(174,conjecture-derived,(equal(esk4_2(esk2_0,X1), esk1_0)|equal(esk4_2(esk2_0,X1), X1)),inference(pm,[status(thm)],[27,136,theory(equality)])). cnf(250,conjecture-derived,(equal(esk4_2(esk2_0,X1), X1)|~equal(esk1_0, X1)),inference(ef,[status(thm)],[174,theory(equality)])). cnf(291,conjecture-derived,(~equal(esk3_1(esk2_0), esk2_0)|~equal(esk4_2(esk2_0,X1), esk1_0)|~equal(esk1_0, X1)),inference(pm,[status(thm)],[24,250,theory(equality)])). cnf(304,conjecture-derived,(false|~equal(esk4_2(esk2_0,X1), esk1_0)|~equal(esk1_0, X1)),inference(rw,[status(thm)],[291,136,theory(equality)])). cnf(305,conjecture-derived,(~equal(esk4_2(esk2_0,X1), esk1_0)|~equal(esk1_0, X1)),inference(cn,[status(thm)],[304,theory(equality)])). cnf(309,conjecture-derived,(~equal(X1, esk1_0)),inference(pm,[status(thm)],[305,250,theory(equality)])). cnf(311,conjecture-derived,(false),inference(er,[status(thm)],[309,theory(equality)])). cnf(314,conjecture-derived,(false),311,['proof']). # Proof object ends here.
======================= Model #1 at 0.04 seconds: zero: 0 greater : | 0 1 --+---- 0 | T T 1 | F F e: 0 number_of_organizations : | 0 1 --+---- 0 | 0 0 1 | 0 0 an_organisation: 0 appear : | 0 1 --+---- 0 | 0 1 1 | 0 0 environment : 0 1 ------- F T sk1 : | 0 1 --+---- 0 | 0 0 1 | 0 0 Dimension 3 table for subpopulation not printed cardinality_at_time : | 0 1 --+---- 0 | 0 0 1 | 0 1 efficient_producers: 0 in_environment : | 0 1 --+---- 0 | F F 1 | F T first_movers: 1 greater_or_equal : | 0 1 --+---- 0 | T T 1 | F T sk2: 1 end_of_model
-------- Model 1 at 0.02 seconds -------- e : 0 an_organisation : 0 zero : 0 efficient_producers : 0 first_movers : 1 sk2 : 1 appear : | 0 1 --+---- 0 | 0 1 1 | 0 0 number_of_organizations : | 0 1 --+---- 0 | 0 0 1 | 0 0 sk1 : | 0 1 --+---- 0 | 0 0 1 | 0 0 cardinality_at_time : | 0 1 --+---- 0 | 0 0 1 | 0 1 environment : 0 1 ------- 0 1 greater : | 0 1 --+---- 0 | 1 1 1 | 0 0 in_environment : | 0 1 --+---- 0 | 0 0 1 | 0 1 greater_or_equal : | 0 1 --+---- 0 | 1 1 1 | 0 1 Sorry, no pretty printing yet for arity 3. subpopulation(0,0,0) = 0. subpopulation(0,0,1) = 0. subpopulation(0,1,0) = 1. subpopulation(0,1,1) = 1. subpopulation(1,0,0) = 0. subpopulation(1,0,1) = 0. subpopulation(1,1,0) = 0. subpopulation(1,1,1) = 0. -------- end of model --------
Axioms: 1: equalish[M[x,M[y,z]],M[M[x,y],z]] ~defined[x] ~defined[y] ~defined[z] 2 >equalish[A[M[x,y],M[z,y]],M[A[x,z],y]] ~defined[x] ~defined[z] ~defined[y] 3 >equalish[A[x,A[y,z]],A[A[x,y],z]] ~defined[x] ~defined[y] ~defined[z] 4: LE[x,y] LE[y,x] ~defined[x] ~defined[y] 5: LE[0,M[x,y]] ~LE[0,x] ~LE[0,y] 6S equalish[M[x,MI[x]],1] ~defined[x] equalish[x,0] 7S defined[MI[x]] ~defined[x] equalish[x,0] 8: LE[A[x,y],A[z,y]] ~defined[y] ~LE[x,z] 9S>equalish[M[x,y],M[z,y]] ~defined[y] ~equalish[x,z] 10: LE[x,y] ~LE[z,y] ~equalish[z,x] 11S>equalish[A[x,y],A[z,y]] ~defined[y] ~equalish[x,z] 12S equalish[M[x,y],M[y,x]] ~defined[x] ~defined[y] 13: LE[x,y] ~LE[x,z] ~LE[z,y] 14: equalish[x,y] ~LE[x,y] ~LE[y,x] 15 >defined[M[x,y]] ~defined[x] ~defined[y] 16 >equalish[A[x,y],A[y,x]] ~defined[x] ~defined[y] 17 >defined[A[x,y]] ~defined[x] ~defined[y] 18S>equalish[x,y] ~equalish[x,z] ~equalish[z,y] 19S>equalish[A[x,AI[x]],0] ~defined[x] 20S equalish[M[1,x],x] ~defined[x] 21S>equalish[A[0,x],x] ~defined[x] 22S>defined[AI[x]] ~defined[x] 23: equalish[x,x] ~defined[x] 24S>equalish[x,y] ~equalish[y,x] 25: defined[1] 26: ~equalish[0,1] 27S>defined[0] Negated conclusion: 28S ~equalish[c,AI[d]] 29S>equalish[M[AI[a],b],c] 30S>equalish[M[a,b],d] 31S>defined[a] 32S>defined[b] 33S>defined[c] 34S>defined[d] --------------- Phase 0 clauses used in proof: 35S>defined[AI[d]] 36S>equalish[M[1,d],d] 37S>equalish[A[d,AI[d]],0] 40S>~equalish[c,x] ~equalish[x,AI[d]] 41S>equalish[x,AI[d]] ~equalish[x,A[0,AI[d]]] 45S>equalish[0,x] ~equalish[A[d,AI[d]],x] 53S>equalish[x,d] ~equalish[x,M[a,b]] 54S>equalish[x,d] ~equalish[M[a,b],x] 55S>equalish[d,M[a,b]] Phases 1 and 2 clauses used in proof: 57S>(33a,21b) equalish[A[0,c],c] 58S>(57a,24b) equalish[c,A[0,c]] 59S>(24b,11a) equalish[A[x,y],A[z,y]] ~defined[y] ~equalish[z,x] 60S>(59a,18c) ~defined[x] ~equalish[y,z] equalish[u,A[y,x]] ~equalish[u,A[z,x]] 61S>(60a,33a) ~equalish[x,y] equalish[z,A[x,c]] ~equalish[z,A[y,c]] 62S>(61a,37a) equalish[x,A[A[d,AI[d]],c]] ~equalish[x,A[0,c]] 63: 62|{c/x} equalish[c,A[A[d,AI[d]],c]] ~equalish[c,A[0,c]] 64S>(63b,58a) equalish[c,A[A[d,AI[d]],c]] 65S>(35a,17c) defined[A[x,AI[d]]] ~defined[x] 66S>(65a,16b) ~defined[x] equalish[A[A[x,AI[d]],y],A[y,A[x,AI[d]]]] ~defined[y] 67S>(66b,18c) ~defined[x] ~defined[y] equalish[z,A[y,A[x,AI[d]]]] ~equalish[z,A[A[x,AI[d]],y]] 68S>(67b,33a) ~defined[x] equalish[y,A[c,A[x,AI[d]]]] ~equalish[y,A[A[x,AI[d]],c]] 69S>(68a,34a) equalish[x,A[c,A[d,AI[d]]]] ~equalish[x,A[A[d,AI[d]],c]] 70: 69|{c/x} equalish[c,A[c,A[d,AI[d]]]] ~equalish[c,A[A[d,AI[d]],c]] 71S>(70b,64a) equalish[c,A[c,A[d,AI[d]]]] 72S>(35a,3d) equalish[A[x,A[y,AI[d]]],A[A[x,y],AI[d]]] ~defined[x] ~defined[y] 73S>(72b,33a) equalish[A[c,A[x,AI[d]]],A[A[c,x],AI[d]]] ~defined[x] 74S>(73a,18c) ~defined[x] equalish[y,A[A[c,x],AI[d]]] ~equalish[y,A[c,A[x,AI[d]]]] 75S>(74a,34a) equalish[x,A[A[c,d],AI[d]]] ~equalish[x,A[c,A[d,AI[d]]]] 76: 75|{c/x} equalish[c,A[A[c,d],AI[d]]] ~equalish[c,A[c,A[d,AI[d]]]] 77S>(76b,71a) equalish[c,A[A[c,d],AI[d]]] 78S>(41b,11a) equalish[A[x,AI[d]],AI[d]] ~defined[AI[d]] ~equalish[x,0] 79S>(78b,35a) equalish[A[x,AI[d]],AI[d]] ~equalish[x,0] 80S>(79b,18a) equalish[A[x,AI[d]],AI[d]] ~equalish[x,y] ~equalish[y,0] 81S>(80b,16a) equalish[A[A[x,y],AI[d]],AI[d]] ~equalish[A[y,x],0] ~defined[x] ~defined[y] 82S>(81a,40b) ~equalish[A[x,y],0] ~defined[y] ~defined[x] ~equalish[c,A[A[y,x],AI[d]]] 83S>(82b,33a) ~equalish[A[x,c],0] ~defined[x] ~equalish[c,A[A[c,x],AI[d]]] 84S>(83b,34a) ~equalish[A[d,c],0] ~equalish[c,A[A[c,d],AI[d]]] 85S>(84b,77a) ~equalish[A[d,c],0] 86S>(36a,11c) equalish[A[M[1,d],x],A[d,x]] ~defined[x] 87S>(86b,33a) equalish[A[M[1,d],c],A[d,c]] 88S>(87a,24b) equalish[A[d,c],A[M[1,d],c]] 89S>(88a,18b) equalish[A[d,c],x] ~equalish[A[M[1,d],c],x] 90S>(89a,85a) ~equalish[A[M[1,d],c],0] 91S>(36a,11c) equalish[A[M[1,d],x],A[d,x]] ~defined[x] 92S>(91a,18b) ~defined[x] equalish[A[M[1,d],x],y] ~equalish[A[d,x],y] 93S>(92b,18b) ~defined[x] ~equalish[A[d,x],y] equalish[A[M[1,d],x],z] ~equalish[y,z] 94S>(93b*16a) ~defined[x] equalish[A[M[1,d],x],y] ~equalish[A[x,d],y] ~defined[d] 95S>(94d,34a) ~defined[x] equalish[A[M[1,d],x],y] ~equalish[A[x,d],y] 96S>(95a,33a) equalish[A[M[1,d],c],x] ~equalish[A[c,d],x] 97S>(96a,90a) ~equalish[A[c,d],0] 98S>(34a,11b) equalish[A[x,d],A[y,d]] ~equalish[x,y] 99S>(98b,29a) equalish[A[M[AI[a],b],d],A[c,d]] 100S>(99a,18c) equalish[x,A[c,d]] ~equalish[x,A[M[AI[a],b],d]] 101S>(100a,24b) ~equalish[x,A[M[AI[a],b],d]] equalish[A[c,d],x] 102: 101|{0/x} ~equalish[0,A[M[AI[a],b],d]] equalish[A[c,d],0] 103S>(102b,97a) ~equalish[0,A[M[AI[a],b],d]] 104S>(34a,16b) equalish[A[d,x],A[x,d]] ~defined[x] 105S>(104b,15a) equalish[A[d,M[x,y]],A[M[x,y],d]] ~defined[x] ~defined[y] 106S>(105b,22a) equalish[A[d,M[AI[x],y]],A[M[AI[x],y],d]] ~defined[y] ~defined[x] 107S>(106a,18c) ~defined[x] ~defined[y] equalish[z,A[M[AI[y],x],d]] ~equalish[z,A[d,M[AI[y],x]]] 108S>(107b,31a) ~defined[x] equalish[y,A[M[AI[a],x],d]] ~equalish[y,A[d,M[AI[a],x]]] 109S>(108a,32a) equalish[x,A[M[AI[a],b],d]] ~equalish[x,A[d,M[AI[a],b]]] 110S>(109a,103a) ~equalish[0,A[d,M[AI[a],b]]] 111S>(32a,15c) defined[M[x,b]] ~defined[x] 112S>(111b,22a) defined[M[AI[x],b]] ~defined[x] 113S>(112a,11b) ~defined[x] equalish[A[y,M[AI[x],b]],A[z,M[AI[x],b]]] ~equalish[y,z] 114S>(113b,18c) ~defined[x] ~equalish[y,z] equalish[u,A[z,M[AI[x],b]]] ~equalish[u,A[y,M[AI[x],b]]] 115S>(114b,30a) ~defined[x] equalish[y,A[d,M[AI[x],b]]] ~equalish[y,A[M[a,b],M[AI[x],b]]] 116S>(115a,31a) equalish[x,A[d,M[AI[a],b]]] ~equalish[x,A[M[a,b],M[AI[a],b]]] 117S>(116a,110a) ~equalish[0,A[M[a,b],M[AI[a],b]]] 118S>(32a,2d) equalish[A[M[x,b],M[y,b]],M[A[x,y],b]] ~defined[x] ~defined[y] 119S>(118a,24b) ~defined[x] ~defined[y] equalish[M[A[x,y],b],A[M[x,b],M[y,b]]] 120S>(119b,22a) ~defined[x] equalish[M[A[x,AI[y]],b],A[M[x,b],M[AI[y],b]]] ~defined[y] 121S>(120b,18c) ~defined[x] ~defined[y] equalish[z,A[M[x,b],M[AI[y],b]]] ~equalish[z,M[A[x,AI[y]],b]] 122S>(121b,31a) ~defined[x] equalish[y,A[M[x,b],M[AI[a],b]]] ~equalish[y,M[A[x,AI[a]],b]] 123S>(122a,31a) equalish[x,A[M[a,b],M[AI[a],b]]] ~equalish[x,M[A[a,AI[a]],b]] 124S>(123a,117a) ~equalish[0,M[A[a,AI[a]],b]] 125S>(24b,19a) equalish[0,A[x,AI[x]]] ~defined[x] 126S>(125b,31a) equalish[0,A[a,AI[a]]] 127S>(126a,9c) equalish[M[0,x],M[A[a,AI[a]],x]] ~defined[x] 128S>(127a,18c) ~defined[x] equalish[y,M[A[a,AI[a]],x]] ~equalish[y,M[0,x]] 129S>(128a,32a) equalish[x,M[A[a,AI[a]],b]] ~equalish[x,M[0,b]] 130S>(129a,124a) ~equalish[0,M[0,b]] 131S>(21a,18c) ~defined[x] equalish[y,x] ~equalish[y,A[0,x]] 132S>(131a,15a) equalish[x,M[y,z]] ~equalish[x,A[0,M[y,z]]] ~defined[y] ~defined[z] 133S>(132b,24a) equalish[x,M[y,z]] ~defined[y] ~defined[z] ~equalish[A[0,M[y,z]],x] 134S>(133b,27a) equalish[x,M[0,y]] ~defined[y] ~equalish[A[0,M[0,y]],x] 135S>(134b,32a) equalish[x,M[0,b]] ~equalish[A[0,M[0,b]],x] 136S>(135a,130a) ~equalish[A[0,M[0,b]],0] 137S>(54a,11c) ~equalish[M[a,b],x] equalish[A[x,y],A[d,y]] ~defined[y] 138S>(137b,45b) ~equalish[M[a,b],d] ~defined[AI[d]] equalish[0,A[d,AI[d]]] 139S>(138a,30a) ~defined[AI[d]] equalish[0,A[d,AI[d]]] 140S>(139a,35a) equalish[0,A[d,AI[d]]] 141S>(140a,11c) equalish[A[0,x],A[A[d,AI[d]],x]] ~defined[x] 142S>(141b,15a) equalish[A[0,M[x,y]],A[A[d,AI[d]],M[x,y]]] ~defined[x] ~defined[y] 143S>(142a,18b) ~defined[x] ~defined[y] equalish[A[0,M[x,y]],z] ~equalish[A[A[d,AI[d]],M[x,y]],z] 144S>(143a,27a) ~defined[x] equalish[A[0,M[0,x]],y] ~equalish[A[A[d,AI[d]],M[0,x]],y] 145S>(144a,32a) equalish[A[0,M[0,b]],x] ~equalish[A[A[d,AI[d]],M[0,b]],x] 146S>(145a,136a) ~equalish[A[A[d,AI[d]],M[0,b]],0] 147S>(35a,17c) defined[A[x,AI[d]]] ~defined[x] 148S>(147b,34a) defined[A[d,AI[d]]] 149S>(148a,16b) equalish[A[A[d,AI[d]],x],A[x,A[d,AI[d]]]] ~defined[x] 150S>(149b,15a) equalish[A[A[d,AI[d]],M[x,y]],A[M[x,y],A[d,AI[d]]]] ~defined[x] ~defined[y] 151S>(150a,18b) ~defined[x] ~defined[y] equalish[A[A[d,AI[d]],M[x,y]],z] ~equalish[A[M[x,y],A[d,AI[d]]],z] 152S>(151a,27a) ~defined[x] equalish[A[A[d,AI[d]],M[0,x]],y] ~equalish[A[M[0,x],A[d,AI[d]]],y] 153S>(152a,32a) equalish[A[A[d,AI[d]],M[0,b]],x] ~equalish[A[M[0,b],A[d,AI[d]]],x] 154S>(153a,146a) ~equalish[A[M[0,b],A[d,AI[d]]],0] 155S>(35a,3d) equalish[A[x,A[y,AI[d]]],A[A[x,y],AI[d]]] ~defined[x] ~defined[y] 156S>(155b,15a) equalish[A[M[x,y],A[z,AI[d]]],A[A[M[x,y],z],AI[d]]] ~defined[z] ~defined[x] ~defined[y] 157S>(156b,34a) equalish[A[M[x,y],A[d,AI[d]]],A[A[M[x,y],d],AI[d]]] ~defined[x] ~defined[y] 158S>(157b,27a) equalish[A[M[0,x],A[d,AI[d]]],A[A[M[0,x],d],AI[d]]] ~defined[x] 159S>(158a,18b) ~defined[x] equalish[A[M[0,x],A[d,AI[d]]],y] ~equalish[A[A[M[0,x],d],AI[d]],y] 160S>(159a,32a) equalish[A[M[0,b],A[d,AI[d]]],x] ~equalish[A[A[M[0,b],d],AI[d]],x] 161S>(160a,154a) ~equalish[A[A[M[0,b],d],AI[d]],0] 162S>(34a,16c) equalish[A[x,d],A[d,x]] ~defined[x] 163S>(162b,15a) equalish[A[M[x,y],d],A[d,M[x,y]]] ~defined[x] ~defined[y] 164S>(163b,27a) equalish[A[M[0,x],d],A[d,M[0,x]]] ~defined[x] 165S>(164a,11c) ~defined[x] equalish[A[A[M[0,x],d],y],A[A[d,M[0,x]],y]] ~defined[y] 166S>(165b,18b) ~defined[x] ~defined[y] equalish[A[A[M[0,x],d],y],z] ~equalish[A[A[d,M[0,x]],y],z] 167S>(166a,32a) ~defined[x] equalish[A[A[M[0,b],d],x],y] ~equalish[A[A[d,M[0,b]],x],y] 168S>(167a,35a) equalish[A[A[M[0,b],d],AI[d]],x] ~equalish[A[A[d,M[0,b]],AI[d]],x] 169S>(168a,161a) ~equalish[A[A[d,M[0,b]],AI[d]],0] 170S>(53b,9a) equalish[M[x,b],d] ~defined[b] ~equalish[x,a] 171S>(170b,32a) equalish[M[x,b],d] ~equalish[x,a] 172S>(171b,21a) equalish[M[A[0,a],b],d] ~defined[a] 173S>(172b,31a) equalish[M[A[0,a],b],d] 174S>(173a,11c) equalish[A[M[A[0,a],b],x],A[d,x]] ~defined[x] 175S>(174a,18b) ~defined[x] equalish[A[M[A[0,a],b],x],y] ~equalish[A[d,x],y] 176S>(175a,35a) equalish[A[M[A[0,a],b],AI[d]],x] ~equalish[A[d,AI[d]],x] 177S>(176b,37a) equalish[A[M[A[0,a],b],AI[d]],0] 178S>(32a,15c) defined[M[x,b]] ~defined[x] 179S>(178b,27a) defined[M[0,b]] 180S>(179a,11b) equalish[A[x,M[0,b]],A[y,M[0,b]]] ~equalish[x,y] 181S>(180a,11c) ~equalish[x,y] equalish[A[A[x,M[0,b]],z],A[A[y,M[0,b]],z]] ~defined[z] 182S>(181b,18b) ~equalish[x,y] ~defined[z] equalish[A[A[x,M[0,b]],z],u] ~equalish[A[A[y,M[0,b]],z],u] 183S>(182b,35a) ~equalish[x,y] equalish[A[A[x,M[0,b]],AI[d]],z] ~equalish[A[A[y,M[0,b]],AI[d]],z] 184S>(183a,55a) equalish[A[A[d,M[0,b]],AI[d]],x] ~equalish[A[A[M[a,b],M[0,b]],AI[d]],x] 185S>(184a,169a) ~equalish[A[A[M[a,b],M[0,b]],AI[d]],0] 186S>(35a,11b) equalish[A[x,AI[d]],A[y,AI[d]]] ~equalish[x,y] 187S>(186b,9a) equalish[A[M[x,y],AI[d]],A[M[z,y],AI[d]]] ~defined[y] ~equalish[x,z] 188S>(187b,32a) equalish[A[M[x,b],AI[d]],A[M[y,b],AI[d]]] ~equalish[x,y] 189S>(188b,16a) equalish[A[M[A[x,y],b],AI[d]],A[M[A[y,x],b],AI[d]]] ~defined[x] ~defined[y] 190S>(189a,18b) ~defined[x] ~defined[y] equalish[A[M[A[x,y],b],AI[d]],z] ~equalish[A[M[A[y,x],b],AI[d]],z] 191S>(190b,27a) ~defined[x] equalish[A[M[A[x,0],b],AI[d]],y] ~equalish[A[M[A[0,x],b],AI[d]],y] 192S>(191a,31a) equalish[A[M[A[a,0],b],AI[d]],x] ~equalish[A[M[A[0,a],b],AI[d]],x] 193: 192|{0/x} equalish[A[M[A[a,0],b],AI[d]],0] ~equalish[A[M[A[0,a],b],AI[d]],0] 194S>(193b,177a) equalish[A[M[A[a,0],b],AI[d]],0] 195S>(32a,2d) equalish[A[M[x,b],M[y,b]],M[A[x,y],b]] ~defined[x] ~defined[y] 196S>(195b,31a) equalish[A[M[a,b],M[x,b]],M[A[a,x],b]] ~defined[x] 197S>(196b,27a) equalish[A[M[a,b],M[0,b]],M[A[a,0],b]] 198S>(197a,11c) equalish[A[A[M[a,b],M[0,b]],x],A[M[A[a,0],b],x]] ~defined[x] 199S>(198a,18b) ~defined[x] equalish[A[A[M[a,b],M[0,b]],x],y] ~equalish[A[M[A[a,0],b],x],y] 200S>(199a,35a) equalish[A[A[M[a,b],M[0,b]],AI[d]],x] ~equalish[A[M[A[a,0],b],AI[d]],x] 201S>(200a,185a) ~equalish[A[M[A[a,0],b],AI[d]],0] 202S>(201a,194a) []
---------------- PROOF ---------------- 1 [] -big_f(A,B)|equal(A,a). 2 [] -big_f(A,B)|equal(B,b). 3 [] -equal(A,a)| -equal(B,b)|big_f(A,B). 4 [] -big_f(A,f(B))| -equal(A,g(B))|equal(f(B),B). 5 [] -equal(A,g(B))|big_f(A,f(B))|equal(f(B),B). 8 [] -equal(f(A),A)|big_f(h(A,B),f(A))|equal(h(A,B),B). 9 [] -equal(f(A),A)| -equal(h(A,B),B)| -big_f(h(A,B),f(A)). 11 [] equal(A,A). 13 [hyper,11,5] big_f(g(A),f(A))|equal(f(A),A). 14 [hyper,11,3,11] big_f(a,b). 21 [hyper,13,3,11] big_f(g(b),f(b))|big_f(a,f(b)). 62 [hyper,21,4,11] big_f(a,f(b))|equal(f(b),b). 79 [hyper,62,3,11,factor_simp] big_f(a,f(b)). 81,80 [hyper,79,2] equal(f(b),b). 126 [hyper,80,8,demod,81] big_f(h(b,A),b)|equal(h(b,A),A). 319 [hyper,126,3,80,demod,81,factor_simp] big_f(h(b,a),b). 331,330 [hyper,319,1] equal(h(b,a),a). 335 [para_from,330.1.1,9.3.1,demod,81,331,81,unit_del,11,11,14] $F. ------------ end of proof -------------
---------------- PROOF ---------------- 1 [] animal(A)| -wolf(A). 2 [] animal(A)| -fox(A). 3 [] animal(A)| -bird(A). 5 [] animal(A)| -snail(A). 6 [] plant(A)| -grain(A). 7 [] eats(A,B)|eats(A,C)| -animal(A)| -plant(B)| -animal(C)| -plant(D)| -much_smaller(C,A)| -eats(C,D). 9 [] much_smaller(A,B)| -snail(A)| -bird(B). 10 [] much_smaller(A,B)| -bird(A)| -fox(B). 11 [] much_smaller(A,B)| -fox(A)| -wolf(B). 13 [] -wolf(A)| -grain(B)| -eats(A,B). 15 [] -bird(A)| -snail(B)| -eats(A,B). 18 [] plant(snail_food_of(A))| -snail(A). 19 [] eats(A,snail_food_of(A))| -snail(A). 20 [] -animal(A)| -animal(B)| -grain(C)| -eats(A,B)| -eats(B,C). 23 [factor,7.4.6] eats(A,B)|eats(A,C)| -animal(A)| -plant(B)| -animal(C)| -much_smaller(C,A)| -eats(C,B). 28 [] wolf(a_wolf). 29 [] fox(a_fox). 30 [] bird(a_bird). 32 [] snail(a_snail). 33 [] grain(a_grain). 34 [hyper,28,1] animal(a_wolf). 35 [hyper,29,11,28] much_smaller(a_fox,a_wolf). 36 [hyper,29,2] animal(a_fox). 37 [hyper,30,10,29] much_smaller(a_bird,a_fox). 38 [hyper,30,3] animal(a_bird). 44 [hyper,32,19] eats(a_snail,snail_food_of(a_snail)). 45 [hyper,32,18] plant(snail_food_of(a_snail)). 46 [hyper,32,9,30] much_smaller(a_snail,a_bird). 47 [hyper,32,5] animal(a_snail). 48 [hyper,33,6] plant(a_grain). 50 [hyper,44,7,38,48,47,45,46] eats(a_bird,a_grain)|eats(a_bird,a_snail). 55 [hyper,50,15,30,32] eats(a_bird,a_grain). 56 [hyper,55,23,36,48,38,37] eats(a_fox,a_grain)|eats(a_fox,a_bird). 62 [hyper,56,20,36,38,33,55] eats(a_fox,a_grain). 63 [hyper,62,23,34,48,36,35] eats(a_wolf,a_grain)|eats(a_wolf,a_fox). 67 [hyper,63,13,28,33] eats(a_wolf,a_fox). 69 [hyper,67,20,34,36,33,62] $F. ------------ end of proof -------------
NOTE: In order to save space in the representation of the model, sometimes, some entries in some of the definition tables are missing. This is not a bug! More detailedly, it might happen that for a model with a domain of size n, for some argument position, only a subset {'1,'2,..,'k} of all domain elements is shown, with k < n. What this means is that the entries for other domain elements 'j (with k < j <= n) occurring at that argument position look the same as entries with 'k at that position. Problem NLP041-1.p is an example where a model is represented in such a way.
an_organisation = '1 appear('1,'1) = '2 appear('1,'2) = '2 appear('2,'1) = '1 appear('2,'2) = '1 cardinality_at_time('1,'1) = '2 cardinality_at_time('1,'2) = '2 cardinality_at_time('2,'1) = '2 cardinality_at_time('2,'2) = '2 e = '1 efficient_producers = '2 environment('1) : FALSE environment('2) : TRUE first_movers = '2 greater('1,'1) : TRUE greater('1,'2) : TRUE greater('2,'1) : FALSE greater('2,'2) : TRUE greater_or_equal('1,'1) : TRUE greater_or_equal('1,'2) : TRUE greater_or_equal('2,'1) : FALSE greater_or_equal('2,'2) : TRUE in_environment('1,'1) : TRUE in_environment('1,'2) : TRUE in_environment('2,'1) : TRUE in_environment('2,'2) : TRUE number_of_organizations('1,'1) = '2 number_of_organizations('1,'2) = '1 number_of_organizations('2,'1) = '2 number_of_organizations('2,'2) = '2 sk1('1,'1) = '2 sk1('1,'2) = '2 sk1('2,'1) = '2 sk1('2,'2) = '2 sk2 = '2 subpopulation('1,'1,'1) : TRUE subpopulation('1,'1,'2) : TRUE subpopulation('1,'2,'1) : TRUE subpopulation('1,'2,'2) : TRUE subpopulation('2,'1,'1) : TRUE subpopulation('2,'1,'2) : TRUE subpopulation('2,'2,'1) : TRUE subpopulation('2,'2,'2) : TRUE zero = '1
abstraction('1,'1) : FALSE abstraction('1,'2) : FALSE abstraction('1,'3) : FALSE abstraction('1,'4) : TRUE act('1,'1) : FALSE act('1,'2) : FALSE act('1,'3) : TRUE act('1,'4) : FALSE actual_world('1) : TRUE agent('1,'1,'1) : TRUE agent('1,'1,'2) : TRUE agent('1,'1,'3) : TRUE agent('1,'1,'4) : TRUE agent('1,'2,'1) : TRUE agent('1,'2,'2) : TRUE agent('1,'2,'3) : TRUE agent('1,'2,'4) : TRUE agent('1,'3,'1) : TRUE agent('1,'3,'2) : FALSE agent('1,'3,'3) : FALSE agent('1,'3,'4) : FALSE agent('1,'4,'1) : TRUE agent('1,'4,'2) : TRUE agent('1,'4,'3) : TRUE agent('1,'4,'4) : FALSE animate('1,'1) : TRUE animate('1,'2) : FALSE animate('1,'3) : FALSE animate('1,'4) : FALSE beverage('1,'1) : FALSE beverage('1,'2) : TRUE beverage('1,'3) : FALSE beverage('1,'4) : FALSE entity('1,'1) : TRUE entity('1,'2) : TRUE entity('1,'3) : FALSE entity('1,'4) : FALSE event('1,'1) : FALSE event('1,'2) : FALSE event('1,'3) : TRUE event('1,'4) : FALSE eventuality('1,'1) : FALSE eventuality('1,'2) : FALSE eventuality('1,'3) : TRUE eventuality('1,'4) : FALSE existent('1,'1) : TRUE existent('1,'2) : TRUE existent('1,'3) : FALSE existent('1,'4) : FALSE female('1,'1) : TRUE female('1,'2) : FALSE female('1,'3) : FALSE female('1,'4) : FALSE food('1,'1) : FALSE food('1,'2) : TRUE food('1,'3) : FALSE food('1,'4) : FALSE forename('1,'1) : FALSE forename('1,'2) : FALSE forename('1,'3) : FALSE forename('1,'4) : TRUE general('1,'1) : FALSE general('1,'2) : FALSE general('1,'3) : FALSE general('1,'4) : TRUE human('1,'1) : TRUE human('1,'2) : FALSE human('1,'3) : FALSE human('1,'4) : FALSE human_person('1,'1) : TRUE human_person('1,'2) : FALSE human_person('1,'3) : FALSE human_person('1,'4) : FALSE impartial('1,'1) : TRUE impartial('1,'2) : TRUE impartial('1,'3) : FALSE impartial('1,'4) : FALSE living('1,'1) : TRUE living('1,'2) : FALSE living('1,'3) : FALSE living('1,'4) : FALSE mia_forename('1,'1) : FALSE mia_forename('1,'2) : FALSE mia_forename('1,'3) : FALSE mia_forename('1,'4) : TRUE nonexistent('1,'1) : FALSE nonexistent('1,'2) : FALSE nonexistent('1,'3) : TRUE nonexistent('1,'4) : TRUE nonhuman('1,'1) : FALSE nonhuman('1,'2) : TRUE nonhuman('1,'3) : TRUE nonhuman('1,'4) : TRUE nonliving('1,'1) : FALSE nonliving('1,'2) : TRUE nonliving('1,'3) : TRUE nonliving('1,'4) : TRUE nonreflexive('1,'1) : FALSE nonreflexive('1,'2) : FALSE nonreflexive('1,'3) : TRUE nonreflexive('1,'4) : TRUE object('1,'1) : FALSE object('1,'2) : TRUE object('1,'3) : FALSE object('1,'4) : FALSE of('1,'1,'1) : FALSE of('1,'1,'2) : TRUE of('1,'1,'3) : TRUE of('1,'1,'4) : TRUE of('1,'2,'1) : FALSE of('1,'2,'2) : TRUE of('1,'2,'3) : TRUE of('1,'2,'4) : TRUE of('1,'3,'1) : FALSE of('1,'3,'2) : TRUE of('1,'3,'3) : TRUE of('1,'3,'4) : TRUE of('1,'4,'1) : TRUE of('1,'4,'2) : TRUE of('1,'4,'3) : TRUE of('1,'4,'4) : TRUE order('1,'1) : FALSE order('1,'2) : FALSE order('1,'3) : TRUE order('1,'4) : FALSE organism('1,'1) : TRUE organism('1,'2) : FALSE organism('1,'3) : FALSE organism('1,'4) : FALSE past('1,'1) : FALSE past('1,'2) : FALSE past('1,'3) : TRUE past('1,'4) : FALSE patient('1,'1,'1) : TRUE patient('1,'1,'2) : TRUE patient('1,'1,'3) : TRUE patient('1,'1,'4) : TRUE patient('1,'2,'1) : TRUE patient('1,'2,'2) : TRUE patient('1,'2,'3) : TRUE patient('1,'2,'4) : TRUE patient('1,'3,'1) : FALSE patient('1,'3,'2) : TRUE patient('1,'3,'3) : TRUE patient('1,'3,'4) : TRUE patient('1,'4,'1) : FALSE patient('1,'4,'2) : FALSE patient('1,'4,'3) : FALSE patient('1,'4,'4) : TRUE relation('1,'1) : FALSE relation('1,'2) : FALSE relation('1,'3) : FALSE relation('1,'4) : TRUE relname('1,'1) : FALSE relname('1,'2) : FALSE relname('1,'3) : FALSE relname('1,'4) : TRUE shake_beverage('1,'1) : FALSE shake_beverage('1,'2) : TRUE shake_beverage('1,'3) : FALSE shake_beverage('1,'4) : FALSE singleton('1,'1) : TRUE singleton('1,'2) : TRUE singleton('1,'3) : TRUE singleton('1,'4) : TRUE skc5 = '1 skc6 = '3 skc7 = '2 skc8 = '4 skc9 = '1 specific('1,'1) : TRUE specific('1,'2) : TRUE specific('1,'3) : TRUE specific('1,'4) : FALSE substance_matter('1,'1) : FALSE substance_matter('1,'2) : TRUE substance_matter('1,'3) : FALSE substance_matter('1,'4) : FALSE thing('1,'1) : TRUE thing('1,'2) : TRUE thing('1,'3) : TRUE thing('1,'4) : TRUE unisex('1,'1) : FALSE unisex('1,'2) : TRUE unisex('1,'3) : TRUE unisex('1,'4) : TRUE woman('1,'1) : TRUE woman('1,'2) : FALSE woman('1,'3) : FALSE woman('1,'4) : FALSE
NOTE: In order to save space in the representation of the model, sometimes, some entries in some of the definition tables are missing. This is not a bug! More detailedly, it might happen that for a model with a domain of size n, for some argument position, only a subset {'1,'2,..,'k} of all domain elements is shown, with k < n. What this means is that the entries for other domain elements 'j (with k < j <= n) occurring at that argument position look the same as entries with 'k at that position. Problem NLP041-1.p is an example where a model is represented in such a way.
an_organisation = '1 appear('1,'1) = '2 appear('1,'2) = '2 appear('2,'1) = '1 appear('2,'2) = '1 cardinality_at_time('1,'1) = '2 cardinality_at_time('1,'2) = '2 cardinality_at_time('2,'1) = '2 cardinality_at_time('2,'2) = '2 e = '1 efficient_producers = '2 environment('1) : FALSE environment('2) : TRUE first_movers = '2 greater('1,'1) : TRUE greater('1,'2) : TRUE greater('2,'1) : FALSE greater('2,'2) : TRUE greater_or_equal('1,'1) : TRUE greater_or_equal('1,'2) : TRUE greater_or_equal('2,'1) : FALSE greater_or_equal('2,'2) : TRUE in_environment('1,'1) : TRUE in_environment('1,'2) : TRUE in_environment('2,'1) : TRUE in_environment('2,'2) : TRUE number_of_organizations('1,'1) = '2 number_of_organizations('1,'2) = '1 number_of_organizations('2,'1) = '2 number_of_organizations('2,'2) = '2 sk1('1,'1) = '2 sk1('1,'2) = '2 sk1('2,'1) = '2 sk1('2,'2) = '2 sk2 = '2 subpopulation('1,'1,'1) : TRUE subpopulation('1,'1,'2) : TRUE subpopulation('1,'2,'1) : TRUE subpopulation('1,'2,'2) : TRUE subpopulation('2,'1,'1) : TRUE subpopulation('2,'1,'2) : TRUE subpopulation('2,'2,'1) : TRUE subpopulation('2,'2,'2) : TRUE zero = '1
abstraction('1,'1) : FALSE abstraction('1,'2) : FALSE abstraction('1,'3) : FALSE abstraction('1,'4) : TRUE act('1,'1) : FALSE act('1,'2) : FALSE act('1,'3) : TRUE act('1,'4) : FALSE actual_world('1) : TRUE agent('1,'1,'1) : TRUE agent('1,'1,'2) : TRUE agent('1,'1,'3) : TRUE agent('1,'1,'4) : TRUE agent('1,'2,'1) : TRUE agent('1,'2,'2) : TRUE agent('1,'2,'3) : TRUE agent('1,'2,'4) : TRUE agent('1,'3,'1) : TRUE agent('1,'3,'2) : FALSE agent('1,'3,'3) : FALSE agent('1,'3,'4) : FALSE agent('1,'4,'1) : TRUE agent('1,'4,'2) : TRUE agent('1,'4,'3) : TRUE agent('1,'4,'4) : FALSE animate('1,'1) : TRUE animate('1,'2) : FALSE animate('1,'3) : FALSE animate('1,'4) : FALSE beverage('1,'1) : FALSE beverage('1,'2) : TRUE beverage('1,'3) : FALSE beverage('1,'4) : FALSE entity('1,'1) : TRUE entity('1,'2) : TRUE entity('1,'3) : FALSE entity('1,'4) : FALSE event('1,'1) : FALSE event('1,'2) : FALSE event('1,'3) : TRUE event('1,'4) : FALSE eventuality('1,'1) : FALSE eventuality('1,'2) : FALSE eventuality('1,'3) : TRUE eventuality('1,'4) : FALSE existent('1,'1) : TRUE existent('1,'2) : TRUE existent('1,'3) : FALSE existent('1,'4) : FALSE female('1,'1) : TRUE female('1,'2) : FALSE female('1,'3) : FALSE female('1,'4) : FALSE food('1,'1) : FALSE food('1,'2) : TRUE food('1,'3) : FALSE food('1,'4) : FALSE forename('1,'1) : FALSE forename('1,'2) : FALSE forename('1,'3) : FALSE forename('1,'4) : TRUE general('1,'1) : FALSE general('1,'2) : FALSE general('1,'3) : FALSE general('1,'4) : TRUE human('1,'1) : TRUE human('1,'2) : FALSE human('1,'3) : FALSE human('1,'4) : FALSE human_person('1,'1) : TRUE human_person('1,'2) : FALSE human_person('1,'3) : FALSE human_person('1,'4) : FALSE impartial('1,'1) : TRUE impartial('1,'2) : TRUE impartial('1,'3) : FALSE impartial('1,'4) : FALSE living('1,'1) : TRUE living('1,'2) : FALSE living('1,'3) : FALSE living('1,'4) : FALSE mia_forename('1,'1) : FALSE mia_forename('1,'2) : FALSE mia_forename('1,'3) : FALSE mia_forename('1,'4) : TRUE nonexistent('1,'1) : FALSE nonexistent('1,'2) : FALSE nonexistent('1,'3) : TRUE nonexistent('1,'4) : TRUE nonhuman('1,'1) : FALSE nonhuman('1,'2) : TRUE nonhuman('1,'3) : TRUE nonhuman('1,'4) : TRUE nonliving('1,'1) : FALSE nonliving('1,'2) : TRUE nonliving('1,'3) : TRUE nonliving('1,'4) : TRUE nonreflexive('1,'1) : FALSE nonreflexive('1,'2) : FALSE nonreflexive('1,'3) : TRUE nonreflexive('1,'4) : TRUE object('1,'1) : FALSE object('1,'2) : TRUE object('1,'3) : FALSE object('1,'4) : FALSE of('1,'1,'1) : FALSE of('1,'1,'2) : TRUE of('1,'1,'3) : TRUE of('1,'1,'4) : TRUE of('1,'2,'1) : FALSE of('1,'2,'2) : TRUE of('1,'2,'3) : TRUE of('1,'2,'4) : TRUE of('1,'3,'1) : FALSE of('1,'3,'2) : TRUE of('1,'3,'3) : TRUE of('1,'3,'4) : TRUE of('1,'4,'1) : TRUE of('1,'4,'2) : TRUE of('1,'4,'3) : TRUE of('1,'4,'4) : TRUE order('1,'1) : FALSE order('1,'2) : FALSE order('1,'3) : TRUE order('1,'4) : FALSE organism('1,'1) : TRUE organism('1,'2) : FALSE organism('1,'3) : FALSE organism('1,'4) : FALSE past('1,'1) : FALSE past('1,'2) : FALSE past('1,'3) : TRUE past('1,'4) : FALSE patient('1,'1,'1) : TRUE patient('1,'1,'2) : TRUE patient('1,'1,'3) : TRUE patient('1,'1,'4) : TRUE patient('1,'2,'1) : TRUE patient('1,'2,'2) : TRUE patient('1,'2,'3) : TRUE patient('1,'2,'4) : TRUE patient('1,'3,'1) : FALSE patient('1,'3,'2) : TRUE patient('1,'3,'3) : TRUE patient('1,'3,'4) : TRUE patient('1,'4,'1) : FALSE patient('1,'4,'2) : FALSE patient('1,'4,'3) : FALSE patient('1,'4,'4) : TRUE relation('1,'1) : FALSE relation('1,'2) : FALSE relation('1,'3) : FALSE relation('1,'4) : TRUE relname('1,'1) : FALSE relname('1,'2) : FALSE relname('1,'3) : FALSE relname('1,'4) : TRUE shake_beverage('1,'1) : FALSE shake_beverage('1,'2) : TRUE shake_beverage('1,'3) : FALSE shake_beverage('1,'4) : FALSE singleton('1,'1) : TRUE singleton('1,'2) : TRUE singleton('1,'3) : TRUE singleton('1,'4) : TRUE skc5 = '1 skc6 = '3 skc7 = '2 skc8 = '4 skc9 = '1 specific('1,'1) : TRUE specific('1,'2) : TRUE specific('1,'3) : TRUE specific('1,'4) : FALSE substance_matter('1,'1) : FALSE substance_matter('1,'2) : TRUE substance_matter('1,'3) : FALSE substance_matter('1,'4) : FALSE thing('1,'1) : TRUE thing('1,'2) : TRUE thing('1,'3) : TRUE thing('1,'4) : TRUE unisex('1,'1) : FALSE unisex('1,'2) : TRUE unisex('1,'3) : TRUE unisex('1,'4) : TRUE woman('1,'1) : TRUE woman('1,'2) : FALSE woman('1,'3) : FALSE woman('1,'4) : FALSE
THE PROOF OF GIVEN THEOREM Axioms: 1: ~E.[x,y] ~big_f[x,z] big_f[y,z] 2: ~E.[x,y] ~big_f[z,x] big_f[z,y] 3: ~E.[x,y] ~E.[y,z] E.[x,z] 4S>~E.[x,a] ~E.[y,b] big_f[x,y] 5: ~E.[x,y] E.[h[x,z],h[y,z]] 6S ~E.[x,y] E.[h[z,x],h[z,y]] 7: ~E.[x,y] E.[f[x],f[y]] 8: ~E.[x,y] E.[g[x],g[y]] 9S ~big_f[x,y] E.[x,a] 10: ~big_f[x,y] E.[y,b] 11: ~E.[x,y] E.[y,x] 12S>E.[x,x] Negated conclusion: 13S ~big_f[x,f[y]] E.[x,g[y]] big_f[h[y,z],f[y]] ~big_f[h[y,z],f[y]] 14S ~E.[x,g[y]] big_f[x,f[y]] big_f[h[y,z],f[y]] E.[h[y,z],z] 15S ~E.[x,g[y]] big_f[x,f[y]] ~E.[h[y,z],z] ~big_f[h[y,z],f[y]] 16S ~E.[f[x],x] ~E.[h[x,y],y] ~big_f[h[x,y],f[x]] 17S ~E.[f[x],x] big_f[h[x,y],f[x]] E.[h[x,y],y] 18# ~big_f[x,f[y]] ~E.[x,g[y]] E.[f[y],y] 19# ~E.[x,g[y]] big_f[x,f[y]] E.[f[y],y] --------------- Phase 0 clauses used in proof: 20S>E.[f[x],x] 21S>E.[h[x,a],a] 23 >~E.[f[x],x] ~big_f[h[x,h[x,y]],f[x]] ~E.[h[x,y],y] 24S>(23a*20a) ~big_f[h[x,h[x,y]],f[x]] ~E.[h[x,y],y] 28S>(24b*21a) ~big_f[h[x,h[x,a]],f[x]] Phases 1 and 2 clauses used in proof: 29S>(28a,4c) ~E.[h[x,h[x,a]],a] ~E.[f[x],b] 30S>[29a,21a] ~E.[h[x,a],a] ~E.[f[x],b] 31S>[30a,21a] ~E.[a,a] ~E.[f[x],b] 32S>[31b,20a] ~E.[a,a] ~E.[x,b] 33S>[32a,12a] ~E.[x,b] 34S>(33a,12a) []
---------------- PROOF ---------------- 1 [] {+} -big_f(A,B)|equal(A,a). 2 [] {+} -big_f(A,B)|equal(B,b). 3 [] {+} -equal(A,a)| -equal(B,b)|big_f(A,B). 4 [] {+} -big_f(A,f(B))| -equal(A,g(B))|equal(f(B),B). 5 [] {+} -equal(A,g(B))|big_f(A,f(B))|equal(f(B),B). 8 [] {+} -equal(f(A),A)|big_f(h(A,B),f(A))|equal(h(A,B),B). 9 [] {+} -equal(f(A),A)| -equal(h(A,B),B)| -big_f(h(A,B),f(A)). 11 [] {-} equal(A,A). 13 [hyper,11,5] {-} big_f(g(A),f(A))|equal(f(A),A). 14 [hyper,11,3,11] {-} big_f(a,b). 21 [hyper,13,3,11] {-} big_f(g(b),f(b))|big_f(a,f(b)). 62 [hyper,21,4,11] {-} big_f(a,f(b))|equal(f(b),b). 79 [hyper,62,3,11,factor_simp] {-} big_f(a,f(b)). 81,80 [hyper,79,2] {-} equal(f(b),b). 126 [hyper,80,8,demod,81] {-} big_f(h(b,A),b)|equal(h(b,A),A). 319 [hyper,126,3,80,demod,81,factor_simp] {-} big_f(h(b,a),b). 331,330 [hyper,319,1] {-} equal(h(b,a),a). 335 [para_from,330.1.1,9.3.1,demod,81,331,81,unit_del,11,11,14] {-} $F. ------------ end of proof -------------
---------------- PROOF ---------------- 1 [] {-} -equal(associator(add(u,v),x,y),add(associator(u,x,y),associator(v,x,y))). 2 [copy,1,flip.1] {+} -equal(add(associator(u,x,y),associator(v,x,y)),associator(add(u,v),x,y)). 5,4 [] {+} equal(add(additive_identity,A),A). 7,6 [] {+} equal(add(A,additive_identity),A). 9,8 [] {+} equal(multiply(additive_identity,A),additive_identity). 12 [] {+} equal(add(additive_inverse(A),A),additive_identity). 14 [] {+} equal(add(A,additive_inverse(A)),additive_identity). 21,20 [] {-} equal(multiply(add(A,B),C),add(multiply(A,C),multiply(B,C))). 22 [] {+} equal(add(A,B),add(B,A)). 23 [] {-} equal(add(A,add(B,C)),add(add(A,B),C)). 25,24 [copy,23,flip.1] {-} equal(add(add(A,B),C),add(A,add(B,C))). 30 [] {-} equal(associator(A,B,C),add(multiply(multiply(A,B),C),additive_inverse(multiply(A,multiply(B,C))))). 31 [copy,30,flip.1] {-} equal(add(multiply(multiply(A,B),C),additive_inverse(multiply(A,multiply(B,C)))),associator(A,B,C)). 55 [para_into,24.1.1.1,22.1.1,demod,25] {-} equal(add(A,add(B,C)),add(B,add(A,C))). 56 [para_into,24.1.1.1,14.1.1,demod,5,flip.1] {+} equal(add(A,add(additive_inverse(A),B)),B). 58 [para_into,24.1.1.1,12.1.1,demod,5,flip.1] {+} equal(add(additive_inverse(A),add(A,B)),B). 61 [para_into,24.1.1,14.1.1,flip.1] {-} equal(add(A,add(B,additive_inverse(add(A,B)))),additive_identity). 64 [para_into,56.1.1.2,22.1.1] {+} equal(add(A,add(B,additive_inverse(A))),B). 68 [para_into,56.1.1,22.1.1,demod,25] {+} equal(add(additive_inverse(A),add(B,A)),B). 76 [para_into,20.1.1.1,14.1.1,demod,9,flip.1] {-} equal(add(multiply(A,B),multiply(additive_inverse(A),B)),additive_identity). 86 [para_into,64.1.1.2,24.1.1] {-} equal(add(A,add(B,add(C,additive_inverse(A)))),add(B,C)). 102 [para_into,61.1.1,22.1.1,demod,25] {-} equal(add(A,add(additive_inverse(add(B,A)),B)),additive_identity). 178 [para_into,58.1.1.2,102.1.1,demod,7,flip.1] {+} equal(add(additive_inverse(add(A,B)),A),additive_inverse(B)). 187,186 [para_into,58.1.1.2,76.1.1,demod,7] {+} equal(additive_inverse(multiply(A,B)),multiply(additive_inverse(A),B)). 197 [back_demod,31,demod,187] {-} equal(add(multiply(multiply(A,B),C),multiply(additive_inverse(A),multiply(B,C))),associator(A,B,C)). 230 [para_into,55.1.1.2,76.1.1,demod,7,flip.1] {-} equal(add(multiply(A,B),add(C,multiply(additive_inverse(A),B))),C). 264,263 [para_into,178.1.1.1.1,68.1.1,flip.1] {+} equal(additive_inverse(add(A,B)),add(additive_inverse(A),additive_inverse(B))). 316,315 [para_from,186.1.1,86.1.1.2.2.2] {-} equal(add(multiply(A,B),add(C,add(D,multiply(additive_inverse(A),B)))),add(C,D)). 2052 [para_into,197.1.1.1.1,20.1.1,demod,21,264,21,25] {-} equal(add(multiply(multiply(A,B),C),add(multiply(multiply(D,B),C),add(multiply(additive_inverse(A),multiply(B,C)),multiply(additive_inverse(D),multiply(B,C))))),associator(add(A,D),B,C)). 2156,2155 [para_from,197.1.1,230.1.1.2,flip.1] {-} equal(multiply(multiply(A,B),C),add(multiply(A,multiply(B,C)),associator(A,B,C))). 2187 [back_demod,2052,demod,2156,2156,25,316,25,316] {-} equal(add(associator(A,B,C),associator(D,B,C)),associator(add(A,D),B,C)). 2189 [binary,2187.1,2.1] {-} $F. ------------ end of proof -------------
---------------- PROOF ---------------- 1 [] {+} -big_f(A,B)|equal(A,$c2). 2 [] {+} -big_f(A,B)|equal(B,$c1). 3 [] {+} big_f(A,B)| -equal(A,$c2)| -equal(B,$c1). 5 [] {+} big_f(A,$f3(B))| -equal(A,$f1(B))|equal($f3(B),B). 6 [] {+} big_f($f2(A,B),$f3(A))|equal($f2(A,B),B)| -equal($f3(A),A). 7 [] {+} -big_f($f2(A,B),$f3(A))| -equal($f2(A,B),B)| -equal($f3(A),A). 8 [] {-} equal(A,A). 9 [hyper,8,5] {-} big_f($f1(A),$f3(A))|equal($f3(A),A). 10 [hyper,8,3,8] {-} big_f($c2,$c1). 24 [hyper,9,3,8] {-} big_f($f1($c1),$f3($c1))|big_f($c2,$f3($c1)). 58 [hyper,24,2] {-} big_f($c2,$f3($c1))|equal($f3($c1),$c1). 82 [hyper,58,3,8,factor_simp] {-} big_f($c2,$f3($c1)). 85,84 [hyper,82,2] {-} equal($f3($c1),$c1). 105 [hyper,84,6,demod,85] {-} big_f($f2($c1,A),$c1)|equal($f2($c1,A),A). 259 [hyper,105,3,84,demod,85,factor_simp] {-} big_f($f2($c1,$c2),$c1). 272,271 [hyper,259,1] {-} equal($f2($c1,$c2),$c2). 279 [para_from,271.1.1,7.2.1,demod,272,85,85,unit_del,10,8,8] {-} $F. ------------ end of proof -------------
*********** [<number>] *************** <clause/formula body>
******* [<premise number>,..,<premise number>-><conclusion number>] ********** <premise> . . . <premise> ------------------------------- <conclusion>Premises and conclusions can be formulas or clauses.
*********** [11->20] *********** (~X0=f(g(X0)) \/ ((sk1=f(g(sk1)) & ~sk1=sk0) & sk0=f(g(sk0))) \/ ~X3=g(f(X3)) \/ ((sk3=g(f(sk3)) & ~sk3=sk2) & sk2=g(f(sk2)))) & ((sk4=f(g(sk4)) & ((~X8=f(g(X8)) \/ X8=X7) \/ ~X7=f(g(X7)))) \/ (sk5=g(f(sk5)) & ((~X11=g(f(X11)) \/ X11=X10) \/ ~X10=g(f(X10))))) ----------------------------- sk2=g(f(sk2)) \/ ~X3=g(f(X3)) \/ sk0=f(g(sk0)) \/ ~X0=f(g(X0))The conclusion [20] is one of the clauses obtained by clausification of the premise [11]. The constant sk5 was introduced by skolemisation.
Example 2. Three steps from the sample solution for SYN551+1
*********** [20->25] *********** sk2=g(f(sk2)) \/ ~X3=g(f(X3)) \/ sk0=f(g(sk0)) \/ ~X0=f(g(X0)) ----------------------------- ~g(f(X0))=X0 \/ p__2 *********** [20->31] *********** sk2=g(f(sk2)) \/ ~X3=g(f(X3)) \/ sk0=f(g(sk0)) \/ ~X0=f(g(X0)) ----------------------------- ~f(g(X0))=X0 \/ p__3 *********** [20->42] *********** sk2=g(f(sk2)) \/ ~X3=g(f(X3)) \/ sk0=f(g(sk0)) \/ ~X0=f(g(X0)) ----------------------------- f(g(sk0))=sk0 \/ g(f(sk2))=sk2 \/ ~p__2 \/ ~p__3These steps together form a splitting inference. In the first two we introduce names p__2 and p__3 for the components ~X3=g(f(X3)) and ~X0=f(g(X0)) of the clause [20]. The last one is obtained by folding the components.
Example 3. Two steps from the sample solution for COL003-20:
*********** [9->10] *********** ~apply(strong_fixed_point,fixed_pt)=apply(fixed_pt,apply(strong_fixed_point,fixe d_pt)) ----------------------------- ~p__0(apply(strong_fixed_point,fixed_pt) *********** [9->12] *********** ~apply(strong_fixed_point,fixed_pt)=apply(fixed_pt,apply(strong_fixed_point,fixe d_pt)) ----------------------------- p__0(apply(fixed_pt,apply(strong_fixed_point,fixed_pt)))These steps form a negative equality splitting. Again, p__0 is a new predicate.
Refutation found. Thanks to Tanya! *********** [12] *********** ~X0=a \/ ~X1=b \/ big_f(X0,X1) *********** [12->20] *********** ~X0=a \/ ~X1=b \/ big_f(X0,X1) ----------------------------- big_f(a,b) *********** [20->21] *********** big_f(a,b) ----------------------------- big_f(a,b) *********** [10] *********** ~big_f(X0,X1) \/ X0=a *********** [10->22] *********** ~big_f(X0,X1) \/ X0=a ----------------------------- ~big_f(X0,X1) \/ X0=a *********** [22->23] *********** ~big_f(X0,X1) \/ X0=a ----------------------------- ~big_f(X0,X1) \/ X0=a *********** [13] *********** ~big_f(X1,f(X0)) \/ ~X1=g(X0) \/ f(X0)=X0 *********** [13->24] *********** ~big_f(X1,f(X0)) \/ ~X1=g(X0) \/ f(X0)=X0 ----------------------------- ~big_f(g(X0),f(X0)) \/ f(X0)=X0 *********** [15] *********** ~X1=g(X0) \/ big_f(X1,f(X0)) \/ f(X0)=X0 *********** [24,15->25] *********** ~big_f(g(X0),f(X0)) \/ f(X0)=X0 ~X1=g(X0) \/ big_f(X1,f(X0)) \/ f(X0)=X0 ----------------------------- f(X0)=X0 *********** [25->26] *********** f(X0)=X0 ----------------------------- f(X0)=X0 *********** [18] *********** ~f(X0)=X0 \/ big_f(h(X0,X2),f(X0)) \/ h(X0,X2)=X2 *********** [18->27] *********** ~f(X0)=X0 \/ big_f(h(X0,X2),f(X0)) \/ h(X0,X2)=X2 ----------------------------- ~f(X0)=X0 \/ h(X0,X1)=X1 \/ big_f(h(X0,X1),f(X0)) *********** [26,26,27->28] *********** f(X0)=X0 f(X0)=X0 ~f(X0)=X0 \/ h(X0,X1)=X1 \/ big_f(h(X0,X1),f(X0)) ----------------------------- big_f(h(X0,X1),X0) \/ h(X0,X1)=X1 *********** [23,28->29] *********** ~big_f(X0,X1) \/ X0=a big_f(h(X0,X1),X0) \/ h(X0,X1)=X1 ----------------------------- h(X0,X1)=a \/ h(X0,X1)=X1 *********** [29->30] *********** h(X0,X1)=a \/ h(X0,X1)=X1 ----------------------------- h(X0,a)=a *********** [19] *********** ~f(X0)=X0 \/ ~h(X0,X2)=X2 \/ ~big_f(h(X0,X2),f(X0)) *********** [19->31] *********** ~f(X0)=X0 \/ ~h(X0,X2)=X2 \/ ~big_f(h(X0,X2),f(X0)) ----------------------------- ~big_f(h(X0,X1),f(X0)) \/ ~h(X0,X1)=X1 \/ ~f(X0)=X0 *********** [26,26,31->32] *********** f(X0)=X0 f(X0)=X0 ~big_f(h(X0,X1),f(X0)) \/ ~h(X0,X1)=X1 \/ ~f(X0)=X0 ----------------------------- ~h(X0,X1)=X1 \/ ~big_f(h(X0,X1),X0) *********** [30,32,30->33] *********** h(X0,a)=a ~h(X0,X1)=X1 \/ ~big_f(h(X0,X1),X0) h(X0,a)=a ----------------------------- ~big_f(a,X0) *********** [21,33->34] *********** big_f(a,b) ~big_f(a,X0) ----------------------------- # ======= End of refutation =======
=========== Refutation ========== *********** [3, input] *********** X0!=a \/ X1!=b \/ big_f(X0,X1) *********** [3->13, kernel inference] *********** X0!=a \/ X1!=b \/ big_f(X0,X1) ----------------------------- X1!=b \/ X2!=a \/ big_f(X2,X1) *********** [13->22, kernel inference] *********** X1!=b \/ X2!=a \/ big_f(X2,X1) ----------------------------- X1!=b \/ X2!=a \/ big_f(X2,X1) *********** [22->28, kernel inference] *********** X1!=b \/ X2!=a \/ big_f(X2,X1) ----------------------------- X1!=a \/ big_f(X1,b) *********** [28->33, kernel inference] *********** X1!=a \/ big_f(X1,b) ----------------------------- big_f(a,b) *********** [1, input] *********** ~big_f(X0,X1) \/ X0=a *********** [1->11, kernel inference] *********** ~big_f(X0,X1) \/ X0=a ----------------------------- ~big_f(X1,X2) \/ X1=a *********** [11->20, kernel inference] *********** ~big_f(X1,X2) \/ X1=a ----------------------------- ~big_f(X1,X2) \/ X1=a *********** [9, input] *********** f(X0)!=X0 \/ big_f(h(X0,X2),f(X0)) \/ h(X0,X2)=X2 *********** [9->18, kernel inference] *********** f(X0)!=X0 \/ big_f(h(X0,X2),f(X0)) \/ h(X0,X2)=X2 ----------------------------- f(X1)!=X1 \/ h(X1,X2)=X2 \/ big_f(h(X1,X2),f(X1)) *********** [18->26, kernel inference] *********** f(X1)!=X1 \/ h(X1,X2)=X2 \/ big_f(h(X1,X2),f(X1)) ----------------------------- f(X1)!=X1 \/ h(X1,X2)=X2 \/ big_f(h(X1,X2),f(X1)) *********** [4, input] *********** ~big_f(X1,f(X0)) \/ X1!=g(X0) \/ f(X0)=X0 *********** [4->14, kernel inference] *********** ~big_f(X1,f(X0)) \/ X1!=g(X0) \/ f(X0)=X0 ----------------------------- X1!=g(X2) \/ f(X2)=X2 \/ ~big_f(X1,f(X2)) *********** [6, input] *********** X1!=g(X0) \/ big_f(X1,f(X0)) \/ f(X0)=X0 *********** [14,6->15, kernel inference] *********** X1!=g(X2) \/ f(X2)=X2 \/ ~big_f(X1,f(X2)) X1!=g(X0) \/ big_f(X1,f(X0)) \/ f(X0)=X0 ----------------------------- X1!=g(X2) \/ f(X2)=X2 *********** [15->23, kernel inference] *********** X1!=g(X2) \/ f(X2)=X2 ----------------------------- X1!=g(X2) \/ f(X2)=X2 *********** [23->29, kernel inference] *********** X1!=g(X2) \/ f(X2)=X2 ----------------------------- f(X1)=X1 *********** [26,29->31, kernel inference] *********** f(X1)!=X1 \/ h(X1,X2)=X2 \/ big_f(h(X1,X2),f(X1)) f(X1)=X1 ----------------------------- big_f(h(X1,X2),X1) \/ h(X1,X2)=X2 *********** [20,31->35, kernel inference] *********** ~big_f(X1,X2) \/ X1=a big_f(h(X1,X2),X1) \/ h(X1,X2)=X2 ----------------------------- h(X1,X2)=a \/ h(X1,X2)=X2 *********** [35->36, kernel inference] *********** h(X1,X2)=a \/ h(X1,X2)=X2 ----------------------------- a!=X1 \/ h(X2,X1)=X1 *********** [36->40, kernel inference] *********** a!=X1 \/ h(X2,X1)=X1 ----------------------------- h(X1,a)=a *********** [10, input] *********** f(X0)!=X0 \/ h(X0,X2)!=X2 \/ ~big_f(h(X0,X2),f(X0)) *********** [10->19, kernel inference] *********** f(X0)!=X0 \/ h(X0,X2)!=X2 \/ ~big_f(h(X0,X2),f(X0)) ----------------------------- ~big_f(h(X1,X2),f(X1)) \/ h(X1,X2)!=X2 \/ f(X1)!=X1 *********** [19->27, kernel inference] *********** ~big_f(h(X1,X2),f(X1)) \/ h(X1,X2)!=X2 \/ f(X1)!=X1 ----------------------------- ~big_f(h(X1,X2),f(X1)) \/ h(X1,X2)!=X2 \/ f(X1)!=X1 *********** [27,29->32, kernel inference] *********** ~big_f(h(X1,X2),f(X1)) \/ h(X1,X2)!=X2 \/ f(X1)!=X1 f(X1)=X1 ----------------------------- h(X1,X2)!=X2 \/ ~big_f(h(X1,X2),X1) *********** [40,32,40->41, kernel inference] *********** h(X1,a)=a h(X1,X2)!=X2 \/ ~big_f(h(X1,X2),X1) h(X1,a)=a ----------------------------- ~big_f(a,X1) *********** [33,41->42, kernel inference] *********** big_f(a,b) ~big_f(a,X1) ----------------------------- # ======= End of refutation =======
=========== Refutation ========== *********** [1, input] *********** (? X1 X0)(! X3 X2)(big_f(X3,X2) <=> X3=X1 & X2=X0) *********** [1->3, rectify] *********** (? X1 X0)(! X3 X2)(big_f(X3,X2) <=> X3=X1 & X2=X0) ----------------------------- (? X0 X1)(! X2 X3)(big_f(X2,X3) <=> X2=X0 & X3=X1) *********** [3->84, equivalence-to-and] *********** (? X0 X1)(! X2 X3)(big_f(X2,X3) <=> X2=X0 & X3=X1) ----------------------------- (? X0 X1)(! X2 X3)((big_f(X2,X3) => X2=X0 & X3=X1) & (X2=X0 & X3=X1 => big_f(X2,X3))) *********** [84->85, implies-to-or] *********** (? X0 X1)(! X2 X3)((big_f(X2,X3) => X2=X0 & X3=X1) & (X2=X0 & X3=X1 => big_f(X2,X3))) ----------------------------- (? X0 X1)(! X2 X3)((big_f(X2,X3) => X2=X0 & X3=X1) & (~(X2=X0 & X3=X1) \/ big_f(X2,X3))) *********** [85->86, not-and] *********** (? X0 X1)(! X2 X3)((big_f(X2,X3) => X2=X0 & X3=X1) & (~(X2=X0 & X3=X1) \/ big_f(X2,X3))) ----------------------------- (? X0 X1)(! X2 X3)((big_f(X2,X3) => X2=X0 & X3=X1) & ((~X2=X0 \/ ~X3=X1) \/ big_f(X2,X3))) *********** [86->5, implies-to-or] *********** (? X0 X1)(! X2 X3)((big_f(X2,X3) => X2=X0 & X3=X1) & ((~X2=X0 \/ ~X3=X1) \/ big_f(X2,X3))) ----------------------------- (? X0 X1)(! X2 X3)((~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & ((~X2=X0 \/ ~X3=X1) \/ big_f(X2,X3))) *********** [5->6, flattening] *********** (? X0 X1)(! X2 X3)((~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & ((~X2=X0 \/ ~X3=X1) \/ big_f(X2,X3))) ----------------------------- (? X0 X1)(! X2 X3)((~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & (~X2=X0 \/ ~X3=X1 \/ big_f(X2,X3))) *********** [6->89, forall-and] *********** (? X0 X1)(! X2 X3)((~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & (~X2=X0 \/ ~X3=X1 \/ big_f(X2,X3))) ----------------------------- (? X0 X1)((! X2 X3)(~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & (! X2 X3)(~X2=X0 \/ ~X3=X1 \/ big_f(X2,X3))) *********** [89->7, forall-or] *********** (? X0 X1)((! X2 X3)(~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & (! X2 X3)(~X2=X0 \/ ~X3=X1 \/ big_f(X2,X3))) ----------------------------- (? X0 X1)((! X2 X3)(~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & (! X3)((! X2)(~X2=X0 \/ big_f(X2,X3)) \/ ~X3=X1)) *********** [7->8, rectify] *********** (? X0 X1)((! X2 X3)(~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & (! X3)((! X2)(~X2=X0 \/ big_f(X2,X3)) \/ ~X3=X1)) ----------------------------- (? X0 X1)((! X2 X3)(~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & (! X4)((! X5)(~X5=X0 \/ big_f(X5,X4)) \/ ~X4=X1)) *********** [91, choice axiom] *********** (? X0 X1)((! X2 X3)(~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & (! X4)((! X5)(~X5=X0 \/ big_f(X5,X4)) \/ ~X4=X1)) => (! X2 X3)(~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & (! X4)((! X5)(~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) *********** [91,8->92, monotone replacement] *********** (? X0 X1)((! X2 X3)(~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & (! X4)((! X5)(~X5=X0 \/ big_f(X5,X4)) \/ ~X4=X1)) => (! X2 X3)(~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & (! X4)((! X5)(~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) (? X0 X1)((! X2 X3)(~big_f(X2,X3) \/ (X2=X0 & X3=X1)) & (! X4)((! X5)(~X5=X0 \/ big_f(X5,X4)) \/ ~X4=X1)) ----------------------------- (! X2 X3)(~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & (! X4)((! X5)(~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) *********** [92->93, forall-elimination] *********** (! X2 X3)(~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & (! X4)((! X5)(~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) ----------------------------- (! X2 X3)(~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & ((! X5)(~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) *********** [93->94, forall-elimination] *********** (! X2 X3)(~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & ((! X5)(~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) ----------------------------- (! X2 X3)(~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & ((~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) *********** [94->9, forall-elimination] *********** (! X2 X3)(~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & ((~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) ----------------------------- (~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & ((~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) *********** [9->17, cnf transformation] *********** (~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & ((~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) ----------------------------- X4!=sk1 \/ big_f(X5,X4) \/ X5!=sk0 *********** [17->26, kernel inference] *********** X4!=sk1 \/ big_f(X5,X4) \/ X5!=sk0 ----------------------------- X1!=sk0 \/ X2!=sk1 \/ big_f(X1,X2) *********** [26->33, kernel inference] *********** X1!=sk0 \/ X2!=sk1 \/ big_f(X1,X2) ----------------------------- X1!=sk0 \/ X2!=sk1 \/ big_f(X1,X2) *********** [33->37, kernel inference] *********** X1!=sk0 \/ X2!=sk1 \/ big_f(X1,X2) ----------------------------- X1!=sk1 \/ big_f(sk0,X1) *********** [37->38, kernel inference] *********** X1!=sk1 \/ big_f(sk0,X1) ----------------------------- big_f(sk0,sk1) *********** [9->16, cnf transformation] *********** (~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & ((~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) ----------------------------- X3=sk1 \/ ~big_f(X2,X3) *********** [16->27, kernel inference] *********** X3=sk1 \/ ~big_f(X2,X3) ----------------------------- ~big_f(X1,X2) \/ X2=sk1 *********** [27->34, kernel inference] *********** ~big_f(X1,X2) \/ X2=sk1 ----------------------------- ~big_f(X1,X2) \/ X2=sk1 *********** [2, input] *********** ~(? X0)(! X2)((? X1)(! X3)(big_f(X3,X2) <=> X3=X1) <=> X2=X0) *********** [2->4, rectify] *********** ~(? X0)(! X2)((? X1)(! X3)(big_f(X3,X2) <=> X3=X1) <=> X2=X0) ----------------------------- ~(? X0)(! X1)((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) <=> X1=X0) *********** [4->96, not-exists] *********** ~(? X0)(! X1)((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) <=> X1=X0) ----------------------------- (! X0)~(! X1)((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) <=> X1=X0) *********** [96->97, not-forall] *********** (! X0)~(! X1)((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) <=> X1=X0) ----------------------------- (! X0)(? X1)~((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) <=> X1=X0) *********** [97->10, not-iff] *********** (! X0)(? X1)~((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) <=> X1=X0) ----------------------------- (! X0)(? X1)((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) <~> X1=X0) *********** [10->99, xor-to-and] *********** (! X0)(? X1)((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) <~> X1=X0) ----------------------------- (! X0)(? X1)(((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ X1=X0) & (~(? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ ~X1=X0)) *********** [99->100, not-exists] *********** (! X0)(? X1)(((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ X1=X0) & (~(? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ ~X1=X0)) ----------------------------- (! X0)(? X1)(((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ X1=X0) & ((! X2)~(! X3)(big_f(X3,X1) <=> X3=X2) \/ ~X1=X0)) *********** [100->101, not-forall] *********** (! X0)(? X1)(((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ X1=X0) & ((! X2)~(! X3)(big_f(X3,X1) <=> X3=X2) \/ ~X1=X0)) ----------------------------- (! X0)(? X1)(((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ X1=X0) & ((! X2)(? X3)~(big_f(X3,X1) <=> X3=X2) \/ ~X1=X0)) *********** [101->102, not-iff] *********** (! X0)(? X1)(((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ X1=X0) & ((! X2)(? X3)~(big_f(X3,X1) <=> X3=X2) \/ ~X1=X0)) ----------------------------- (! X0)(? X1)(((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ X1=X0) & ((! X2)(? X3)(big_f(X3,X1) <~> X3=X2) \/ ~X1=X0)) *********** [102->103, xor-to-and] *********** (! X0)(? X1)(((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ X1=X0) & ((! X2)(? X3)(big_f(X3,X1) <~> X3=X2) \/ ~X1=X0)) ----------------------------- (! X0)(? X1)(((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ X1=X0) & ((! X2)(? X3)((big_f(X3,X1) \/ X3=X2) & (~big_f(X3,X1) \/ ~X3=X2)) \/ ~X1=X0)) *********** [103->104, equivalence-to-and] *********** (! X0)(? X1)(((? X2)(! X3)(big_f(X3,X1) <=> X3=X2) \/ X1=X0) & ((! X2)(? X3)((big_f(X3,X1) \/ X3=X2) & (~big_f(X3,X1) \/ ~X3=X2)) \/ ~X1=X0)) ----------------------------- (! X0)(? X1)(((? X2)(! X3)((big_f(X3,X1) => X3=X2) & (X3=X2 => big_f(X3,X1))) \/ X1=X0) & ((! X2)(? X3)((big_f(X3,X1) \/ X3=X2) & (~big_f(X3,X1) \/ ~X3=X2)) \/ ~X1=X0)) *********** [104->105, implies-to-or] *********** (! X0)(? X1)(((? X2)(! X3)((big_f(X3,X1) => X3=X2) & (X3=X2 => big_f(X3,X1))) \/ X1=X0) & ((! X2)(? X3)((big_f(X3,X1) \/ X3=X2) & (~big_f(X3,X1) \/ ~X3=X2)) \/ ~X1=X0)) ----------------------------- (! X0)(? X1)(((? X2)(! X3)((big_f(X3,X1) => X3=X2) & (~X3=X2 \/ big_f(X3,X1))) \/ X1=X0) & ((! X2)(? X3)((big_f(X3,X1) \/ X3=X2) & (~big_f(X3,X1) \/ ~X3=X2)) \/ ~X1=X0)) *********** [105->11, implies-to-or] *********** (! X0)(? X1)(((? X2)(! X3)((big_f(X3,X1) => X3=X2) & (~X3=X2 \/ big_f(X3,X1))) \/ X1=X0) & ((! X2)(? X3)((big_f(X3,X1) \/ X3=X2) & (~big_f(X3,X1) \/ ~X3=X2)) \/ ~X1=X0)) ----------------------------- (! X0)(? X1)(((? X2)(! X3)((~big_f(X3,X1) \/ X3=X2) & (~X3=X2 \/ big_f(X3,X1))) \/ X1=X0) & ((! X2)(? X3)((big_f(X3,X1) \/ X3=X2) & (~big_f(X3,X1) \/ ~X3=X2)) \/ ~X1=X0)) *********** [11->12, forall-and] *********** (! X0)(? X1)(((? X2)(! X3)((~big_f(X3,X1) \/ X3=X2) & (~X3=X2 \/ big_f(X3,X1))) \/ X1=X0) & ((! X2)(? X3)((big_f(X3,X1) \/ X3=X2) & (~big_f(X3,X1) \/ ~X3=X2)) \/ ~X1=X0)) ----------------------------- (! X0)(? X1)(((? X2)((! X3)(~big_f(X3,X1) \/ X3=X2) & (! X3)(~X3=X2 \/ big_f(X3,X1))) \/ X1=X0) & ((! X2)(? X3)((big_f(X3,X1) \/ X3=X2) & (~big_f(X3,X1) \/ ~X3=X2)) \/ ~X1=X0)) *********** [12->13, rectify] *********** (! X0)(? X1)(((? X2)((! X3)(~big_f(X3,X1) \/ X3=X2) & (! X3)(~X3=X2 \/ big_f(X3,X1))) \/ X1=X0) & ((! X2)(? X3)((big_f(X3,X1) \/ X3=X2) & (~big_f(X3,X1) \/ ~X3=X2)) \/ ~X1=X0)) ----------------------------- (! X0)(? X1)(((? X2)((! X3)(~big_f(X3,X1) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,X1))) \/ X1=X0) & ((! X5)(? X6)((big_f(X6,X1) \/ X6=X5) & (~big_f(X6,X1) \/ ~X6=X5)) \/ ~X1=X0)) *********** [112, choice axiom] *********** (! X0)((? X2)((! X3)(~big_f(X3,sk2(X0)) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,sk2(X0)))) => (! X3)(~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (! X4)(~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) *********** [110, choice axiom] *********** (! X0 X5)((? X6)((big_f(X6,sk2(X0)) \/ X6=X5) & (~big_f(X6,sk2(X0)) \/ ~X6=X5)) => (big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) *********** [108, choice axiom] *********** (! X0)((? X1)(((? X2)((! X3)(~big_f(X3,X1) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,X1))) \/ X1=X0) & ((! X5)(? X6)((big_f(X6,X1) \/ X6=X5) & (~big_f(X6,X1) \/ ~X6=X5)) \/ ~X1=X0)) => ((? X2)((! X3)(~big_f(X3,sk2(X0)) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & ((! X5)(? X6)((big_f(X6,sk2(X0)) \/ X6=X5) & (~big_f(X6,sk2(X0)) \/ ~X6=X5)) \/ ~sk2(X0)=X0)) *********** [108,13->109, monotone replacement] *********** (! X0)((? X1)(((? X2)((! X3)(~big_f(X3,X1) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,X1))) \/ X1=X0) & ((! X5)(? X6)((big_f(X6,X1) \/ X6=X5) & (~big_f(X6,X1) \/ ~X6=X5)) \/ ~X1=X0)) => ((? X2)((! X3)(~big_f(X3,sk2(X0)) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & ((! X5)(? X6)((big_f(X6,sk2(X0)) \/ X6=X5) & (~big_f(X6,sk2(X0)) \/ ~X6=X5)) \/ ~sk2(X0)=X0)) (! X0)(? X1)(((? X2)((! X3)(~big_f(X3,X1) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,X1))) \/ X1=X0) & ((! X5)(? X6)((big_f(X6,X1) \/ X6=X5) & (~big_f(X6,X1) \/ ~X6=X5)) \/ ~X1=X0)) ----------------------------- (! X0)(((? X2)((! X3)(~big_f(X3,sk2(X0)) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & ((! X5)(? X6)((big_f(X6,sk2(X0)) \/ X6=X5) & (~big_f(X6,sk2(X0)) \/ ~X6=X5)) \/ ~sk2(X0)=X0)) *********** [110,109->111, monotone replacement] *********** (! X0 X5)((? X6)((big_f(X6,sk2(X0)) \/ X6=X5) & (~big_f(X6,sk2(X0)) \/ ~X6=X5)) => (big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) (! X0)(((? X2)((! X3)(~big_f(X3,sk2(X0)) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & ((! X5)(? X6)((big_f(X6,sk2(X0)) \/ X6=X5) & (~big_f(X6,sk2(X0)) \/ ~X6=X5)) \/ ~sk2(X0)=X0)) ----------------------------- (! X0)(((? X2)((! X3)(~big_f(X3,sk2(X0)) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & ((! X5)((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0)) *********** [112,111->113, monotone replacement] *********** (! X0)((? X2)((! X3)(~big_f(X3,sk2(X0)) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,sk2(X0)))) => (! X3)(~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (! X4)(~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) (! X0)(((? X2)((! X3)(~big_f(X3,sk2(X0)) \/ X3=X2) & (! X4)(~X4=X2 \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & ((! X5)((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0)) ----------------------------- (! X0)((((! X3)(~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (! X4)(~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & ((! X5)((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0)) *********** [113->114, forall-elimination] *********** (! X0)((((! X3)(~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (! X4)(~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & ((! X5)((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0)) ----------------------------- (((! X3)(~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (! X4)(~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & ((! X5)((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0) *********** [114->115, forall-elimination] *********** (((! X3)(~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (! X4)(~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & ((! X5)((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0) ----------------------------- (((! X3)(~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (! X4)(~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & (((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0) *********** [115->116, forall-elimination] *********** (((! X3)(~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (! X4)(~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & (((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0) ----------------------------- (((! X3)(~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & (((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0) *********** [116->14, forall-elimination] *********** (((! X3)(~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & (((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0) ----------------------------- (((~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & (((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0) *********** [14->19, cnf transformation] *********** (((~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & (((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0) ----------------------------- sk2(X0)=X0 \/ big_f(X4,sk2(X0)) \/ X4!=sk3(X0) *********** [19->24, kernel inference] *********** sk2(X0)=X0 \/ big_f(X4,sk2(X0)) \/ X4!=sk3(X0) ----------------------------- X1!=sk3(X2) \/ sk2(X2)=X2 \/ big_f(X1,sk2(X2)) *********** [24->31, kernel inference] *********** X1!=sk3(X2) \/ sk2(X2)=X2 \/ big_f(X1,sk2(X2)) ----------------------------- X1!=sk3(X2) \/ sk2(X2)=X2 \/ big_f(X1,sk2(X2)) *********** [31->36, kernel inference] *********** X1!=sk3(X2) \/ sk2(X2)=X2 \/ big_f(X1,sk2(X2)) ----------------------------- big_f(sk3(X1),sk2(X1)) \/ sk2(X1)=X1 *********** [34,36->40, kernel inference] *********** ~big_f(X1,X2) \/ X2=sk1 big_f(sk3(X1),sk2(X1)) \/ sk2(X1)=X1 ----------------------------- sk2(X1)=sk1 \/ sk2(X1)=X1 *********** [40->43, kernel inference] *********** sk2(X1)=sk1 \/ sk2(X1)=X1 ----------------------------- sk1!=X1 \/ sk2(X1)=X1 *********** [43->49, kernel inference] *********** sk1!=X1 \/ sk2(X1)=X1 ----------------------------- sk2(sk1)=sk1 *********** [9->15, cnf transformation] *********** (~big_f(X2,X3) \/ (X2=sk0 & X3=sk1)) & ((~X5=sk0 \/ big_f(X5,X4)) \/ ~X4=sk1) ----------------------------- X2=sk0 \/ ~big_f(X2,X3) *********** [15->28, kernel inference] *********** X2=sk0 \/ ~big_f(X2,X3) ----------------------------- ~big_f(X1,X2) \/ X1=sk0 *********** [28->35, kernel inference] *********** ~big_f(X1,X2) \/ X1=sk0 ----------------------------- ~big_f(X1,X2) \/ X1=sk0 *********** [14->20, cnf transformation] *********** (((~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & (((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0) ----------------------------- sk2(X0)!=X0 \/ sk4(X0,X5)=X5 \/ big_f(sk4(X0,X5),sk2(X0)) *********** [20->23, kernel inference] *********** sk2(X0)!=X0 \/ sk4(X0,X5)=X5 \/ big_f(sk4(X0,X5),sk2(X0)) ----------------------------- sk2(X1)!=X1 \/ sk4(X1,X2)=X2 \/ big_f(sk4(X1,X2),sk2(X1)) *********** [23->30, kernel inference] *********** sk2(X1)!=X1 \/ sk4(X1,X2)=X2 \/ big_f(sk4(X1,X2),sk2(X1)) ----------------------------- sk2(X1)!=X1 \/ sk4(X1,X2)=X2 \/ big_f(sk4(X1,X2),sk2(X1)) *********** [49,30,49->54, kernel inference] *********** sk2(sk1)=sk1 sk2(X1)!=X1 \/ sk4(X1,X2)=X2 \/ big_f(sk4(X1,X2),sk2(X1)) sk2(sk1)=sk1 ----------------------------- big_f(sk4(sk1,X1),sk1) \/ sk4(sk1,X1)=X1 *********** [35,54->56, kernel inference] *********** ~big_f(X1,X2) \/ X1=sk0 big_f(sk4(sk1,X1),sk1) \/ sk4(sk1,X1)=X1 ----------------------------- sk4(sk1,X1)=sk0 \/ sk4(sk1,X1)=X1 *********** [56->68, kernel inference] *********** sk4(sk1,X1)=sk0 \/ sk4(sk1,X1)=X1 ----------------------------- sk0!=X1 \/ sk4(sk1,X1)=X1 *********** [68->75, kernel inference] *********** sk0!=X1 \/ sk4(sk1,X1)=X1 ----------------------------- sk4(sk1,sk0)=sk0 *********** [14->21, cnf transformation] *********** (((~big_f(X3,sk2(X0)) \/ X3=sk3(X0)) & (~X4=sk3(X0) \/ big_f(X4,sk2(X0)))) \/ sk2(X0)=X0) & (((big_f(sk4(X0,X5),sk2(X0)) \/ sk4(X0,X5)=X5) & (~big_f(sk4(X0,X5),sk2(X0)) \/ ~sk4(X0,X5)=X5)) \/ ~sk2(X0)=X0) ----------------------------- sk2(X0)!=X0 \/ sk4(X0,X5)!=X5 \/ ~big_f(sk4(X0,X5),sk2(X0)) *********** [21->22, kernel inference] *********** sk2(X0)!=X0 \/ sk4(X0,X5)!=X5 \/ ~big_f(sk4(X0,X5),sk2(X0)) ----------------------------- ~big_f(sk4(X1,X2),sk2(X1)) \/ sk4(X1,X2)!=X2 \/ sk2(X1)!=X1 *********** [22->29, kernel inference] *********** ~big_f(sk4(X1,X2),sk2(X1)) \/ sk4(X1,X2)!=X2 \/ sk2(X1)!=X1 ----------------------------- ~big_f(sk4(X1,X2),sk2(X1)) \/ sk4(X1,X2)!=X2 \/ sk2(X1)!=X1 *********** [38,49,75,49,29,75->83, kernel inference] *********** big_f(sk0,sk1) sk2(sk1)=sk1 sk4(sk1,sk0)=sk0 sk2(sk1)=sk1 ~big_f(sk4(X1,X2),sk2(X1)) \/ sk4(X1,X2)!=X2 \/ sk2(X1)!=X1 sk4(sk1,sk0)=sk0 ----------------------------- # ======= End of refutation =======