TSTP Solution File: ALG202+1 by Z3---4.8.9.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Z3---4.8.9.0
% Problem  : ALG202+1 : TPTP v8.1.0. Released v2.7.0.
% Transfm  : none
% Format   : tptp
% Command  : z3_tptp -proof -model -t:%d -file:%s

% Computer : n023.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 Sep  6 16:09:08 EDT 2022

% Result   : Theorem 0.16s 0.36s
% Output   : Proof 0.16s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.10  % Problem  : ALG202+1 : TPTP v8.1.0. Released v2.7.0.
% 0.00/0.11  % Command  : z3_tptp -proof -model -t:%d -file:%s
% 0.10/0.31  % Computer : n023.cluster.edu
% 0.10/0.31  % Model    : x86_64 x86_64
% 0.10/0.31  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.10/0.31  % Memory   : 8042.1875MB
% 0.10/0.31  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.10/0.31  % CPULimit : 300
% 0.10/0.31  % WCLimit  : 300
% 0.10/0.31  % DateTime : Mon Aug 29 14:12:20 EDT 2022
% 0.10/0.32  % CPUTime  : 
% 0.10/0.32  Z3tptp [4.8.9.0] (c) 2006-20**. Microsoft Corp.
% 0.10/0.32  Usage: tptp [options] [-file:]file
% 0.10/0.32    -h, -?       prints this message.
% 0.10/0.32    -smt2        print SMT-LIB2 benchmark.
% 0.10/0.32    -m, -model   generate model.
% 0.10/0.32    -p, -proof   generate proof.
% 0.10/0.32    -c, -core    generate unsat core of named formulas.
% 0.10/0.32    -st, -statistics display statistics.
% 0.10/0.32    -t:timeout   set timeout (in second).
% 0.10/0.32    -smt2status  display status in smt2 format instead of SZS.
% 0.10/0.32    -check_status check the status produced by Z3 against annotation in benchmark.
% 0.10/0.32    -<param>:<value> configuration parameter and value.
% 0.10/0.32    -o:<output-file> file to place output in.
% 0.16/0.36  % SZS status Theorem
% 0.16/0.36  % SZS output start Proof
% 0.16/0.36  tff(tptp_fun_U_0_type, type, (
% 0.16/0.36     tptp_fun_U_0: $i)).
% 0.16/0.36  tff(op2_type, type, (
% 0.16/0.36     op2: ( $i * $i ) > $i)).
% 0.16/0.36  tff(h_type, type, (
% 0.16/0.36     h: $i > $i)).
% 0.16/0.36  tff(j_type, type, (
% 0.16/0.36     j: $i > $i)).
% 0.16/0.36  tff(sorti2_type, type, (
% 0.16/0.36     sorti2: $i > $o)).
% 0.16/0.36  tff(sorti1_type, type, (
% 0.16/0.36     sorti1: $i > $o)).
% 0.16/0.36  tff(op1_type, type, (
% 0.16/0.36     op1: ( $i * $i ) > $i)).
% 0.16/0.36  tff(1,plain,
% 0.16/0.36      (^[X1: $i] : refl(((~sorti2(X1)) | (h(j(X1)) = X1)) <=> ((~sorti2(X1)) | (h(j(X1)) = X1)))),
% 0.16/0.36      inference(bind,[status(th)],[])).
% 0.16/0.36  tff(2,plain,
% 0.16/0.36      (![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1)) <=> ![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1))),
% 0.16/0.36      inference(quant_intro,[status(thm)],[1])).
% 0.16/0.36  tff(3,plain,
% 0.16/0.36      (![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1)) <=> ![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(4,plain,
% 0.16/0.36      ((~((![U: $i] : (sorti1(U) => sorti2(h(U))) & ![V: $i] : (sorti2(V) => sorti1(j(V)))) => (~(((![W: $i] : (sorti1(W) => ![X: $i] : (sorti1(X) => (h(op1(W, X)) = op2(h(W), h(X))))) & ![Y: $i] : (sorti2(Y) => ![Z: $i] : (sorti2(Z) => (j(op2(Y, Z)) = op1(j(Y), j(Z)))))) & ![X1: $i] : (sorti2(X1) => (h(j(X1)) = X1))) & ![X2: $i] : (sorti1(X2) => (j(h(X2)) = X2)))))) <=> (~((~(![U: $i] : ((~sorti1(U)) | sorti2(h(U))) & ![V: $i] : ((~sorti2(V)) | sorti1(j(V))))) | (~(![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))) & ![Y: $i] : ((~sorti2(Y)) | ![Z: $i] : ((~sorti2(Z)) | (j(op2(Y, Z)) = op1(j(Y), j(Z))))) & ![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1)) & ![X2: $i] : ((~sorti1(X2)) | (j(h(X2)) = X2))))))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(5,axiom,(~((![U: $i] : (sorti1(U) => sorti2(h(U))) & ![V: $i] : (sorti2(V) => sorti1(j(V)))) => (~(((![W: $i] : (sorti1(W) => ![X: $i] : (sorti1(X) => (h(op1(W, X)) = op2(h(W), h(X))))) & ![Y: $i] : (sorti2(Y) => ![Z: $i] : (sorti2(Z) => (j(op2(Y, Z)) = op1(j(Y), j(Z)))))) & ![X1: $i] : (sorti2(X1) => (h(j(X1)) = X1))) & ![X2: $i] : (sorti1(X2) => (j(h(X2)) = X2)))))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','co1')).
% 0.16/0.36  tff(6,plain,
% 0.16/0.36      (~((~(![U: $i] : ((~sorti1(U)) | sorti2(h(U))) & ![V: $i] : ((~sorti2(V)) | sorti1(j(V))))) | (~(![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))) & ![Y: $i] : ((~sorti2(Y)) | ![Z: $i] : ((~sorti2(Z)) | (j(op2(Y, Z)) = op1(j(Y), j(Z))))) & ![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1)) & ![X2: $i] : ((~sorti1(X2)) | (j(h(X2)) = X2)))))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[5, 4])).
% 0.16/0.36  tff(7,plain,
% 0.16/0.36      (![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))) & ![Y: $i] : ((~sorti2(Y)) | ![Z: $i] : ((~sorti2(Z)) | (j(op2(Y, Z)) = op1(j(Y), j(Z))))) & ![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1)) & ![X2: $i] : ((~sorti1(X2)) | (j(h(X2)) = X2))),
% 0.16/0.36      inference(or_elim,[status(thm)],[6])).
% 0.16/0.36  tff(8,plain,
% 0.16/0.36      (![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1))),
% 0.16/0.36      inference(and_elim,[status(thm)],[7])).
% 0.16/0.36  tff(9,plain,
% 0.16/0.36      (![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[8, 3])).
% 0.16/0.36  tff(10,plain,(
% 0.16/0.36      ![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1))),
% 0.16/0.36      inference(skolemize,[status(sab)],[9])).
% 0.16/0.36  tff(11,plain,
% 0.16/0.36      (![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[10, 2])).
% 0.16/0.36  tff(12,plain,
% 0.16/0.36      ((~![U: $i] : ((~sorti2(U)) | (op2(U, U) = U))) <=> (~![U: $i] : ((~sorti2(U)) | (op2(U, U) = U)))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(13,plain,
% 0.16/0.36      ((~![U: $i] : (sorti2(U) => (op2(U, U) = U))) <=> (~![U: $i] : ((~sorti2(U)) | (op2(U, U) = U)))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(14,axiom,(~![U: $i] : (sorti2(U) => (op2(U, U) = U))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','ax4')).
% 0.16/0.36  tff(15,plain,
% 0.16/0.36      (~![U: $i] : ((~sorti2(U)) | (op2(U, U) = U))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[14, 13])).
% 0.16/0.36  tff(16,plain,
% 0.16/0.36      (~![U: $i] : ((~sorti2(U)) | (op2(U, U) = U))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[15, 12])).
% 0.16/0.36  tff(17,plain,
% 0.16/0.36      (~![U: $i] : ((~sorti2(U)) | (op2(U, U) = U))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[16, 12])).
% 0.16/0.36  tff(18,plain,
% 0.16/0.36      (~![U: $i] : ((~sorti2(U)) | (op2(U, U) = U))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[17, 12])).
% 0.16/0.36  tff(19,plain,
% 0.16/0.36      (~![U: $i] : ((~sorti2(U)) | (op2(U, U) = U))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[18, 12])).
% 0.16/0.36  tff(20,plain,
% 0.16/0.36      (~![U: $i] : ((~sorti2(U)) | (op2(U, U) = U))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[19, 12])).
% 0.16/0.36  tff(21,plain,
% 0.16/0.36      (~![U: $i] : ((~sorti2(U)) | (op2(U, U) = U))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[20, 12])).
% 0.16/0.36  tff(22,plain,(
% 0.16/0.36      ~((~sorti2(U!0)) | (op2(U!0, U!0) = U!0))),
% 0.16/0.36      inference(skolemize,[status(sab)],[21])).
% 0.16/0.36  tff(23,plain,
% 0.16/0.36      (sorti2(U!0)),
% 0.16/0.36      inference(or_elim,[status(thm)],[22])).
% 0.16/0.36  tff(24,plain,
% 0.16/0.36      (((~![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1))) | ((~sorti2(U!0)) | (h(j(U!0)) = U!0))) <=> ((~![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1))) | (~sorti2(U!0)) | (h(j(U!0)) = U!0))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(25,plain,
% 0.16/0.36      ((~![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1))) | ((~sorti2(U!0)) | (h(j(U!0)) = U!0))),
% 0.16/0.36      inference(quant_inst,[status(thm)],[])).
% 0.16/0.36  tff(26,plain,
% 0.16/0.36      ((~![X1: $i] : ((~sorti2(X1)) | (h(j(X1)) = X1))) | (~sorti2(U!0)) | (h(j(U!0)) = U!0)),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[25, 24])).
% 0.16/0.36  tff(27,plain,
% 0.16/0.36      (h(j(U!0)) = U!0),
% 0.16/0.36      inference(unit_resolution,[status(thm)],[26, 23, 11])).
% 0.16/0.36  tff(28,plain,
% 0.16/0.36      (^[V: $i] : refl(((~sorti2(V)) | sorti1(j(V))) <=> ((~sorti2(V)) | sorti1(j(V))))),
% 0.16/0.36      inference(bind,[status(th)],[])).
% 0.16/0.36  tff(29,plain,
% 0.16/0.36      (![V: $i] : ((~sorti2(V)) | sorti1(j(V))) <=> ![V: $i] : ((~sorti2(V)) | sorti1(j(V)))),
% 0.16/0.36      inference(quant_intro,[status(thm)],[28])).
% 0.16/0.36  tff(30,plain,
% 0.16/0.36      (![V: $i] : ((~sorti2(V)) | sorti1(j(V))) <=> ![V: $i] : ((~sorti2(V)) | sorti1(j(V)))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(31,plain,
% 0.16/0.36      (![U: $i] : ((~sorti1(U)) | sorti2(h(U))) & ![V: $i] : ((~sorti2(V)) | sorti1(j(V)))),
% 0.16/0.36      inference(or_elim,[status(thm)],[6])).
% 0.16/0.36  tff(32,plain,
% 0.16/0.36      (![V: $i] : ((~sorti2(V)) | sorti1(j(V)))),
% 0.16/0.36      inference(and_elim,[status(thm)],[31])).
% 0.16/0.36  tff(33,plain,
% 0.16/0.36      (![V: $i] : ((~sorti2(V)) | sorti1(j(V)))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[32, 30])).
% 0.16/0.36  tff(34,plain,(
% 0.16/0.36      ![V: $i] : ((~sorti2(V)) | sorti1(j(V)))),
% 0.16/0.36      inference(skolemize,[status(sab)],[33])).
% 0.16/0.36  tff(35,plain,
% 0.16/0.36      (![V: $i] : ((~sorti2(V)) | sorti1(j(V)))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[34, 29])).
% 0.16/0.36  tff(36,plain,
% 0.16/0.36      (((~![V: $i] : ((~sorti2(V)) | sorti1(j(V)))) | ((~sorti2(U!0)) | sorti1(j(U!0)))) <=> ((~![V: $i] : ((~sorti2(V)) | sorti1(j(V)))) | (~sorti2(U!0)) | sorti1(j(U!0)))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(37,plain,
% 0.16/0.36      ((~![V: $i] : ((~sorti2(V)) | sorti1(j(V)))) | ((~sorti2(U!0)) | sorti1(j(U!0)))),
% 0.16/0.36      inference(quant_inst,[status(thm)],[])).
% 0.16/0.36  tff(38,plain,
% 0.16/0.36      ((~![V: $i] : ((~sorti2(V)) | sorti1(j(V)))) | (~sorti2(U!0)) | sorti1(j(U!0))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[37, 36])).
% 0.16/0.36  tff(39,plain,
% 0.16/0.36      (sorti1(j(U!0))),
% 0.16/0.36      inference(unit_resolution,[status(thm)],[38, 23, 35])).
% 0.16/0.36  tff(40,plain,
% 0.16/0.36      (^[U: $i] : refl(((~sorti1(U)) | (op1(U, U) = U)) <=> ((~sorti1(U)) | (op1(U, U) = U)))),
% 0.16/0.36      inference(bind,[status(th)],[])).
% 0.16/0.36  tff(41,plain,
% 0.16/0.36      (![U: $i] : ((~sorti1(U)) | (op1(U, U) = U)) <=> ![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))),
% 0.16/0.36      inference(quant_intro,[status(thm)],[40])).
% 0.16/0.36  tff(42,plain,
% 0.16/0.36      (![U: $i] : ((~sorti1(U)) | (op1(U, U) = U)) <=> ![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(43,plain,
% 0.16/0.36      (^[U: $i] : rewrite((sorti1(U) => (op1(U, U) = U)) <=> ((~sorti1(U)) | (op1(U, U) = U)))),
% 0.16/0.36      inference(bind,[status(th)],[])).
% 0.16/0.36  tff(44,plain,
% 0.16/0.36      (![U: $i] : (sorti1(U) => (op1(U, U) = U)) <=> ![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))),
% 0.16/0.36      inference(quant_intro,[status(thm)],[43])).
% 0.16/0.36  tff(45,axiom,(![U: $i] : (sorti1(U) => (op1(U, U) = U))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','ax3')).
% 0.16/0.36  tff(46,plain,
% 0.16/0.36      (![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[45, 44])).
% 0.16/0.36  tff(47,plain,
% 0.16/0.36      (![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[46, 42])).
% 0.16/0.36  tff(48,plain,(
% 0.16/0.36      ![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))),
% 0.16/0.36      inference(skolemize,[status(sab)],[47])).
% 0.16/0.36  tff(49,plain,
% 0.16/0.36      (![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[48, 41])).
% 0.16/0.36  tff(50,plain,
% 0.16/0.36      (((~![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))) | ((~sorti1(j(U!0))) | (op1(j(U!0), j(U!0)) = j(U!0)))) <=> ((~![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))) | (~sorti1(j(U!0))) | (op1(j(U!0), j(U!0)) = j(U!0)))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(51,plain,
% 0.16/0.36      ((~![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))) | ((~sorti1(j(U!0))) | (op1(j(U!0), j(U!0)) = j(U!0)))),
% 0.16/0.36      inference(quant_inst,[status(thm)],[])).
% 0.16/0.36  tff(52,plain,
% 0.16/0.36      ((~![U: $i] : ((~sorti1(U)) | (op1(U, U) = U))) | (~sorti1(j(U!0))) | (op1(j(U!0), j(U!0)) = j(U!0))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[51, 50])).
% 0.16/0.36  tff(53,plain,
% 0.16/0.36      (op1(j(U!0), j(U!0)) = j(U!0)),
% 0.16/0.36      inference(unit_resolution,[status(thm)],[52, 49, 39])).
% 0.16/0.36  tff(54,plain,
% 0.16/0.36      (h(op1(j(U!0), j(U!0))) = h(j(U!0))),
% 0.16/0.36      inference(monotonicity,[status(thm)],[53])).
% 0.16/0.36  tff(55,plain,
% 0.16/0.36      (^[W: $i] : refl(((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))) <=> ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))))),
% 0.16/0.36      inference(bind,[status(th)],[])).
% 0.16/0.36  tff(56,plain,
% 0.16/0.36      (![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))) <=> ![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))),
% 0.16/0.36      inference(quant_intro,[status(thm)],[55])).
% 0.16/0.36  tff(57,plain,
% 0.16/0.36      (^[W: $i] : rewrite(((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))) <=> ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))))),
% 0.16/0.36      inference(bind,[status(th)],[])).
% 0.16/0.36  tff(58,plain,
% 0.16/0.36      (![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))) <=> ![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))),
% 0.16/0.36      inference(quant_intro,[status(thm)],[57])).
% 0.16/0.36  tff(59,plain,
% 0.16/0.36      (![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))) <=> ![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))),
% 0.16/0.36      inference(transitivity,[status(thm)],[58, 56])).
% 0.16/0.36  tff(60,plain,
% 0.16/0.36      (![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X))))) <=> ![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(61,plain,
% 0.16/0.36      (![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))),
% 0.16/0.36      inference(and_elim,[status(thm)],[7])).
% 0.16/0.36  tff(62,plain,
% 0.16/0.36      (![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[61, 60])).
% 0.16/0.36  tff(63,plain,(
% 0.16/0.36      ![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))),
% 0.16/0.36      inference(skolemize,[status(sab)],[62])).
% 0.16/0.36  tff(64,plain,
% 0.16/0.36      (![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))),
% 0.16/0.36      inference(modus_ponens,[status(thm)],[63, 59])).
% 0.16/0.36  tff(65,plain,
% 0.16/0.36      (((~![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))) | ((~sorti1(j(U!0))) | ![X: $i] : ((~sorti1(X)) | (h(op1(j(U!0), X)) = op2(h(j(U!0)), h(X)))))) <=> ((~![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))) | (~sorti1(j(U!0))) | ![X: $i] : ((~sorti1(X)) | (h(op1(j(U!0), X)) = op2(h(j(U!0)), h(X)))))),
% 0.16/0.36      inference(rewrite,[status(thm)],[])).
% 0.16/0.36  tff(66,plain,
% 0.16/0.36      ((~![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))) | ((~sorti1(j(U!0))) | ![X: $i] : ((~sorti1(X)) | (h(op1(j(U!0), X)) = op2(h(j(U!0)), h(X)))))),
% 0.16/0.36      inference(quant_inst,[status(thm)],[])).
% 0.16/0.36  tff(67,plain,
% 0.16/0.36      ((~![W: $i] : ((~sorti1(W)) | ![X: $i] : ((~sorti1(X)) | (h(op1(W, X)) = op2(h(W), h(X)))))) | (~sorti1(j(U!0))) | ![X: $i] : ((~sorti1(X)) | (h(op1(j(U!0), X)) = op2(h(j(U!0)), h(X))))),
% 0.16/0.37      inference(modus_ponens,[status(thm)],[66, 65])).
% 0.16/0.37  tff(68,plain,
% 0.16/0.37      (![X: $i] : ((~sorti1(X)) | (h(op1(j(U!0), X)) = op2(h(j(U!0)), h(X))))),
% 0.16/0.37      inference(unit_resolution,[status(thm)],[67, 64, 39])).
% 0.16/0.37  tff(69,plain,
% 0.16/0.37      (((~![X: $i] : ((~sorti1(X)) | (h(op1(j(U!0), X)) = op2(h(j(U!0)), h(X))))) | ((~sorti1(j(U!0))) | (h(op1(j(U!0), j(U!0))) = op2(h(j(U!0)), h(j(U!0)))))) <=> ((~![X: $i] : ((~sorti1(X)) | (h(op1(j(U!0), X)) = op2(h(j(U!0)), h(X))))) | (~sorti1(j(U!0))) | (h(op1(j(U!0), j(U!0))) = op2(h(j(U!0)), h(j(U!0)))))),
% 0.16/0.37      inference(rewrite,[status(thm)],[])).
% 0.16/0.37  tff(70,plain,
% 0.16/0.37      ((~![X: $i] : ((~sorti1(X)) | (h(op1(j(U!0), X)) = op2(h(j(U!0)), h(X))))) | ((~sorti1(j(U!0))) | (h(op1(j(U!0), j(U!0))) = op2(h(j(U!0)), h(j(U!0)))))),
% 0.16/0.37      inference(quant_inst,[status(thm)],[])).
% 0.16/0.37  tff(71,plain,
% 0.16/0.37      ((~![X: $i] : ((~sorti1(X)) | (h(op1(j(U!0), X)) = op2(h(j(U!0)), h(X))))) | (~sorti1(j(U!0))) | (h(op1(j(U!0), j(U!0))) = op2(h(j(U!0)), h(j(U!0))))),
% 0.16/0.37      inference(modus_ponens,[status(thm)],[70, 69])).
% 0.16/0.37  tff(72,plain,
% 0.16/0.37      (h(op1(j(U!0), j(U!0))) = op2(h(j(U!0)), h(j(U!0)))),
% 0.16/0.37      inference(unit_resolution,[status(thm)],[71, 39, 68])).
% 0.16/0.37  tff(73,plain,
% 0.16/0.37      (op2(h(j(U!0)), h(j(U!0))) = h(op1(j(U!0), j(U!0)))),
% 0.16/0.37      inference(symmetry,[status(thm)],[72])).
% 0.16/0.37  tff(74,plain,
% 0.16/0.37      (U!0 = h(j(U!0))),
% 0.16/0.37      inference(symmetry,[status(thm)],[27])).
% 0.16/0.37  tff(75,plain,
% 0.16/0.37      (op2(U!0, U!0) = op2(h(j(U!0)), h(j(U!0)))),
% 0.16/0.37      inference(monotonicity,[status(thm)],[74, 74])).
% 0.16/0.37  tff(76,plain,
% 0.16/0.37      (op2(U!0, U!0) = U!0),
% 0.16/0.37      inference(transitivity,[status(thm)],[75, 73, 54, 27])).
% 0.16/0.37  tff(77,plain,
% 0.16/0.37      (~(op2(U!0, U!0) = U!0)),
% 0.16/0.37      inference(or_elim,[status(thm)],[22])).
% 0.16/0.37  tff(78,plain,
% 0.16/0.37      ($false),
% 0.16/0.37      inference(unit_resolution,[status(thm)],[77, 76])).
% 0.16/0.37  % SZS output end Proof
%------------------------------------------------------------------------------