TSTP Solution File: GRP013-1 by Z3---4.8.9.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Z3---4.8.9.0
% Problem  : GRP013-1 : TPTP v8.1.0. Released v1.0.0.
% Transfm  : none
% Format   : tptp
% Command  : z3_tptp -proof -model -t:%d -file:%s

% Computer : n016.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 : Fri Sep 16 22:25:26 EDT 2022

% Result   : Unsatisfiable 0.19s 0.47s
% Output   : Proof 0.19s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.04/0.12  % Problem  : GRP013-1 : TPTP v8.1.0. Released v1.0.0.
% 0.04/0.13  % Command  : z3_tptp -proof -model -t:%d -file:%s
% 0.12/0.34  % Computer : n016.cluster.edu
% 0.12/0.34  % Model    : x86_64 x86_64
% 0.12/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.34  % Memory   : 8042.1875MB
% 0.12/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.34  % CPULimit : 300
% 0.12/0.34  % WCLimit  : 300
% 0.12/0.34  % DateTime : Wed Aug 31 14:28:17 EDT 2022
% 0.12/0.34  % CPUTime  : 
% 0.12/0.34  Z3tptp [4.8.9.0] (c) 2006-20**. Microsoft Corp.
% 0.12/0.34  Usage: tptp [options] [-file:]file
% 0.12/0.34    -h, -?       prints this message.
% 0.12/0.34    -smt2        print SMT-LIB2 benchmark.
% 0.12/0.34    -m, -model   generate model.
% 0.12/0.34    -p, -proof   generate proof.
% 0.12/0.34    -c, -core    generate unsat core of named formulas.
% 0.12/0.34    -st, -statistics display statistics.
% 0.12/0.34    -t:timeout   set timeout (in second).
% 0.12/0.34    -smt2status  display status in smt2 format instead of SZS.
% 0.12/0.34    -check_status check the status produced by Z3 against annotation in benchmark.
% 0.12/0.34    -<param>:<value> configuration parameter and value.
% 0.12/0.34    -o:<output-file> file to place output in.
% 0.19/0.47  % SZS status Unsatisfiable
% 0.19/0.47  % SZS output start Proof
% 0.19/0.47  tff(product_type, type, (
% 0.19/0.47     product: ( $i * $i * $i ) > $o)).
% 0.19/0.47  tff(d_type, type, (
% 0.19/0.47     d: $i)).
% 0.19/0.47  tff(a_type, type, (
% 0.19/0.47     a: $i)).
% 0.19/0.47  tff(b_type, type, (
% 0.19/0.47     b: $i)).
% 0.19/0.47  tff(inverse_type, type, (
% 0.19/0.47     inverse: $i > $i)).
% 0.19/0.47  tff(identity_type, type, (
% 0.19/0.47     identity: $i)).
% 0.19/0.47  tff(c_type, type, (
% 0.19/0.47     c: $i)).
% 0.19/0.47  tff(1,plain,
% 0.19/0.47      (^[X: $i] : refl(product(X, identity, X) <=> product(X, identity, X))),
% 0.19/0.47      inference(bind,[status(th)],[])).
% 0.19/0.47  tff(2,plain,
% 0.19/0.47      (![X: $i] : product(X, identity, X) <=> ![X: $i] : product(X, identity, X)),
% 0.19/0.47      inference(quant_intro,[status(thm)],[1])).
% 0.19/0.47  tff(3,plain,
% 0.19/0.47      (![X: $i] : product(X, identity, X) <=> ![X: $i] : product(X, identity, X)),
% 0.19/0.47      inference(rewrite,[status(thm)],[])).
% 0.19/0.47  tff(4,axiom,(![X: $i] : product(X, identity, X)), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-0.ax','right_identity')).
% 0.19/0.47  tff(5,plain,
% 0.19/0.47      (![X: $i] : product(X, identity, X)),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[4, 3])).
% 0.19/0.47  tff(6,plain,(
% 0.19/0.47      ![X: $i] : product(X, identity, X)),
% 0.19/0.47      inference(skolemize,[status(sab)],[5])).
% 0.19/0.47  tff(7,plain,
% 0.19/0.47      (![X: $i] : product(X, identity, X)),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[6, 2])).
% 0.19/0.47  tff(8,plain,
% 0.19/0.47      ((~![X: $i] : product(X, identity, X)) | product(inverse(a), identity, inverse(a))),
% 0.19/0.47      inference(quant_inst,[status(thm)],[])).
% 0.19/0.47  tff(9,plain,
% 0.19/0.47      (product(inverse(a), identity, inverse(a))),
% 0.19/0.47      inference(unit_resolution,[status(thm)],[8, 7])).
% 0.19/0.47  tff(10,plain,
% 0.19/0.47      (^[X: $i] : refl(product(inverse(X), X, identity) <=> product(inverse(X), X, identity))),
% 0.19/0.47      inference(bind,[status(th)],[])).
% 0.19/0.47  tff(11,plain,
% 0.19/0.47      (![X: $i] : product(inverse(X), X, identity) <=> ![X: $i] : product(inverse(X), X, identity)),
% 0.19/0.47      inference(quant_intro,[status(thm)],[10])).
% 0.19/0.47  tff(12,plain,
% 0.19/0.47      (![X: $i] : product(inverse(X), X, identity) <=> ![X: $i] : product(inverse(X), X, identity)),
% 0.19/0.47      inference(rewrite,[status(thm)],[])).
% 0.19/0.47  tff(13,axiom,(![X: $i] : product(inverse(X), X, identity)), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-0.ax','left_inverse')).
% 0.19/0.47  tff(14,plain,
% 0.19/0.47      (![X: $i] : product(inverse(X), X, identity)),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[13, 12])).
% 0.19/0.47  tff(15,plain,(
% 0.19/0.47      ![X: $i] : product(inverse(X), X, identity)),
% 0.19/0.47      inference(skolemize,[status(sab)],[14])).
% 0.19/0.47  tff(16,plain,
% 0.19/0.47      (![X: $i] : product(inverse(X), X, identity)),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[15, 11])).
% 0.19/0.47  tff(17,plain,
% 0.19/0.47      ((~![X: $i] : product(inverse(X), X, identity)) | product(inverse(inverse(a)), inverse(a), identity)),
% 0.19/0.47      inference(quant_inst,[status(thm)],[])).
% 0.19/0.47  tff(18,plain,
% 0.19/0.47      (product(inverse(inverse(a)), inverse(a), identity)),
% 0.19/0.47      inference(unit_resolution,[status(thm)],[17, 16])).
% 0.19/0.47  tff(19,plain,
% 0.19/0.47      (^[B: $i, A: $i, C: $i] : refl(((~product(inverse(A), inverse(B), C)) | product(A, C, B)) <=> ((~product(inverse(A), inverse(B), C)) | product(A, C, B)))),
% 0.19/0.47      inference(bind,[status(th)],[])).
% 0.19/0.47  tff(20,plain,
% 0.19/0.47      (![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B)) <=> ![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))),
% 0.19/0.47      inference(quant_intro,[status(thm)],[19])).
% 0.19/0.47  tff(21,plain,
% 0.19/0.47      (![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B)) <=> ![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))),
% 0.19/0.47      inference(rewrite,[status(thm)],[])).
% 0.19/0.47  tff(22,axiom,(![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','inverses_have_property')).
% 0.19/0.47  tff(23,plain,
% 0.19/0.47      (![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[22, 21])).
% 0.19/0.47  tff(24,plain,(
% 0.19/0.47      ![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))),
% 0.19/0.47      inference(skolemize,[status(sab)],[23])).
% 0.19/0.47  tff(25,plain,
% 0.19/0.47      (![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[24, 20])).
% 0.19/0.47  tff(26,plain,
% 0.19/0.47      (((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | ((~product(inverse(inverse(a)), inverse(a), identity)) | product(inverse(a), identity, a))) <=> ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | (~product(inverse(inverse(a)), inverse(a), identity)) | product(inverse(a), identity, a))),
% 0.19/0.47      inference(rewrite,[status(thm)],[])).
% 0.19/0.47  tff(27,plain,
% 0.19/0.47      ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | ((~product(inverse(inverse(a)), inverse(a), identity)) | product(inverse(a), identity, a))),
% 0.19/0.47      inference(quant_inst,[status(thm)],[])).
% 0.19/0.47  tff(28,plain,
% 0.19/0.47      ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | (~product(inverse(inverse(a)), inverse(a), identity)) | product(inverse(a), identity, a)),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[27, 26])).
% 0.19/0.47  tff(29,plain,
% 0.19/0.47      (product(inverse(a), identity, a)),
% 0.19/0.47      inference(unit_resolution,[status(thm)],[28, 25, 18])).
% 0.19/0.47  tff(30,plain,
% 0.19/0.47      (^[W: $i, Z: $i, Y: $i, X: $i] : refl(((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z))) <=> ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z))))),
% 0.19/0.47      inference(bind,[status(th)],[])).
% 0.19/0.47  tff(31,plain,
% 0.19/0.47      (![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z))) <=> ![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))),
% 0.19/0.47      inference(quant_intro,[status(thm)],[30])).
% 0.19/0.47  tff(32,plain,
% 0.19/0.47      (![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z))) <=> ![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))),
% 0.19/0.47      inference(rewrite,[status(thm)],[])).
% 0.19/0.47  tff(33,plain,
% 0.19/0.47      (^[W: $i, Z: $i, Y: $i, X: $i] : rewrite((((~product(X, Y, Z)) | (~product(X, Y, W))) | (Z = W)) <=> ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z))))),
% 0.19/0.47      inference(bind,[status(th)],[])).
% 0.19/0.47  tff(34,plain,
% 0.19/0.47      (![W: $i, Z: $i, Y: $i, X: $i] : (((~product(X, Y, Z)) | (~product(X, Y, W))) | (Z = W)) <=> ![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))),
% 0.19/0.47      inference(quant_intro,[status(thm)],[33])).
% 0.19/0.47  tff(35,axiom,(![W: $i, Z: $i, Y: $i, X: $i] : (((~product(X, Y, Z)) | (~product(X, Y, W))) | (Z = W))), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-0.ax','total_function2')).
% 0.19/0.47  tff(36,plain,
% 0.19/0.47      (![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[35, 34])).
% 0.19/0.47  tff(37,plain,
% 0.19/0.47      (![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[36, 32])).
% 0.19/0.47  tff(38,plain,(
% 0.19/0.47      ![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))),
% 0.19/0.47      inference(skolemize,[status(sab)],[37])).
% 0.19/0.47  tff(39,plain,
% 0.19/0.47      (![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[38, 31])).
% 0.19/0.47  tff(40,plain,
% 0.19/0.47      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | ((~product(inverse(a), identity, inverse(a))) | (~product(inverse(a), identity, a)) | (inverse(a) = a))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | (~product(inverse(a), identity, inverse(a))) | (~product(inverse(a), identity, a)) | (inverse(a) = a))),
% 0.19/0.47      inference(rewrite,[status(thm)],[])).
% 0.19/0.47  tff(41,plain,
% 0.19/0.47      (((inverse(a) = a) | (~product(inverse(a), identity, a)) | (~product(inverse(a), identity, inverse(a)))) <=> ((~product(inverse(a), identity, inverse(a))) | (~product(inverse(a), identity, a)) | (inverse(a) = a))),
% 0.19/0.47      inference(rewrite,[status(thm)],[])).
% 0.19/0.47  tff(42,plain,
% 0.19/0.47      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | ((inverse(a) = a) | (~product(inverse(a), identity, a)) | (~product(inverse(a), identity, inverse(a))))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | ((~product(inverse(a), identity, inverse(a))) | (~product(inverse(a), identity, a)) | (inverse(a) = a)))),
% 0.19/0.47      inference(monotonicity,[status(thm)],[41])).
% 0.19/0.47  tff(43,plain,
% 0.19/0.47      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | ((inverse(a) = a) | (~product(inverse(a), identity, a)) | (~product(inverse(a), identity, inverse(a))))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | (~product(inverse(a), identity, inverse(a))) | (~product(inverse(a), identity, a)) | (inverse(a) = a))),
% 0.19/0.47      inference(transitivity,[status(thm)],[42, 40])).
% 0.19/0.47  tff(44,plain,
% 0.19/0.47      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | ((inverse(a) = a) | (~product(inverse(a), identity, a)) | (~product(inverse(a), identity, inverse(a))))),
% 0.19/0.47      inference(quant_inst,[status(thm)],[])).
% 0.19/0.47  tff(45,plain,
% 0.19/0.47      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | (~product(inverse(a), identity, inverse(a))) | (~product(inverse(a), identity, a)) | (inverse(a) = a)),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[44, 43])).
% 0.19/0.47  tff(46,plain,
% 0.19/0.47      (inverse(a) = a),
% 0.19/0.47      inference(unit_resolution,[status(thm)],[45, 39, 29, 9])).
% 0.19/0.47  tff(47,plain,
% 0.19/0.47      (a = inverse(a)),
% 0.19/0.47      inference(symmetry,[status(thm)],[46])).
% 0.19/0.47  tff(48,plain,
% 0.19/0.47      (product(b, a, d) <=> product(b, inverse(a), d)),
% 0.19/0.47      inference(monotonicity,[status(thm)],[47])).
% 0.19/0.47  tff(49,plain,
% 0.19/0.47      (product(b, inverse(a), d) <=> product(b, a, d)),
% 0.19/0.47      inference(symmetry,[status(thm)],[48])).
% 0.19/0.47  tff(50,plain,
% 0.19/0.47      (^[X: $i] : refl(product(X, inverse(X), identity) <=> product(X, inverse(X), identity))),
% 0.19/0.47      inference(bind,[status(th)],[])).
% 0.19/0.47  tff(51,plain,
% 0.19/0.47      (![X: $i] : product(X, inverse(X), identity) <=> ![X: $i] : product(X, inverse(X), identity)),
% 0.19/0.47      inference(quant_intro,[status(thm)],[50])).
% 0.19/0.47  tff(52,plain,
% 0.19/0.47      (![X: $i] : product(X, inverse(X), identity) <=> ![X: $i] : product(X, inverse(X), identity)),
% 0.19/0.47      inference(rewrite,[status(thm)],[])).
% 0.19/0.47  tff(53,axiom,(![X: $i] : product(X, inverse(X), identity)), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-0.ax','right_inverse')).
% 0.19/0.47  tff(54,plain,
% 0.19/0.47      (![X: $i] : product(X, inverse(X), identity)),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[53, 52])).
% 0.19/0.47  tff(55,plain,(
% 0.19/0.47      ![X: $i] : product(X, inverse(X), identity)),
% 0.19/0.47      inference(skolemize,[status(sab)],[54])).
% 0.19/0.47  tff(56,plain,
% 0.19/0.47      (![X: $i] : product(X, inverse(X), identity)),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[55, 51])).
% 0.19/0.47  tff(57,plain,
% 0.19/0.47      ((~![X: $i] : product(X, inverse(X), identity)) | product(a, inverse(a), identity)),
% 0.19/0.47      inference(quant_inst,[status(thm)],[])).
% 0.19/0.47  tff(58,plain,
% 0.19/0.47      (product(a, inverse(a), identity)),
% 0.19/0.47      inference(unit_resolution,[status(thm)],[57, 56])).
% 0.19/0.47  tff(59,plain,
% 0.19/0.47      (product(inverse(a), inverse(b), d) <=> product(inverse(a), inverse(b), d)),
% 0.19/0.47      inference(rewrite,[status(thm)],[])).
% 0.19/0.47  tff(60,axiom,(product(inverse(a), inverse(b), d)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','inverse_a_times_inverse_b_is_d')).
% 0.19/0.47  tff(61,plain,
% 0.19/0.47      (product(inverse(a), inverse(b), d)),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[60, 59])).
% 0.19/0.47  tff(62,plain,
% 0.19/0.47      (((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | ((~product(inverse(a), inverse(b), d)) | product(a, d, b))) <=> ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | (~product(inverse(a), inverse(b), d)) | product(a, d, b))),
% 0.19/0.47      inference(rewrite,[status(thm)],[])).
% 0.19/0.47  tff(63,plain,
% 0.19/0.47      ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | ((~product(inverse(a), inverse(b), d)) | product(a, d, b))),
% 0.19/0.47      inference(quant_inst,[status(thm)],[])).
% 0.19/0.47  tff(64,plain,
% 0.19/0.47      ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | (~product(inverse(a), inverse(b), d)) | product(a, d, b)),
% 0.19/0.47      inference(modus_ponens,[status(thm)],[63, 62])).
% 0.19/0.47  tff(65,plain,
% 0.19/0.47      (product(a, d, b)),
% 0.19/0.47      inference(unit_resolution,[status(thm)],[64, 61, 25])).
% 0.19/0.47  tff(66,plain,
% 0.19/0.47      (^[W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : refl((product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W))) <=> (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W))))),
% 0.19/0.48      inference(bind,[status(th)],[])).
% 0.19/0.48  tff(67,plain,
% 0.19/0.48      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W))) <=> ![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))),
% 0.19/0.48      inference(quant_intro,[status(thm)],[66])).
% 0.19/0.48  tff(68,plain,
% 0.19/0.48      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W))) <=> ![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(69,plain,
% 0.19/0.48      (^[W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : trans(monotonicity(rewrite((((~product(X, Y, U)) | (~product(Y, Z, V))) | (~product(X, V, W))) <=> ((~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))), (((((~product(X, Y, U)) | (~product(Y, Z, V))) | (~product(X, V, W))) | product(U, Z, W)) <=> (((~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W))) | product(U, Z, W)))), rewrite((((~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W))) | product(U, Z, W)) <=> (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))), (((((~product(X, Y, U)) | (~product(Y, Z, V))) | (~product(X, V, W))) | product(U, Z, W)) <=> (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))))),
% 0.19/0.48      inference(bind,[status(th)],[])).
% 0.19/0.48  tff(70,plain,
% 0.19/0.48      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : ((((~product(X, Y, U)) | (~product(Y, Z, V))) | (~product(X, V, W))) | product(U, Z, W)) <=> ![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))),
% 0.19/0.48      inference(quant_intro,[status(thm)],[69])).
% 0.19/0.48  tff(71,axiom,(![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : ((((~product(X, Y, U)) | (~product(Y, Z, V))) | (~product(X, V, W))) | product(U, Z, W))), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-0.ax','associativity2')).
% 0.19/0.48  tff(72,plain,
% 0.19/0.48      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[71, 70])).
% 0.19/0.48  tff(73,plain,
% 0.19/0.48      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[72, 68])).
% 0.19/0.48  tff(74,plain,(
% 0.19/0.48      ![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))),
% 0.19/0.48      inference(skolemize,[status(sab)],[73])).
% 0.19/0.48  tff(75,plain,
% 0.19/0.48      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[74, 67])).
% 0.19/0.48  tff(76,plain,
% 0.19/0.48      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | ((~product(inverse(a), inverse(b), d)) | product(identity, inverse(b), b) | (~product(a, inverse(a), identity)) | (~product(a, d, b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (~product(inverse(a), inverse(b), d)) | product(identity, inverse(b), b) | (~product(a, inverse(a), identity)) | (~product(a, d, b)))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(77,plain,
% 0.19/0.48      ((product(identity, inverse(b), b) | (~product(inverse(a), inverse(b), d)) | (~product(a, inverse(a), identity)) | (~product(a, d, b))) <=> ((~product(inverse(a), inverse(b), d)) | product(identity, inverse(b), b) | (~product(a, inverse(a), identity)) | (~product(a, d, b)))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(78,plain,
% 0.19/0.48      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (product(identity, inverse(b), b) | (~product(inverse(a), inverse(b), d)) | (~product(a, inverse(a), identity)) | (~product(a, d, b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | ((~product(inverse(a), inverse(b), d)) | product(identity, inverse(b), b) | (~product(a, inverse(a), identity)) | (~product(a, d, b))))),
% 0.19/0.48      inference(monotonicity,[status(thm)],[77])).
% 0.19/0.48  tff(79,plain,
% 0.19/0.48      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (product(identity, inverse(b), b) | (~product(inverse(a), inverse(b), d)) | (~product(a, inverse(a), identity)) | (~product(a, d, b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (~product(inverse(a), inverse(b), d)) | product(identity, inverse(b), b) | (~product(a, inverse(a), identity)) | (~product(a, d, b)))),
% 0.19/0.48      inference(transitivity,[status(thm)],[78, 76])).
% 0.19/0.48  tff(80,plain,
% 0.19/0.48      ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (product(identity, inverse(b), b) | (~product(inverse(a), inverse(b), d)) | (~product(a, inverse(a), identity)) | (~product(a, d, b)))),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(81,plain,
% 0.19/0.48      ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (~product(inverse(a), inverse(b), d)) | product(identity, inverse(b), b) | (~product(a, inverse(a), identity)) | (~product(a, d, b))),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[80, 79])).
% 0.19/0.48  tff(82,plain,
% 0.19/0.48      (product(identity, inverse(b), b)),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[81, 75, 61, 65, 58])).
% 0.19/0.48  tff(83,plain,
% 0.19/0.48      (^[X: $i] : refl(product(identity, X, X) <=> product(identity, X, X))),
% 0.19/0.48      inference(bind,[status(th)],[])).
% 0.19/0.48  tff(84,plain,
% 0.19/0.48      (![X: $i] : product(identity, X, X) <=> ![X: $i] : product(identity, X, X)),
% 0.19/0.48      inference(quant_intro,[status(thm)],[83])).
% 0.19/0.48  tff(85,plain,
% 0.19/0.48      (![X: $i] : product(identity, X, X) <=> ![X: $i] : product(identity, X, X)),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(86,axiom,(![X: $i] : product(identity, X, X)), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-0.ax','left_identity')).
% 0.19/0.48  tff(87,plain,
% 0.19/0.48      (![X: $i] : product(identity, X, X)),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[86, 85])).
% 0.19/0.48  tff(88,plain,(
% 0.19/0.48      ![X: $i] : product(identity, X, X)),
% 0.19/0.48      inference(skolemize,[status(sab)],[87])).
% 0.19/0.48  tff(89,plain,
% 0.19/0.48      (![X: $i] : product(identity, X, X)),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[88, 84])).
% 0.19/0.48  tff(90,plain,
% 0.19/0.48      ((~![X: $i] : product(identity, X, X)) | product(identity, inverse(b), inverse(b))),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(91,plain,
% 0.19/0.48      (product(identity, inverse(b), inverse(b))),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[90, 89])).
% 0.19/0.48  tff(92,plain,
% 0.19/0.48      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | ((inverse(b) = b) | (~product(identity, inverse(b), inverse(b))) | (~product(identity, inverse(b), b)))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | (inverse(b) = b) | (~product(identity, inverse(b), inverse(b))) | (~product(identity, inverse(b), b)))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(93,plain,
% 0.19/0.48      (((inverse(b) = b) | (~product(identity, inverse(b), b)) | (~product(identity, inverse(b), inverse(b)))) <=> ((inverse(b) = b) | (~product(identity, inverse(b), inverse(b))) | (~product(identity, inverse(b), b)))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(94,plain,
% 0.19/0.48      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | ((inverse(b) = b) | (~product(identity, inverse(b), b)) | (~product(identity, inverse(b), inverse(b))))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | ((inverse(b) = b) | (~product(identity, inverse(b), inverse(b))) | (~product(identity, inverse(b), b))))),
% 0.19/0.48      inference(monotonicity,[status(thm)],[93])).
% 0.19/0.48  tff(95,plain,
% 0.19/0.48      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | ((inverse(b) = b) | (~product(identity, inverse(b), b)) | (~product(identity, inverse(b), inverse(b))))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | (inverse(b) = b) | (~product(identity, inverse(b), inverse(b))) | (~product(identity, inverse(b), b)))),
% 0.19/0.48      inference(transitivity,[status(thm)],[94, 92])).
% 0.19/0.48  tff(96,plain,
% 0.19/0.48      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | ((inverse(b) = b) | (~product(identity, inverse(b), b)) | (~product(identity, inverse(b), inverse(b))))),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(97,plain,
% 0.19/0.48      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((Z = W) | (~product(X, Y, W)) | (~product(X, Y, Z)))) | (inverse(b) = b) | (~product(identity, inverse(b), inverse(b))) | (~product(identity, inverse(b), b))),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[96, 95])).
% 0.19/0.48  tff(98,plain,
% 0.19/0.48      (inverse(b) = b),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[97, 39, 91, 82])).
% 0.19/0.48  tff(99,plain,
% 0.19/0.48      (product(inverse(b), inverse(d), inverse(a)) <=> product(b, inverse(d), inverse(a))),
% 0.19/0.48      inference(monotonicity,[status(thm)],[98])).
% 0.19/0.48  tff(100,plain,
% 0.19/0.48      (product(b, inverse(d), inverse(a)) <=> product(inverse(b), inverse(d), inverse(a))),
% 0.19/0.48      inference(symmetry,[status(thm)],[99])).
% 0.19/0.48  tff(101,assumption,(~product(inverse(a), inverse(inverse(a)), identity)), introduced(assumption)).
% 0.19/0.48  tff(102,plain,
% 0.19/0.48      ((~![X: $i] : product(X, inverse(X), identity)) | product(inverse(a), inverse(inverse(a)), identity)),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(103,plain,
% 0.19/0.48      ($false),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[102, 56, 101])).
% 0.19/0.48  tff(104,plain,(product(inverse(a), inverse(inverse(a)), identity)), inference(lemma,lemma(discharge,[]))).
% 0.19/0.48  tff(105,plain,
% 0.19/0.48      (((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | ((~product(inverse(a), inverse(inverse(a)), identity)) | product(a, identity, inverse(a)))) <=> ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | (~product(inverse(a), inverse(inverse(a)), identity)) | product(a, identity, inverse(a)))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(106,plain,
% 0.19/0.48      ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | ((~product(inverse(a), inverse(inverse(a)), identity)) | product(a, identity, inverse(a)))),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(107,plain,
% 0.19/0.48      ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | (~product(inverse(a), inverse(inverse(a)), identity)) | product(a, identity, inverse(a))),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[106, 105])).
% 0.19/0.48  tff(108,plain,
% 0.19/0.48      ((~product(inverse(a), inverse(inverse(a)), identity)) | product(a, identity, inverse(a))),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[107, 25])).
% 0.19/0.48  tff(109,plain,
% 0.19/0.48      (product(a, identity, inverse(a))),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[108, 104])).
% 0.19/0.48  tff(110,plain,
% 0.19/0.48      ((~![X: $i] : product(X, inverse(X), identity)) | product(d, inverse(d), identity)),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(111,plain,
% 0.19/0.48      (product(d, inverse(d), identity)),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[110, 56])).
% 0.19/0.48  tff(112,plain,
% 0.19/0.48      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | ((~product(a, identity, inverse(a))) | (~product(a, d, b)) | product(b, inverse(d), inverse(a)) | (~product(d, inverse(d), identity)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (~product(a, identity, inverse(a))) | (~product(a, d, b)) | product(b, inverse(d), inverse(a)) | (~product(d, inverse(d), identity)))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(113,plain,
% 0.19/0.48      ((product(b, inverse(d), inverse(a)) | (~product(d, inverse(d), identity)) | (~product(a, d, b)) | (~product(a, identity, inverse(a)))) <=> ((~product(a, identity, inverse(a))) | (~product(a, d, b)) | product(b, inverse(d), inverse(a)) | (~product(d, inverse(d), identity)))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(114,plain,
% 0.19/0.48      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (product(b, inverse(d), inverse(a)) | (~product(d, inverse(d), identity)) | (~product(a, d, b)) | (~product(a, identity, inverse(a))))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | ((~product(a, identity, inverse(a))) | (~product(a, d, b)) | product(b, inverse(d), inverse(a)) | (~product(d, inverse(d), identity))))),
% 0.19/0.48      inference(monotonicity,[status(thm)],[113])).
% 0.19/0.48  tff(115,plain,
% 0.19/0.48      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (product(b, inverse(d), inverse(a)) | (~product(d, inverse(d), identity)) | (~product(a, d, b)) | (~product(a, identity, inverse(a))))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (~product(a, identity, inverse(a))) | (~product(a, d, b)) | product(b, inverse(d), inverse(a)) | (~product(d, inverse(d), identity)))),
% 0.19/0.48      inference(transitivity,[status(thm)],[114, 112])).
% 0.19/0.48  tff(116,plain,
% 0.19/0.48      ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (product(b, inverse(d), inverse(a)) | (~product(d, inverse(d), identity)) | (~product(a, d, b)) | (~product(a, identity, inverse(a))))),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(117,plain,
% 0.19/0.48      ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (~product(a, identity, inverse(a))) | (~product(a, d, b)) | product(b, inverse(d), inverse(a)) | (~product(d, inverse(d), identity))),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[116, 115])).
% 0.19/0.48  tff(118,plain,
% 0.19/0.48      (product(b, inverse(d), inverse(a))),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[117, 75, 65, 111, 109])).
% 0.19/0.48  tff(119,plain,
% 0.19/0.48      (product(inverse(b), inverse(d), inverse(a))),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[118, 100])).
% 0.19/0.48  tff(120,plain,
% 0.19/0.48      (((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | ((~product(inverse(b), inverse(d), inverse(a))) | product(b, inverse(a), d))) <=> ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | (~product(inverse(b), inverse(d), inverse(a))) | product(b, inverse(a), d))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(121,plain,
% 0.19/0.48      ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | ((~product(inverse(b), inverse(d), inverse(a))) | product(b, inverse(a), d))),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(122,plain,
% 0.19/0.48      ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | (~product(inverse(b), inverse(d), inverse(a))) | product(b, inverse(a), d)),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[121, 120])).
% 0.19/0.48  tff(123,plain,
% 0.19/0.48      ((~product(inverse(b), inverse(d), inverse(a))) | product(b, inverse(a), d)),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[122, 25])).
% 0.19/0.48  tff(124,plain,
% 0.19/0.48      (product(b, inverse(a), d)),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[123, 119])).
% 0.19/0.48  tff(125,plain,
% 0.19/0.48      (product(b, a, d)),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[124, 49])).
% 0.19/0.48  tff(126,plain,
% 0.19/0.48      (product(inverse(b), inverse(b), identity) <=> product(b, b, identity)),
% 0.19/0.48      inference(monotonicity,[status(thm)],[98, 98])).
% 0.19/0.48  tff(127,plain,
% 0.19/0.48      (product(b, b, identity) <=> product(inverse(b), inverse(b), identity)),
% 0.19/0.48      inference(symmetry,[status(thm)],[126])).
% 0.19/0.48  tff(128,plain,
% 0.19/0.48      (^[A: $i] : refl(product(A, A, identity) <=> product(A, A, identity))),
% 0.19/0.48      inference(bind,[status(th)],[])).
% 0.19/0.48  tff(129,plain,
% 0.19/0.48      (![A: $i] : product(A, A, identity) <=> ![A: $i] : product(A, A, identity)),
% 0.19/0.48      inference(quant_intro,[status(thm)],[128])).
% 0.19/0.48  tff(130,plain,
% 0.19/0.48      (![A: $i] : product(A, A, identity) <=> ![A: $i] : product(A, A, identity)),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(131,axiom,(![A: $i] : product(A, A, identity)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','squareness')).
% 0.19/0.48  tff(132,plain,
% 0.19/0.48      (![A: $i] : product(A, A, identity)),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[131, 130])).
% 0.19/0.48  tff(133,plain,(
% 0.19/0.48      ![A: $i] : product(A, A, identity)),
% 0.19/0.48      inference(skolemize,[status(sab)],[132])).
% 0.19/0.48  tff(134,plain,
% 0.19/0.48      (![A: $i] : product(A, A, identity)),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[133, 129])).
% 0.19/0.48  tff(135,plain,
% 0.19/0.48      ((~![A: $i] : product(A, A, identity)) | product(b, b, identity)),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(136,plain,
% 0.19/0.48      (product(b, b, identity)),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[135, 134])).
% 0.19/0.48  tff(137,plain,
% 0.19/0.48      (product(inverse(b), inverse(b), identity)),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[136, 127])).
% 0.19/0.48  tff(138,plain,
% 0.19/0.48      (((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | ((~product(inverse(b), inverse(b), identity)) | product(b, identity, b))) <=> ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | (~product(inverse(b), inverse(b), identity)) | product(b, identity, b))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(139,plain,
% 0.19/0.48      ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | ((~product(inverse(b), inverse(b), identity)) | product(b, identity, b))),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(140,plain,
% 0.19/0.48      ((~![B: $i, A: $i, C: $i] : ((~product(inverse(A), inverse(B), C)) | product(A, C, B))) | (~product(inverse(b), inverse(b), identity)) | product(b, identity, b)),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[139, 138])).
% 0.19/0.48  tff(141,plain,
% 0.19/0.48      ((~product(inverse(b), inverse(b), identity)) | product(b, identity, b)),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[140, 25])).
% 0.19/0.48  tff(142,plain,
% 0.19/0.48      (product(b, identity, b)),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[141, 137])).
% 0.19/0.48  tff(143,plain,
% 0.19/0.48      ((~![X: $i] : product(X, inverse(X), identity)) | product(b, inverse(b), identity)),
% 0.19/0.48      inference(quant_inst,[status(thm)],[])).
% 0.19/0.48  tff(144,plain,
% 0.19/0.48      (product(b, inverse(b), identity)),
% 0.19/0.48      inference(unit_resolution,[status(thm)],[143, 56])).
% 0.19/0.48  tff(145,plain,
% 0.19/0.48      ((~product(c, d, identity)) <=> (~product(c, d, identity))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(146,axiom,(~product(c, d, identity)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','prove_c_times_d_is_identity')).
% 0.19/0.48  tff(147,plain,
% 0.19/0.48      (~product(c, d, identity)),
% 0.19/0.48      inference(modus_ponens,[status(thm)],[146, 145])).
% 0.19/0.48  tff(148,plain,
% 0.19/0.48      (^[W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : refl((product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U))) <=> (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U))))),
% 0.19/0.48      inference(bind,[status(th)],[])).
% 0.19/0.48  tff(149,plain,
% 0.19/0.48      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U))) <=> ![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))),
% 0.19/0.48      inference(quant_intro,[status(thm)],[148])).
% 0.19/0.48  tff(150,plain,
% 0.19/0.48      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U))) <=> ![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))),
% 0.19/0.48      inference(rewrite,[status(thm)],[])).
% 0.19/0.48  tff(151,plain,
% 0.19/0.48      (^[W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : trans(monotonicity(rewrite((((~product(X, Y, U)) | (~product(Y, Z, V))) | (~product(U, Z, W))) <=> ((~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))), (((((~product(X, Y, U)) | (~product(Y, Z, V))) | (~product(U, Z, W))) | product(X, V, W)) <=> (((~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U))) | product(X, V, W)))), rewrite((((~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U))) | product(X, V, W)) <=> (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))), (((((~product(X, Y, U)) | (~product(Y, Z, V))) | (~product(U, Z, W))) | product(X, V, W)) <=> (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))))),
% 0.19/0.49      inference(bind,[status(th)],[])).
% 0.19/0.49  tff(152,plain,
% 0.19/0.49      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : ((((~product(X, Y, U)) | (~product(Y, Z, V))) | (~product(U, Z, W))) | product(X, V, W)) <=> ![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))),
% 0.19/0.49      inference(quant_intro,[status(thm)],[151])).
% 0.19/0.49  tff(153,axiom,(![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : ((((~product(X, Y, U)) | (~product(Y, Z, V))) | (~product(U, Z, W))) | product(X, V, W))), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-0.ax','associativity1')).
% 0.19/0.49  tff(154,plain,
% 0.19/0.49      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))),
% 0.19/0.49      inference(modus_ponens,[status(thm)],[153, 152])).
% 0.19/0.49  tff(155,plain,
% 0.19/0.49      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))),
% 0.19/0.49      inference(modus_ponens,[status(thm)],[154, 150])).
% 0.19/0.49  tff(156,plain,(
% 0.19/0.49      ![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))),
% 0.19/0.49      inference(skolemize,[status(sab)],[155])).
% 0.19/0.49  tff(157,plain,
% 0.19/0.49      (![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))),
% 0.19/0.49      inference(modus_ponens,[status(thm)],[156, 149])).
% 0.19/0.49  tff(158,plain,
% 0.19/0.49      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | (product(c, d, identity) | (~product(inverse(a), inverse(b), d)) | (~product(b, inverse(b), identity)) | (~product(c, inverse(a), b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | product(c, d, identity) | (~product(inverse(a), inverse(b), d)) | (~product(b, inverse(b), identity)) | (~product(c, inverse(a), b)))),
% 0.19/0.49      inference(rewrite,[status(thm)],[])).
% 0.19/0.49  tff(159,plain,
% 0.19/0.49      ((product(c, d, identity) | (~product(b, inverse(b), identity)) | (~product(inverse(a), inverse(b), d)) | (~product(c, inverse(a), b))) <=> (product(c, d, identity) | (~product(inverse(a), inverse(b), d)) | (~product(b, inverse(b), identity)) | (~product(c, inverse(a), b)))),
% 0.19/0.49      inference(rewrite,[status(thm)],[])).
% 0.19/0.49  tff(160,plain,
% 0.19/0.49      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | (product(c, d, identity) | (~product(b, inverse(b), identity)) | (~product(inverse(a), inverse(b), d)) | (~product(c, inverse(a), b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | (product(c, d, identity) | (~product(inverse(a), inverse(b), d)) | (~product(b, inverse(b), identity)) | (~product(c, inverse(a), b))))),
% 0.19/0.49      inference(monotonicity,[status(thm)],[159])).
% 0.19/0.49  tff(161,plain,
% 0.19/0.49      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | (product(c, d, identity) | (~product(b, inverse(b), identity)) | (~product(inverse(a), inverse(b), d)) | (~product(c, inverse(a), b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | product(c, d, identity) | (~product(inverse(a), inverse(b), d)) | (~product(b, inverse(b), identity)) | (~product(c, inverse(a), b)))),
% 0.19/0.49      inference(transitivity,[status(thm)],[160, 158])).
% 0.19/0.49  tff(162,plain,
% 0.19/0.49      ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | (product(c, d, identity) | (~product(b, inverse(b), identity)) | (~product(inverse(a), inverse(b), d)) | (~product(c, inverse(a), b)))),
% 0.19/0.49      inference(quant_inst,[status(thm)],[])).
% 0.19/0.49  tff(163,plain,
% 0.19/0.49      ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | product(c, d, identity) | (~product(inverse(a), inverse(b), d)) | (~product(b, inverse(b), identity)) | (~product(c, inverse(a), b))),
% 0.19/0.49      inference(modus_ponens,[status(thm)],[162, 161])).
% 0.19/0.49  tff(164,plain,
% 0.19/0.49      (~product(c, inverse(a), b)),
% 0.19/0.49      inference(unit_resolution,[status(thm)],[163, 157, 61, 147, 144])).
% 0.19/0.49  tff(165,plain,
% 0.19/0.49      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | (product(c, inverse(a), b) | (~product(a, identity, inverse(a))) | (~product(b, identity, b)) | (~product(c, a, b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | product(c, inverse(a), b) | (~product(a, identity, inverse(a))) | (~product(b, identity, b)) | (~product(c, a, b)))),
% 0.19/0.49      inference(rewrite,[status(thm)],[])).
% 0.19/0.49  tff(166,plain,
% 0.19/0.49      ((product(c, inverse(a), b) | (~product(b, identity, b)) | (~product(a, identity, inverse(a))) | (~product(c, a, b))) <=> (product(c, inverse(a), b) | (~product(a, identity, inverse(a))) | (~product(b, identity, b)) | (~product(c, a, b)))),
% 0.19/0.49      inference(rewrite,[status(thm)],[])).
% 0.19/0.49  tff(167,plain,
% 0.19/0.49      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | (product(c, inverse(a), b) | (~product(b, identity, b)) | (~product(a, identity, inverse(a))) | (~product(c, a, b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | (product(c, inverse(a), b) | (~product(a, identity, inverse(a))) | (~product(b, identity, b)) | (~product(c, a, b))))),
% 0.19/0.49      inference(monotonicity,[status(thm)],[166])).
% 0.19/0.49  tff(168,plain,
% 0.19/0.49      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | (product(c, inverse(a), b) | (~product(b, identity, b)) | (~product(a, identity, inverse(a))) | (~product(c, a, b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | product(c, inverse(a), b) | (~product(a, identity, inverse(a))) | (~product(b, identity, b)) | (~product(c, a, b)))),
% 0.19/0.49      inference(transitivity,[status(thm)],[167, 165])).
% 0.19/0.49  tff(169,plain,
% 0.19/0.49      ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | (product(c, inverse(a), b) | (~product(b, identity, b)) | (~product(a, identity, inverse(a))) | (~product(c, a, b)))),
% 0.19/0.49      inference(quant_inst,[status(thm)],[])).
% 0.19/0.49  tff(170,plain,
% 0.19/0.49      ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(X, V, W) | (~product(U, Z, W)) | (~product(Y, Z, V)) | (~product(X, Y, U)))) | product(c, inverse(a), b) | (~product(a, identity, inverse(a))) | (~product(b, identity, b)) | (~product(c, a, b))),
% 0.19/0.49      inference(modus_ponens,[status(thm)],[169, 168])).
% 0.19/0.49  tff(171,plain,
% 0.19/0.49      (~product(c, a, b)),
% 0.19/0.49      inference(unit_resolution,[status(thm)],[170, 157, 164, 109, 142])).
% 0.19/0.49  tff(172,plain,
% 0.19/0.49      (product(a, b, c) <=> product(a, b, c)),
% 0.19/0.49      inference(rewrite,[status(thm)],[])).
% 0.19/0.49  tff(173,axiom,(product(a, b, c)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','a_times_b_is_c')).
% 0.19/0.49  tff(174,plain,
% 0.19/0.49      (product(a, b, c)),
% 0.19/0.49      inference(modus_ponens,[status(thm)],[173, 172])).
% 0.19/0.49  tff(175,plain,
% 0.19/0.49      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | ((~product(a, d, b)) | product(c, a, b) | (~product(a, b, c)) | (~product(b, a, d)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (~product(a, d, b)) | product(c, a, b) | (~product(a, b, c)) | (~product(b, a, d)))),
% 0.19/0.49      inference(rewrite,[status(thm)],[])).
% 0.19/0.49  tff(176,plain,
% 0.19/0.49      ((product(c, a, b) | (~product(b, a, d)) | (~product(a, b, c)) | (~product(a, d, b))) <=> ((~product(a, d, b)) | product(c, a, b) | (~product(a, b, c)) | (~product(b, a, d)))),
% 0.19/0.49      inference(rewrite,[status(thm)],[])).
% 0.19/0.49  tff(177,plain,
% 0.19/0.49      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (product(c, a, b) | (~product(b, a, d)) | (~product(a, b, c)) | (~product(a, d, b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | ((~product(a, d, b)) | product(c, a, b) | (~product(a, b, c)) | (~product(b, a, d))))),
% 0.19/0.49      inference(monotonicity,[status(thm)],[176])).
% 0.19/0.49  tff(178,plain,
% 0.19/0.49      (((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (product(c, a, b) | (~product(b, a, d)) | (~product(a, b, c)) | (~product(a, d, b)))) <=> ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (~product(a, d, b)) | product(c, a, b) | (~product(a, b, c)) | (~product(b, a, d)))),
% 0.19/0.49      inference(transitivity,[status(thm)],[177, 175])).
% 0.19/0.49  tff(179,plain,
% 0.19/0.49      ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (product(c, a, b) | (~product(b, a, d)) | (~product(a, b, c)) | (~product(a, d, b)))),
% 0.19/0.49      inference(quant_inst,[status(thm)],[])).
% 0.19/0.49  tff(180,plain,
% 0.19/0.49      ((~![W: $i, V: $i, Z: $i, Y: $i, U: $i, X: $i] : (product(U, Z, W) | (~product(Y, Z, V)) | (~product(X, Y, U)) | (~product(X, V, W)))) | (~product(a, d, b)) | product(c, a, b) | (~product(a, b, c)) | (~product(b, a, d))),
% 0.19/0.49      inference(modus_ponens,[status(thm)],[179, 178])).
% 0.19/0.49  tff(181,plain,
% 0.19/0.49      (~product(b, a, d)),
% 0.19/0.49      inference(unit_resolution,[status(thm)],[180, 75, 174, 65, 171])).
% 0.19/0.49  tff(182,plain,
% 0.19/0.49      ($false),
% 0.19/0.49      inference(unit_resolution,[status(thm)],[181, 125])).
% 0.19/0.49  % SZS output end Proof
%------------------------------------------------------------------------------