%------------------------------------------------------------------------------
% File : Z3---4.15.1
% Problem : COM223_1 : TPTP v9.3.0. Released v9.3.0.
% Transfm : none
% Format : tptp
% Command : run_E %s %d THM
% Computer : n003.cluster.edu
% Model : x86_64 x86_64
% CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory : 8042.1875MB
% OS : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit : 300s
% DateTime : Tue May 5 06:23:01 PM UTC 2026
% Result : Theorem 0.18s 0.37s
% Output : Proof 0.18s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.10 % Problem : COM223_1 : TPTP v9.3.0. Released v9.3.0.
% 0.00/0.10 % Command : run_E %s %d THM
% 0.12/0.30 % Computer : n003.cluster.edu
% 0.12/0.30 % Model : x86_64 x86_64
% 0.12/0.30 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.30 % Memory : 8042.1875MB
% 0.12/0.30 % OS : Linux 3.10.0-693.el7.x86_64
% 0.12/0.30 % CPULimit : 300
% 0.12/0.30 % WCLimit : 300
% 0.12/0.30 % DateTime : Mon May 4 19:05:57 EDT 2026
% 0.12/0.30 % CPUTime :
% 0.18/0.37 % SZS status Theorem
% 0.18/0.37 % SZS output start Proof
% 0.18/0.37 tff(vptchecksimple_type, type, (
% 0.18/0.37 vptchecksimple: ( vTerm * vTy ) > $o)).
% 0.18/0.37 tff(vNat_type, type, (
% 0.18/0.37 vNat: vTy)).
% 0.18/0.37 tff(tptp_fun_VwildcardName0_12_type, type, (
% 0.18/0.37 tptp_fun_VwildcardName0_12: vOptTerm > vTerm)).
% 0.18/0.37 tff(vreduce_type, type, (
% 0.18/0.37 vreduce: vTerm > vOptTerm)).
% 0.18/0.37 tff(vt2_type, type, (
% 0.18/0.37 vt2: vTerm)).
% 0.18/0.37 tff(vgetTerm_type, type, (
% 0.18/0.37 vgetTerm: vOptTerm > vTerm)).
% 0.18/0.37 tff(vsomeTerm_type, type, (
% 0.18/0.37 vsomeTerm: vTerm > vOptTerm)).
% 0.18/0.37 tff(visSomeTerm_type, type, (
% 0.18/0.37 visSomeTerm: vOptTerm > $o)).
% 0.18/0.37 tff(tptp_fun_Vtres_62_type, type, (
% 0.18/0.37 tptp_fun_Vtres_62: vTerm)).
% 0.18/0.37 tff(vPlus_type, type, (
% 0.18/0.37 vPlus: ( vTerm * vTerm ) > vTerm)).
% 0.18/0.37 tff(vt1_type, type, (
% 0.18/0.37 vt1: vTerm)).
% 0.18/0.37 tff(tptp_fun_VT_63_type, type, (
% 0.18/0.37 tptp_fun_VT_63: vTy)).
% 0.18/0.37 tff(visNV_type, type, (
% 0.18/0.37 visNV: vTerm > $o)).
% 0.18/0.37 tff(1,plain,
% 0.18/0.37 ((~![VT: vTy, Vtres: vTerm] : ((~(visSomeTerm(vreduce(vt2)) & (~visNV(vt2)) & visNV(vt1) & vptchecksimple(vPlus(vt1, vt2), VT) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT))) <=> (~![VT: vTy, Vtres: vTerm] : ((~(visSomeTerm(vreduce(vt2)) & (~visNV(vt2)) & visNV(vt1) & vptchecksimple(vPlus(vt1, vt2), VT) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT)))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(2,plain,
% 0.18/0.37 ((~![VT: vTy, Vtres: vTerm] : (((((visSomeTerm(vreduce(vt2)) & (~visNV(vt2))) & visNV(vt1)) & vptchecksimple(vPlus(vt1, vt2), VT)) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres))) => vptchecksimple(Vtres, VT))) <=> (~![VT: vTy, Vtres: vTerm] : ((~(visSomeTerm(vreduce(vt2)) & (~visNV(vt2)) & visNV(vt1) & vptchecksimple(vPlus(vt1, vt2), VT) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT)))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(3,axiom,(~![VT: vTy, Vtres: vTerm] : (((((visSomeTerm(vreduce(vt2)) & (~visNV(vt2))) & visNV(vt1)) & vptchecksimple(vPlus(vt1, vt2), VT)) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres))) => vptchecksimple(Vtres, VT))), file('/export/starexec/sandbox/benchmark/theBenchmark.p',''Preservation-Plus-isNV-True-isNV-False-isSomeTerm-True'')).
% 0.18/0.37 tff(4,plain,
% 0.18/0.37 (~![VT: vTy, Vtres: vTerm] : ((~(visSomeTerm(vreduce(vt2)) & (~visNV(vt2)) & visNV(vt1) & vptchecksimple(vPlus(vt1, vt2), VT) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[3, 2])).
% 0.18/0.37 tff(5,plain,
% 0.18/0.37 (~![VT: vTy, Vtres: vTerm] : ((~(visSomeTerm(vreduce(vt2)) & (~visNV(vt2)) & visNV(vt1) & vptchecksimple(vPlus(vt1, vt2), VT) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[4, 1])).
% 0.18/0.37 tff(6,plain,
% 0.18/0.37 (~![VT: vTy, Vtres: vTerm] : ((~(visSomeTerm(vreduce(vt2)) & (~visNV(vt2)) & visNV(vt1) & vptchecksimple(vPlus(vt1, vt2), VT) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[5, 1])).
% 0.18/0.37 tff(7,plain,
% 0.18/0.37 (~![VT: vTy, Vtres: vTerm] : ((~(visSomeTerm(vreduce(vt2)) & (~visNV(vt2)) & visNV(vt1) & vptchecksimple(vPlus(vt1, vt2), VT) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[6, 1])).
% 0.18/0.37 tff(8,plain,(
% 0.18/0.37 ~((~(visSomeTerm(vreduce(vt2)) & (~visNV(vt2)) & visNV(vt1) & vptchecksimple(vPlus(vt1, vt2), VT!63) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres!62)))) | vptchecksimple(Vtres!62, VT!63))),
% 0.18/0.37 inference(skolemize,[status(sab)],[7])).
% 0.18/0.37 tff(9,plain,
% 0.18/0.37 (visSomeTerm(vreduce(vt2)) & (~visNV(vt2)) & visNV(vt1) & vptchecksimple(vPlus(vt1, vt2), VT!63) & (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres!62))),
% 0.18/0.37 inference(or_elim,[status(thm)],[8])).
% 0.18/0.37 tff(10,plain,
% 0.18/0.37 (visSomeTerm(vreduce(vt2))),
% 0.18/0.37 inference(and_elim,[status(thm)],[9])).
% 0.18/0.37 tff(11,plain,
% 0.18/0.37 (^[VOptTerm0: vOptTerm] : refl(((~visSomeTerm(VOptTerm0)) | (VOptTerm0 = vsomeTerm(tptp_fun_VwildcardName0_12(VOptTerm0)))) <=> ((~visSomeTerm(VOptTerm0)) | (VOptTerm0 = vsomeTerm(tptp_fun_VwildcardName0_12(VOptTerm0)))))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(12,plain,
% 0.18/0.37 (![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | (VOptTerm0 = vsomeTerm(tptp_fun_VwildcardName0_12(VOptTerm0)))) <=> ![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | (VOptTerm0 = vsomeTerm(tptp_fun_VwildcardName0_12(VOptTerm0))))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[11])).
% 0.18/0.37 tff(13,plain,
% 0.18/0.37 (![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | ?[VwildcardName0: vTerm] : (VOptTerm0 = vsomeTerm(VwildcardName0))) <=> ![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | ?[VwildcardName0: vTerm] : (VOptTerm0 = vsomeTerm(VwildcardName0)))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(14,plain,
% 0.18/0.37 (^[VOptTerm0: vOptTerm] : rewrite((visSomeTerm(VOptTerm0) => ?[VwildcardName0: vTerm] : (VOptTerm0 = vsomeTerm(VwildcardName0))) <=> ((~visSomeTerm(VOptTerm0)) | ?[VwildcardName0: vTerm] : (VOptTerm0 = vsomeTerm(VwildcardName0))))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(15,plain,
% 0.18/0.37 (![VOptTerm0: vOptTerm] : (visSomeTerm(VOptTerm0) => ?[VwildcardName0: vTerm] : (VOptTerm0 = vsomeTerm(VwildcardName0))) <=> ![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | ?[VwildcardName0: vTerm] : (VOptTerm0 = vsomeTerm(VwildcardName0)))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[14])).
% 0.18/0.37 tff(16,axiom,(![VOptTerm0: vOptTerm] : (visSomeTerm(VOptTerm0) => ?[VwildcardName0: vTerm] : (VOptTerm0 = vsomeTerm(VwildcardName0)))), file('/export/starexec/sandbox/benchmark/theBenchmark.p',''isSomeTerm-true-INV'')).
% 0.18/0.37 tff(17,plain,
% 0.18/0.37 (![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | ?[VwildcardName0: vTerm] : (VOptTerm0 = vsomeTerm(VwildcardName0)))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[16, 15])).
% 0.18/0.37 tff(18,plain,
% 0.18/0.37 (![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | ?[VwildcardName0: vTerm] : (VOptTerm0 = vsomeTerm(VwildcardName0)))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[17, 13])).
% 0.18/0.37 tff(19,plain,(
% 0.18/0.37 ![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | (VOptTerm0 = vsomeTerm(tptp_fun_VwildcardName0_12(VOptTerm0))))),
% 0.18/0.37 inference(skolemize,[status(sab)],[18])).
% 0.18/0.37 tff(20,plain,
% 0.18/0.37 (![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | (VOptTerm0 = vsomeTerm(tptp_fun_VwildcardName0_12(VOptTerm0))))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[19, 12])).
% 0.18/0.37 tff(21,plain,
% 0.18/0.37 (((~![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | (VOptTerm0 = vsomeTerm(tptp_fun_VwildcardName0_12(VOptTerm0))))) | ((~visSomeTerm(vreduce(vt2))) | (vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2)))))) <=> ((~![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | (VOptTerm0 = vsomeTerm(tptp_fun_VwildcardName0_12(VOptTerm0))))) | (~visSomeTerm(vreduce(vt2))) | (vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2)))))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(22,plain,
% 0.18/0.37 ((~![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | (VOptTerm0 = vsomeTerm(tptp_fun_VwildcardName0_12(VOptTerm0))))) | ((~visSomeTerm(vreduce(vt2))) | (vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2)))))),
% 0.18/0.37 inference(quant_inst,[status(thm)],[])).
% 0.18/0.37 tff(23,plain,
% 0.18/0.37 ((~![VOptTerm0: vOptTerm] : ((~visSomeTerm(VOptTerm0)) | (VOptTerm0 = vsomeTerm(tptp_fun_VwildcardName0_12(VOptTerm0))))) | (~visSomeTerm(vreduce(vt2))) | (vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2))))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[22, 21])).
% 0.18/0.37 tff(24,plain,
% 0.18/0.37 (vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2)))),
% 0.18/0.37 inference(unit_resolution,[status(thm)],[23, 20, 10])).
% 0.18/0.37 tff(25,plain,
% 0.18/0.37 (vgetTerm(vreduce(vt2)) = vgetTerm(vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2))))),
% 0.18/0.37 inference(monotonicity,[status(thm)],[24])).
% 0.18/0.37 tff(26,plain,
% 0.18/0.37 (vgetTerm(vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2)))) = vgetTerm(vreduce(vt2))),
% 0.18/0.37 inference(symmetry,[status(thm)],[25])).
% 0.18/0.37 tff(27,plain,
% 0.18/0.37 (![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt) <=> ![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt)),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(28,plain,
% 0.18/0.37 (![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt) <=> ![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt)),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(29,axiom,(![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt)), file('/export/starexec/sandbox/benchmark/theBenchmark.p',''getTerm-0'')).
% 0.18/0.37 tff(30,plain,
% 0.18/0.37 (![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt)),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[29, 28])).
% 0.18/0.37 tff(31,plain,(
% 0.18/0.37 ![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt)),
% 0.18/0.37 inference(skolemize,[status(sab)],[30])).
% 0.18/0.37 tff(32,plain,
% 0.18/0.37 (![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt)),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[31, 27])).
% 0.18/0.37 tff(33,plain,
% 0.18/0.37 ((~![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt)) | (vgetTerm(vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2)))) = tptp_fun_VwildcardName0_12(vreduce(vt2)))),
% 0.18/0.37 inference(quant_inst,[status(thm)],[])).
% 0.18/0.37 tff(34,plain,
% 0.18/0.37 (vgetTerm(vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2)))) = tptp_fun_VwildcardName0_12(vreduce(vt2))),
% 0.18/0.37 inference(unit_resolution,[status(thm)],[33, 32])).
% 0.18/0.37 tff(35,plain,
% 0.18/0.37 (tptp_fun_VwildcardName0_12(vreduce(vt2)) = vgetTerm(vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2))))),
% 0.18/0.37 inference(symmetry,[status(thm)],[34])).
% 0.18/0.37 tff(36,plain,
% 0.18/0.37 (tptp_fun_VwildcardName0_12(vreduce(vt2)) = vgetTerm(vreduce(vt2))),
% 0.18/0.37 inference(transitivity,[status(thm)],[35, 26])).
% 0.18/0.37 tff(37,plain,
% 0.18/0.37 (vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) <=> vptchecksimple(vgetTerm(vreduce(vt2)), vNat)),
% 0.18/0.37 inference(monotonicity,[status(thm)],[36])).
% 0.18/0.37 tff(38,plain,
% 0.18/0.37 (vptchecksimple(vgetTerm(vreduce(vt2)), vNat) <=> vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat)),
% 0.18/0.37 inference(symmetry,[status(thm)],[37])).
% 0.18/0.37 tff(39,plain,
% 0.18/0.37 ((~vptchecksimple(vgetTerm(vreduce(vt2)), vNat)) <=> (~vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat))),
% 0.18/0.37 inference(monotonicity,[status(thm)],[38])).
% 0.18/0.37 tff(40,plain,
% 0.18/0.37 (vptchecksimple(vPlus(vt1, vt2), VT!63)),
% 0.18/0.37 inference(and_elim,[status(thm)],[9])).
% 0.18/0.37 tff(41,plain,
% 0.18/0.37 (^[Vt1: vTerm, Vt2: vTerm, VT: vTy] : refl(((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat)) <=> ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat)))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(42,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat)) <=> ![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[41])).
% 0.18/0.37 tff(43,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat)) <=> ![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(44,plain,
% 0.18/0.37 (^[Vt1: vTerm, Vt2: vTerm, VT: vTy] : rewrite((vptchecksimple(vPlus(Vt1, Vt2), VT) => (VT = vNat)) <=> ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat)))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(45,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm, VT: vTy] : (vptchecksimple(vPlus(Vt1, Vt2), VT) => (VT = vNat)) <=> ![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[44])).
% 0.18/0.37 tff(46,axiom,(![Vt1: vTerm, Vt2: vTerm, VT: vTy] : (vptchecksimple(vPlus(Vt1, Vt2), VT) => (VT = vNat))), file('/export/starexec/sandbox/benchmark/theBenchmark.p',''TPlus_inv0'')).
% 0.18/0.37 tff(47,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[46, 45])).
% 0.18/0.37 tff(48,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[47, 43])).
% 0.18/0.37 tff(49,plain,(
% 0.18/0.37 ![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))),
% 0.18/0.37 inference(skolemize,[status(sab)],[48])).
% 0.18/0.37 tff(50,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[49, 42])).
% 0.18/0.37 tff(51,plain,
% 0.18/0.37 (((~![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))) | ((~vptchecksimple(vPlus(vt1, vt2), VT!63)) | (VT!63 = vNat))) <=> ((~![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))) | (~vptchecksimple(vPlus(vt1, vt2), VT!63)) | (VT!63 = vNat))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(52,plain,
% 0.18/0.37 ((~![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))) | ((~vptchecksimple(vPlus(vt1, vt2), VT!63)) | (VT!63 = vNat))),
% 0.18/0.37 inference(quant_inst,[status(thm)],[])).
% 0.18/0.37 tff(53,plain,
% 0.18/0.37 ((~![Vt1: vTerm, Vt2: vTerm, VT: vTy] : ((~vptchecksimple(vPlus(Vt1, Vt2), VT)) | (VT = vNat))) | (~vptchecksimple(vPlus(vt1, vt2), VT!63)) | (VT!63 = vNat)),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[52, 51])).
% 0.18/0.37 tff(54,plain,
% 0.18/0.37 (VT!63 = vNat),
% 0.18/0.37 inference(unit_resolution,[status(thm)],[53, 50, 40])).
% 0.18/0.37 tff(55,plain,
% 0.18/0.37 (vNat = VT!63),
% 0.18/0.37 inference(symmetry,[status(thm)],[54])).
% 0.18/0.37 tff(56,plain,
% 0.18/0.37 ((~![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt)) | (vgetTerm(vsomeTerm(Vtres!62)) = Vtres!62)),
% 0.18/0.37 inference(quant_inst,[status(thm)],[])).
% 0.18/0.37 tff(57,plain,
% 0.18/0.37 (vgetTerm(vsomeTerm(Vtres!62)) = Vtres!62),
% 0.18/0.37 inference(unit_resolution,[status(thm)],[56, 32])).
% 0.18/0.37 tff(58,plain,
% 0.18/0.37 (vreduce(vPlus(vt1, vt2)) = vsomeTerm(Vtres!62)),
% 0.18/0.37 inference(and_elim,[status(thm)],[9])).
% 0.18/0.37 tff(59,plain,
% 0.18/0.37 (visNV(vt1)),
% 0.18/0.37 inference(and_elim,[status(thm)],[9])).
% 0.18/0.37 tff(60,plain,
% 0.18/0.37 (~visNV(vt2)),
% 0.18/0.37 inference(and_elim,[status(thm)],[9])).
% 0.18/0.37 tff(61,plain,
% 0.18/0.37 (^[Vt1: vTerm, Vt2: vTerm] : refl((visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1))) <=> (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1))))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(62,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1))) <=> ![Vt1: vTerm, Vt2: vTerm] : (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1)))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[61])).
% 0.18/0.37 tff(63,plain,
% 0.18/0.37 (^[Vt1: vTerm, Vt2: vTerm] : trans(monotonicity(trans(monotonicity(rewrite((visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2))) <=> (~(visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (~visNV(Vt1))))), ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) <=> (~(~(visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (~visNV(Vt1))))))), rewrite((~(~(visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (~visNV(Vt1))))) <=> (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (~visNV(Vt1)))), ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) <=> (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (~visNV(Vt1))))), (((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))) <=> ((visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (~visNV(Vt1))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))))), rewrite(((visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (~visNV(Vt1))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))) <=> (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1)))), (((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))) <=> (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1)))))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(64,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))) <=> ![Vt1: vTerm, Vt2: vTerm] : (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1)))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[63])).
% 0.18/0.37 tff(65,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))) <=> ![Vt1: vTerm, Vt2: vTerm] : ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(66,plain,
% 0.18/0.37 (^[Vt1: vTerm, Vt2: vTerm] : trans(monotonicity(rewrite(((visNV(Vt1) & (~visNV(Vt2))) & visSomeTerm(vreduce(Vt2))) <=> (visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))), ((((visNV(Vt1) & (~visNV(Vt2))) & visSomeTerm(vreduce(Vt2))) => (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))) <=> ((visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2))) => (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))))), rewrite(((visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2))) => (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))) <=> ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))))), ((((visNV(Vt1) & (~visNV(Vt2))) & visSomeTerm(vreduce(Vt2))) => (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))) <=> ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))))))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(67,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : (((visNV(Vt1) & (~visNV(Vt2))) & visSomeTerm(vreduce(Vt2))) => (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2)))))) <=> ![Vt1: vTerm, Vt2: vTerm] : ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[66])).
% 0.18/0.37 tff(68,axiom,(![Vt1: vTerm, Vt2: vTerm] : (((visNV(Vt1) & (~visNV(Vt2))) & visSomeTerm(vreduce(Vt2))) => (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))))), file('/export/starexec/sandbox/benchmark/theBenchmark.p',''reduce-19'')).
% 0.18/0.37 tff(69,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[68, 67])).
% 0.18/0.37 tff(70,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[69, 65])).
% 0.18/0.37 tff(71,plain,(
% 0.18/0.37 ![Vt1: vTerm, Vt2: vTerm] : ((~(visNV(Vt1) & (~visNV(Vt2)) & visSomeTerm(vreduce(Vt2)))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))))),
% 0.18/0.37 inference(skolemize,[status(sab)],[70])).
% 0.18/0.37 tff(72,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1)))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[71, 64])).
% 0.18/0.37 tff(73,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1)))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[72, 62])).
% 0.18/0.37 tff(74,plain,
% 0.18/0.37 (((~![Vt1: vTerm, Vt2: vTerm] : (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1)))) | (visNV(vt2) | (~visSomeTerm(vreduce(vt2))) | (vreduce(vPlus(vt1, vt2)) = vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2))))) | (~visNV(vt1)))) <=> ((~![Vt1: vTerm, Vt2: vTerm] : (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1)))) | visNV(vt2) | (~visSomeTerm(vreduce(vt2))) | (vreduce(vPlus(vt1, vt2)) = vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2))))) | (~visNV(vt1)))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(75,plain,
% 0.18/0.37 ((~![Vt1: vTerm, Vt2: vTerm] : (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1)))) | (visNV(vt2) | (~visSomeTerm(vreduce(vt2))) | (vreduce(vPlus(vt1, vt2)) = vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2))))) | (~visNV(vt1)))),
% 0.18/0.37 inference(quant_inst,[status(thm)],[])).
% 0.18/0.37 tff(76,plain,
% 0.18/0.37 ((~![Vt1: vTerm, Vt2: vTerm] : (visNV(Vt2) | (~visSomeTerm(vreduce(Vt2))) | (vreduce(vPlus(Vt1, Vt2)) = vsomeTerm(vPlus(Vt1, vgetTerm(vreduce(Vt2))))) | (~visNV(Vt1)))) | visNV(vt2) | (~visSomeTerm(vreduce(vt2))) | (vreduce(vPlus(vt1, vt2)) = vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2))))) | (~visNV(vt1))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[75, 74])).
% 0.18/0.37 tff(77,plain,
% 0.18/0.37 (vreduce(vPlus(vt1, vt2)) = vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2))))),
% 0.18/0.37 inference(unit_resolution,[status(thm)],[76, 73, 10, 60, 59])).
% 0.18/0.37 tff(78,plain,
% 0.18/0.37 (vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2)))) = vreduce(vPlus(vt1, vt2))),
% 0.18/0.37 inference(symmetry,[status(thm)],[77])).
% 0.18/0.37 tff(79,plain,
% 0.18/0.37 (vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2)))) = vsomeTerm(Vtres!62)),
% 0.18/0.37 inference(transitivity,[status(thm)],[78, 58])).
% 0.18/0.37 tff(80,plain,
% 0.18/0.37 (vgetTerm(vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2))))) = vgetTerm(vsomeTerm(Vtres!62))),
% 0.18/0.37 inference(monotonicity,[status(thm)],[79])).
% 0.18/0.37 tff(81,plain,
% 0.18/0.37 ((~![Vt: vTerm] : (vgetTerm(vsomeTerm(Vt)) = Vt)) | (vgetTerm(vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2))))) = vPlus(vt1, vgetTerm(vreduce(vt2))))),
% 0.18/0.37 inference(quant_inst,[status(thm)],[])).
% 0.18/0.37 tff(82,plain,
% 0.18/0.37 (vgetTerm(vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2))))) = vPlus(vt1, vgetTerm(vreduce(vt2)))),
% 0.18/0.37 inference(unit_resolution,[status(thm)],[81, 32])).
% 0.18/0.37 tff(83,plain,
% 0.18/0.37 (vPlus(vt1, vgetTerm(vreduce(vt2))) = vgetTerm(vsomeTerm(vPlus(vt1, vgetTerm(vreduce(vt2)))))),
% 0.18/0.37 inference(symmetry,[status(thm)],[82])).
% 0.18/0.37 tff(84,plain,
% 0.18/0.37 (vPlus(vt1, vgetTerm(vreduce(vt2))) = Vtres!62),
% 0.18/0.37 inference(transitivity,[status(thm)],[83, 80, 57])).
% 0.18/0.37 tff(85,plain,
% 0.18/0.37 (vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) <=> vptchecksimple(Vtres!62, VT!63)),
% 0.18/0.37 inference(monotonicity,[status(thm)],[84, 55])).
% 0.18/0.37 tff(86,plain,
% 0.18/0.37 (vptchecksimple(Vtres!62, VT!63) <=> vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat)),
% 0.18/0.37 inference(symmetry,[status(thm)],[85])).
% 0.18/0.37 tff(87,plain,
% 0.18/0.37 ((~vptchecksimple(Vtres!62, VT!63)) <=> (~vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat))),
% 0.18/0.37 inference(monotonicity,[status(thm)],[86])).
% 0.18/0.37 tff(88,plain,
% 0.18/0.37 (~vptchecksimple(Vtres!62, VT!63)),
% 0.18/0.37 inference(or_elim,[status(thm)],[8])).
% 0.18/0.37 tff(89,plain,
% 0.18/0.37 (~vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat)),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[88, 87])).
% 0.18/0.37 tff(90,plain,
% 0.18/0.37 (^[Vt: vTerm] : refl(((~visNV(Vt)) | vptchecksimple(Vt, vNat)) <=> ((~visNV(Vt)) | vptchecksimple(Vt, vNat)))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(91,plain,
% 0.18/0.37 (![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat)) <=> ![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[90])).
% 0.18/0.37 tff(92,plain,
% 0.18/0.37 (![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat)) <=> ![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(93,plain,
% 0.18/0.37 (^[Vt: vTerm] : rewrite((visNV(Vt) => vptchecksimple(Vt, vNat)) <=> ((~visNV(Vt)) | vptchecksimple(Vt, vNat)))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(94,plain,
% 0.18/0.37 (![Vt: vTerm] : (visNV(Vt) => vptchecksimple(Vt, vNat)) <=> ![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[93])).
% 0.18/0.37 tff(95,axiom,(![Vt: vTerm] : (visNV(Vt) => vptchecksimple(Vt, vNat))), file('/export/starexec/sandbox/benchmark/theBenchmark.p','isNVisNat')).
% 0.18/0.37 tff(96,plain,
% 0.18/0.37 (![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[95, 94])).
% 0.18/0.37 tff(97,plain,
% 0.18/0.37 (![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[96, 92])).
% 0.18/0.37 tff(98,plain,(
% 0.18/0.37 ![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))),
% 0.18/0.37 inference(skolemize,[status(sab)],[97])).
% 0.18/0.37 tff(99,plain,
% 0.18/0.37 (![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[98, 91])).
% 0.18/0.37 tff(100,plain,
% 0.18/0.37 (((~![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))) | ((~visNV(vt1)) | vptchecksimple(vt1, vNat))) <=> ((~![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))) | (~visNV(vt1)) | vptchecksimple(vt1, vNat))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(101,plain,
% 0.18/0.37 ((~![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))) | ((~visNV(vt1)) | vptchecksimple(vt1, vNat))),
% 0.18/0.37 inference(quant_inst,[status(thm)],[])).
% 0.18/0.37 tff(102,plain,
% 0.18/0.37 ((~![Vt: vTerm] : ((~visNV(Vt)) | vptchecksimple(Vt, vNat))) | (~visNV(vt1)) | vptchecksimple(vt1, vNat)),
% 0.18/0.37 inference(modus_ponens,[status(thm)],[101, 100])).
% 0.18/0.37 tff(103,plain,
% 0.18/0.37 (vptchecksimple(vt1, vNat)),
% 0.18/0.37 inference(unit_resolution,[status(thm)],[102, 99, 59])).
% 0.18/0.37 tff(104,plain,
% 0.18/0.37 (^[Vt1: vTerm, Vt2: vTerm] : refl((vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat))) <=> (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat))))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(105,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat))) <=> ![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[104])).
% 0.18/0.37 tff(106,plain,
% 0.18/0.37 (^[Vt1: vTerm, Vt2: vTerm] : trans(monotonicity(trans(monotonicity(rewrite((vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat)) <=> (~((~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat))))), ((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) <=> (~(~((~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat))))))), rewrite((~(~((~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat))))) <=> ((~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))), ((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) <=> ((~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat))))), (((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat)) <=> (((~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat)))), rewrite((((~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat)) <=> (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))), (((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat)) <=> (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(107,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : ((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat)) <=> ![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[106])).
% 0.18/0.37 tff(108,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : ((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat)) <=> ![Vt1: vTerm, Vt2: vTerm] : ((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat))),
% 0.18/0.37 inference(rewrite,[status(thm)],[])).
% 0.18/0.37 tff(109,plain,
% 0.18/0.37 (^[Vt1: vTerm, Vt2: vTerm] : rewrite(((vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat)) => vptchecksimple(vPlus(Vt1, Vt2), vNat)) <=> ((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat)))),
% 0.18/0.37 inference(bind,[status(th)],[])).
% 0.18/0.37 tff(110,plain,
% 0.18/0.37 (![Vt1: vTerm, Vt2: vTerm] : ((vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat)) => vptchecksimple(vPlus(Vt1, Vt2), vNat)) <=> ![Vt1: vTerm, Vt2: vTerm] : ((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat))),
% 0.18/0.37 inference(quant_intro,[status(thm)],[109])).
% 0.18/0.37 tff(111,axiom,(![Vt1: vTerm, Vt2: vTerm] : ((vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat)) => vptchecksimple(vPlus(Vt1, Vt2), vNat))), file('/export/starexec/sandbox/benchmark/theBenchmark.p',''TPlus'')).
% 0.18/0.38 tff(112,plain,
% 0.18/0.38 (![Vt1: vTerm, Vt2: vTerm] : ((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat))),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[111, 110])).
% 0.18/0.38 tff(113,plain,
% 0.18/0.38 (![Vt1: vTerm, Vt2: vTerm] : ((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat))),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[112, 108])).
% 0.18/0.38 tff(114,plain,(
% 0.18/0.38 ![Vt1: vTerm, Vt2: vTerm] : ((~(vptchecksimple(Vt1, vNat) & vptchecksimple(Vt2, vNat))) | vptchecksimple(vPlus(Vt1, Vt2), vNat))),
% 0.18/0.38 inference(skolemize,[status(sab)],[113])).
% 0.18/0.38 tff(115,plain,
% 0.18/0.38 (![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[114, 107])).
% 0.18/0.38 tff(116,plain,
% 0.18/0.38 (![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[115, 105])).
% 0.18/0.38 tff(117,plain,
% 0.18/0.38 (((~![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))) | ((~vptchecksimple(vt1, vNat)) | vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat)))) <=> ((~![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))) | (~vptchecksimple(vt1, vNat)) | vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat)))),
% 0.18/0.38 inference(rewrite,[status(thm)],[])).
% 0.18/0.38 tff(118,plain,
% 0.18/0.38 ((vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat)) | (~vptchecksimple(vt1, vNat))) <=> ((~vptchecksimple(vt1, vNat)) | vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat)))),
% 0.18/0.38 inference(rewrite,[status(thm)],[])).
% 0.18/0.38 tff(119,plain,
% 0.18/0.38 (((~![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))) | (vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat)) | (~vptchecksimple(vt1, vNat)))) <=> ((~![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))) | ((~vptchecksimple(vt1, vNat)) | vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat))))),
% 0.18/0.38 inference(monotonicity,[status(thm)],[118])).
% 0.18/0.38 tff(120,plain,
% 0.18/0.38 (((~![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))) | (vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat)) | (~vptchecksimple(vt1, vNat)))) <=> ((~![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))) | (~vptchecksimple(vt1, vNat)) | vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat)))),
% 0.18/0.38 inference(transitivity,[status(thm)],[119, 117])).
% 0.18/0.38 tff(121,plain,
% 0.18/0.38 ((~![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))) | (vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat)) | (~vptchecksimple(vt1, vNat)))),
% 0.18/0.38 inference(quant_inst,[status(thm)],[])).
% 0.18/0.38 tff(122,plain,
% 0.18/0.38 ((~![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) | (~vptchecksimple(Vt2, vNat)) | (~vptchecksimple(Vt1, vNat)))) | (~vptchecksimple(vt1, vNat)) | vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat))),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[121, 120])).
% 0.18/0.38 tff(123,plain,
% 0.18/0.38 (vptchecksimple(vPlus(vt1, vgetTerm(vreduce(vt2))), vNat) | (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat))),
% 0.18/0.38 inference(unit_resolution,[status(thm)],[122, 116, 103])).
% 0.18/0.38 tff(124,plain,
% 0.18/0.38 (~vptchecksimple(vgetTerm(vreduce(vt2)), vNat)),
% 0.18/0.38 inference(unit_resolution,[status(thm)],[123, 89])).
% 0.18/0.38 tff(125,plain,
% 0.18/0.38 (~vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat)),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[124, 39])).
% 0.18/0.38 tff(126,plain,
% 0.18/0.38 (vptchecksimple(vPlus(vt1, vt2), VT!63) <=> vptchecksimple(vPlus(vt1, vt2), vNat)),
% 0.18/0.38 inference(monotonicity,[status(thm)],[54])).
% 0.18/0.38 tff(127,plain,
% 0.18/0.38 (vptchecksimple(vPlus(vt1, vt2), vNat)),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[40, 126])).
% 0.18/0.38 tff(128,plain,
% 0.18/0.38 (^[Vt1: vTerm, Vt2: vTerm] : refl(((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat)) <=> ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat)))),
% 0.18/0.38 inference(bind,[status(th)],[])).
% 0.18/0.38 tff(129,plain,
% 0.18/0.38 (![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat)) <=> ![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))),
% 0.18/0.38 inference(quant_intro,[status(thm)],[128])).
% 0.18/0.38 tff(130,plain,
% 0.18/0.38 (![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat)) <=> ![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))),
% 0.18/0.38 inference(rewrite,[status(thm)],[])).
% 0.18/0.38 tff(131,plain,
% 0.18/0.38 (^[Vt1: vTerm, Vt2: vTerm] : rewrite((vptchecksimple(vPlus(Vt1, Vt2), vNat) => vptchecksimple(Vt2, vNat)) <=> ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat)))),
% 0.18/0.38 inference(bind,[status(th)],[])).
% 0.18/0.38 tff(132,plain,
% 0.18/0.38 (![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) => vptchecksimple(Vt2, vNat)) <=> ![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))),
% 0.18/0.38 inference(quant_intro,[status(thm)],[131])).
% 0.18/0.38 tff(133,axiom,(![Vt1: vTerm, Vt2: vTerm] : (vptchecksimple(vPlus(Vt1, Vt2), vNat) => vptchecksimple(Vt2, vNat))), file('/export/starexec/sandbox/benchmark/theBenchmark.p',''TPlus_inv2'')).
% 0.18/0.38 tff(134,plain,
% 0.18/0.38 (![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[133, 132])).
% 0.18/0.38 tff(135,plain,
% 0.18/0.38 (![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[134, 130])).
% 0.18/0.38 tff(136,plain,(
% 0.18/0.38 ![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))),
% 0.18/0.38 inference(skolemize,[status(sab)],[135])).
% 0.18/0.38 tff(137,plain,
% 0.18/0.38 (![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[136, 129])).
% 0.18/0.38 tff(138,plain,
% 0.18/0.38 (((~![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))) | ((~vptchecksimple(vPlus(vt1, vt2), vNat)) | vptchecksimple(vt2, vNat))) <=> ((~![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))) | (~vptchecksimple(vPlus(vt1, vt2), vNat)) | vptchecksimple(vt2, vNat))),
% 0.18/0.38 inference(rewrite,[status(thm)],[])).
% 0.18/0.38 tff(139,plain,
% 0.18/0.38 ((~![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))) | ((~vptchecksimple(vPlus(vt1, vt2), vNat)) | vptchecksimple(vt2, vNat))),
% 0.18/0.38 inference(quant_inst,[status(thm)],[])).
% 0.18/0.38 tff(140,plain,
% 0.18/0.38 ((~![Vt1: vTerm, Vt2: vTerm] : ((~vptchecksimple(vPlus(Vt1, Vt2), vNat)) | vptchecksimple(Vt2, vNat))) | (~vptchecksimple(vPlus(vt1, vt2), vNat)) | vptchecksimple(vt2, vNat)),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[139, 138])).
% 0.18/0.38 tff(141,plain,
% 0.18/0.38 ((~vptchecksimple(vPlus(vt1, vt2), vNat)) | vptchecksimple(vt2, vNat)),
% 0.18/0.38 inference(unit_resolution,[status(thm)],[140, 137])).
% 0.18/0.38 tff(142,plain,
% 0.18/0.38 (vptchecksimple(vt2, vNat)),
% 0.18/0.38 inference(unit_resolution,[status(thm)],[141, 127])).
% 0.18/0.38 tff(143,plain,
% 0.18/0.38 (^[VT: vTy, Vtres: vTerm] : refl((vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres)))) <=> (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres)))))),
% 0.18/0.38 inference(bind,[status(th)],[])).
% 0.18/0.38 tff(144,plain,
% 0.18/0.38 (![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres)))) <=> ![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))),
% 0.18/0.38 inference(quant_intro,[status(thm)],[143])).
% 0.18/0.38 tff(145,plain,
% 0.18/0.38 (^[VT: vTy, Vtres: vTerm] : trans(monotonicity(trans(monotonicity(rewrite((vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres))) <=> (~((~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres)))))), ((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) <=> (~(~((~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres)))))))), rewrite((~(~((~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres)))))) <=> ((~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))), ((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) <=> ((~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres)))))), (((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT)) <=> (((~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT)))), rewrite((((~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT)) <=> (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))), (((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT)) <=> (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))))),
% 0.18/0.38 inference(bind,[status(th)],[])).
% 0.18/0.38 tff(146,plain,
% 0.18/0.38 (![VT: vTy, Vtres: vTerm] : ((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT)) <=> ![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))),
% 0.18/0.38 inference(quant_intro,[status(thm)],[145])).
% 0.18/0.38 tff(147,plain,
% 0.18/0.38 (![VT: vTy, Vtres: vTerm] : ((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT)) <=> ![VT: vTy, Vtres: vTerm] : ((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT))),
% 0.18/0.38 inference(rewrite,[status(thm)],[])).
% 0.18/0.38 tff(148,plain,
% 0.18/0.38 (^[VT: vTy, Vtres: vTerm] : rewrite(((vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres))) => vptchecksimple(Vtres, VT)) <=> ((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT)))),
% 0.18/0.38 inference(bind,[status(th)],[])).
% 0.18/0.38 tff(149,plain,
% 0.18/0.38 (![VT: vTy, Vtres: vTerm] : ((vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres))) => vptchecksimple(Vtres, VT)) <=> ![VT: vTy, Vtres: vTerm] : ((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT))),
% 0.18/0.38 inference(quant_intro,[status(thm)],[148])).
% 0.18/0.38 tff(150,axiom,(![VT: vTy, Vtres: vTerm] : ((vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres))) => vptchecksimple(Vtres, VT))), file('/export/starexec/sandbox/benchmark/theBenchmark.p',''Preservation-Plus-IH1'')).
% 0.18/0.38 tff(151,plain,
% 0.18/0.38 (![VT: vTy, Vtres: vTerm] : ((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT))),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[150, 149])).
% 0.18/0.38 tff(152,plain,
% 0.18/0.38 (![VT: vTy, Vtres: vTerm] : ((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT))),
% 0.18/0.38 inference(modus_ponens,[status(thm)],[151, 147])).
% 0.18/0.38 tff(153,plain,(
% 0.18/0.38 ![VT: vTy, Vtres: vTerm] : ((~(vptchecksimple(vt2, VT) & (vreduce(vt2) = vsomeTerm(Vtres)))) | vptchecksimple(Vtres, VT))),
% 0.18/0.38 inference(skolemize,[status(sab)],[152])).
% 0.18/0.38 tff(154,plain,
% 0.18/0.38 (![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))),
% 0.18/0.39 inference(modus_ponens,[status(thm)],[153, 146])).
% 0.18/0.39 tff(155,plain,
% 0.18/0.39 (![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))),
% 0.18/0.39 inference(modus_ponens,[status(thm)],[154, 144])).
% 0.18/0.39 tff(156,plain,
% 0.18/0.39 (((~![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))) | ((~vptchecksimple(vt2, vNat)) | vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) | (~(vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2))))))) <=> ((~![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))) | (~vptchecksimple(vt2, vNat)) | vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) | (~(vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2))))))),
% 0.18/0.39 inference(rewrite,[status(thm)],[])).
% 0.18/0.39 tff(157,plain,
% 0.18/0.39 ((vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) | (~vptchecksimple(vt2, vNat)) | (~(vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2)))))) <=> ((~vptchecksimple(vt2, vNat)) | vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) | (~(vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2))))))),
% 0.18/0.39 inference(rewrite,[status(thm)],[])).
% 0.18/0.39 tff(158,plain,
% 0.18/0.39 (((~![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))) | (vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) | (~vptchecksimple(vt2, vNat)) | (~(vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2))))))) <=> ((~![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))) | ((~vptchecksimple(vt2, vNat)) | vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) | (~(vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2)))))))),
% 0.18/0.39 inference(monotonicity,[status(thm)],[157])).
% 0.18/0.39 tff(159,plain,
% 0.18/0.39 (((~![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))) | (vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) | (~vptchecksimple(vt2, vNat)) | (~(vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2))))))) <=> ((~![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))) | (~vptchecksimple(vt2, vNat)) | vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) | (~(vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2))))))),
% 0.18/0.39 inference(transitivity,[status(thm)],[158, 156])).
% 0.18/0.39 tff(160,plain,
% 0.18/0.39 ((~![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))) | (vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) | (~vptchecksimple(vt2, vNat)) | (~(vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2))))))),
% 0.18/0.39 inference(quant_inst,[status(thm)],[])).
% 0.18/0.39 tff(161,plain,
% 0.18/0.39 ((~![VT: vTy, Vtres: vTerm] : (vptchecksimple(Vtres, VT) | (~vptchecksimple(vt2, VT)) | (~(vreduce(vt2) = vsomeTerm(Vtres))))) | (~vptchecksimple(vt2, vNat)) | vptchecksimple(tptp_fun_VwildcardName0_12(vreduce(vt2)), vNat) | (~(vreduce(vt2) = vsomeTerm(tptp_fun_VwildcardName0_12(vreduce(vt2)))))),
% 0.18/0.39 inference(modus_ponens,[status(thm)],[160, 159])).
% 0.18/0.39 tff(162,plain,
% 0.18/0.39 ($false),
% 0.18/0.39 inference(unit_resolution,[status(thm)],[161, 155, 142, 24, 125])).
% 0.18/0.39 % SZS output end Proof
% 0.18/0.39 % E exiting
%------------------------------------------------------------------------------