↑ Up

Z3---4.15.1.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% 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
%------------------------------------------------------------------------------