%------------------------------------------------------------------------------
% File : Z3---4.15.1
% Problem : GRP037-3 : TPTP v9.0.0. Released v1.0.0.
% Transfm : none
% Format : tptp
% Command : run_E %s %d THM
% Computer : n006.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 : Sat Jun 21 05:06:55 AM UTC 2025
% Result : Unsatisfiable 0.11s 0.39s
% Output : Proof 0.18s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.11/0.11 % Problem : GRP037-3 : TPTP v9.0.0. Released v1.0.0.
% 0.11/0.11 % Command : run_E %s %d THM
% 0.11/0.32 % Computer : n006.cluster.edu
% 0.11/0.32 % Model : x86_64 x86_64
% 0.11/0.32 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.11/0.32 % Memory : 8042.1875MB
% 0.11/0.32 % OS : Linux 3.10.0-693.el7.x86_64
% 0.11/0.32 % CPULimit : 300
% 0.11/0.32 % WCLimit : 300
% 0.11/0.32 % DateTime : Thu Jun 19 15:28:05 EDT 2025
% 0.11/0.32 % CPUTime :
% 0.11/0.39 % SZS status Unsatisfiable
% 0.11/0.39 % SZS output start Proof
% 0.11/0.39 tff(product_type, type, (
% 0.11/0.39 product: ( $i * $i * $i ) > $o)).
% 0.11/0.39 tff(identity_type, type, (
% 0.11/0.39 identity: $i)).
% 0.11/0.39 tff(a_type, type, (
% 0.11/0.39 a: $i)).
% 0.11/0.39 tff(another_inverse_type, type, (
% 0.11/0.39 another_inverse: $i > $i)).
% 0.11/0.39 tff(another_identity_type, type, (
% 0.11/0.39 another_identity: $i)).
% 0.11/0.39 tff(subgroup_member_type, type, (
% 0.11/0.39 subgroup_member: $i > $o)).
% 0.11/0.39 tff(inverse_type, type, (
% 0.11/0.39 inverse: $i > $i)).
% 0.11/0.39 tff(1,assumption,(~product(another_inverse(identity), identity, another_inverse(identity))), introduced(assumption)).
% 0.11/0.39 tff(2,plain,
% 0.11/0.39 (^[X: $i] : refl(product(X, identity, X) <=> product(X, identity, X))),
% 0.11/0.39 inference(bind,[status(th)],[])).
% 0.11/0.39 tff(3,plain,
% 0.11/0.39 (![X: $i] : product(X, identity, X) <=> ![X: $i] : product(X, identity, X)),
% 0.11/0.39 inference(quant_intro,[status(thm)],[2])).
% 0.11/0.39 tff(4,plain,
% 0.11/0.39 (![X: $i] : product(X, identity, X) <=> ![X: $i] : product(X, identity, X)),
% 0.11/0.39 inference(rewrite,[status(thm)],[])).
% 0.11/0.39 tff(5,axiom,(![X: $i] : product(X, identity, X)), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-0.ax','right_identity')).
% 0.11/0.39 tff(6,plain,
% 0.11/0.39 (![X: $i] : product(X, identity, X)),
% 0.11/0.39 inference(modus_ponens,[status(thm)],[5, 4])).
% 0.11/0.39 tff(7,plain,(
% 0.11/0.39 ![X: $i] : product(X, identity, X)),
% 0.11/0.39 inference(skolemize,[status(sab)],[6])).
% 0.11/0.39 tff(8,plain,
% 0.11/0.39 (![X: $i] : product(X, identity, X)),
% 0.11/0.39 inference(modus_ponens,[status(thm)],[7, 3])).
% 0.11/0.39 tff(9,plain,
% 0.11/0.39 ((~![X: $i] : product(X, identity, X)) | product(another_inverse(identity), identity, another_inverse(identity))),
% 0.11/0.39 inference(quant_inst,[status(thm)],[])).
% 0.11/0.39 tff(10,plain,
% 0.11/0.39 ($false),
% 0.11/0.39 inference(unit_resolution,[status(thm)],[9, 8, 1])).
% 0.11/0.39 tff(11,plain,(product(another_inverse(identity), identity, another_inverse(identity))), inference(lemma,lemma(discharge,[]))).
% 0.11/0.39 tff(12,plain,
% 0.11/0.39 (^[X: $i] : refl(product(X, inverse(X), identity) <=> product(X, inverse(X), identity))),
% 0.11/0.39 inference(bind,[status(th)],[])).
% 0.11/0.39 tff(13,plain,
% 0.11/0.39 (![X: $i] : product(X, inverse(X), identity) <=> ![X: $i] : product(X, inverse(X), identity)),
% 0.11/0.39 inference(quant_intro,[status(thm)],[12])).
% 0.11/0.39 tff(14,plain,
% 0.11/0.39 (![X: $i] : product(X, inverse(X), identity) <=> ![X: $i] : product(X, inverse(X), identity)),
% 0.11/0.39 inference(rewrite,[status(thm)],[])).
% 0.11/0.39 tff(15,axiom,(![X: $i] : product(X, inverse(X), identity)), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-0.ax','right_inverse')).
% 0.11/0.39 tff(16,plain,
% 0.11/0.39 (![X: $i] : product(X, inverse(X), identity)),
% 0.11/0.39 inference(modus_ponens,[status(thm)],[15, 14])).
% 0.11/0.39 tff(17,plain,(
% 0.11/0.39 ![X: $i] : product(X, inverse(X), identity)),
% 0.11/0.39 inference(skolemize,[status(sab)],[16])).
% 0.11/0.39 tff(18,plain,
% 0.11/0.39 (![X: $i] : product(X, inverse(X), identity)),
% 0.11/0.39 inference(modus_ponens,[status(thm)],[17, 13])).
% 0.11/0.39 tff(19,plain,
% 0.11/0.39 ((~![X: $i] : product(X, inverse(X), identity)) | product(a, inverse(a), identity)),
% 0.11/0.39 inference(quant_inst,[status(thm)],[])).
% 0.11/0.39 tff(20,plain,
% 0.11/0.39 (product(a, inverse(a), identity)),
% 0.11/0.39 inference(unit_resolution,[status(thm)],[19, 18])).
% 0.11/0.39 tff(21,plain,
% 0.11/0.39 (subgroup_member(a) <=> subgroup_member(a)),
% 0.11/0.39 inference(rewrite,[status(thm)],[])).
% 0.11/0.39 tff(22,axiom,(subgroup_member(a)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','a_is_in_subgroup')).
% 0.11/0.39 tff(23,plain,
% 0.11/0.39 (subgroup_member(a)),
% 0.11/0.39 inference(modus_ponens,[status(thm)],[22, 21])).
% 0.11/0.39 tff(24,plain,
% 0.11/0.39 (^[B: $i, A: $i, C: $i] : refl((subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A))) <=> (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A))))),
% 0.11/0.39 inference(bind,[status(th)],[])).
% 0.11/0.39 tff(25,plain,
% 0.11/0.39 (![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A))) <=> ![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))),
% 0.11/0.39 inference(quant_intro,[status(thm)],[24])).
% 0.11/0.39 tff(26,plain,
% 0.11/0.39 (![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A))) <=> ![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(27,plain,
% 0.11/0.40 (^[B: $i, A: $i, C: $i] : trans(monotonicity(rewrite((((~subgroup_member(A)) | (~subgroup_member(B))) | (~product(A, inverse(B), C))) <=> ((~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))), (((((~subgroup_member(A)) | (~subgroup_member(B))) | (~product(A, inverse(B), C))) | subgroup_member(C)) <=> (((~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A))) | subgroup_member(C)))), rewrite((((~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A))) | subgroup_member(C)) <=> (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))), (((((~subgroup_member(A)) | (~subgroup_member(B))) | (~product(A, inverse(B), C))) | subgroup_member(C)) <=> (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))))),
% 0.11/0.40 inference(bind,[status(th)],[])).
% 0.11/0.40 tff(28,plain,
% 0.11/0.40 (![B: $i, A: $i, C: $i] : ((((~subgroup_member(A)) | (~subgroup_member(B))) | (~product(A, inverse(B), C))) | subgroup_member(C)) <=> ![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))),
% 0.11/0.40 inference(quant_intro,[status(thm)],[27])).
% 0.11/0.40 tff(29,axiom,(![B: $i, A: $i, C: $i] : ((((~subgroup_member(A)) | (~subgroup_member(B))) | (~product(A, inverse(B), C))) | subgroup_member(C))), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-2.ax','closure_of_product_and_inverse')).
% 0.11/0.40 tff(30,plain,
% 0.11/0.40 (![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[29, 28])).
% 0.11/0.40 tff(31,plain,
% 0.11/0.40 (![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[30, 26])).
% 0.11/0.40 tff(32,plain,(
% 0.11/0.40 ![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))),
% 0.11/0.40 inference(skolemize,[status(sab)],[31])).
% 0.11/0.40 tff(33,plain,
% 0.11/0.40 (![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[32, 25])).
% 0.11/0.40 tff(34,plain,
% 0.11/0.40 (((~![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))) | ((~subgroup_member(a)) | subgroup_member(identity) | (~product(a, inverse(a), identity)))) <=> ((~![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))) | (~subgroup_member(a)) | subgroup_member(identity) | (~product(a, inverse(a), identity)))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(35,plain,
% 0.11/0.40 ((subgroup_member(identity) | (~product(a, inverse(a), identity)) | (~subgroup_member(a)) | (~subgroup_member(a))) <=> ((~subgroup_member(a)) | subgroup_member(identity) | (~product(a, inverse(a), identity)))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(36,plain,
% 0.11/0.40 (((~![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))) | (subgroup_member(identity) | (~product(a, inverse(a), identity)) | (~subgroup_member(a)) | (~subgroup_member(a)))) <=> ((~![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))) | ((~subgroup_member(a)) | subgroup_member(identity) | (~product(a, inverse(a), identity))))),
% 0.11/0.40 inference(monotonicity,[status(thm)],[35])).
% 0.11/0.40 tff(37,plain,
% 0.11/0.40 (((~![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))) | (subgroup_member(identity) | (~product(a, inverse(a), identity)) | (~subgroup_member(a)) | (~subgroup_member(a)))) <=> ((~![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))) | (~subgroup_member(a)) | subgroup_member(identity) | (~product(a, inverse(a), identity)))),
% 0.11/0.40 inference(transitivity,[status(thm)],[36, 34])).
% 0.11/0.40 tff(38,plain,
% 0.11/0.40 ((~![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))) | (subgroup_member(identity) | (~product(a, inverse(a), identity)) | (~subgroup_member(a)) | (~subgroup_member(a)))),
% 0.11/0.40 inference(quant_inst,[status(thm)],[])).
% 0.11/0.40 tff(39,plain,
% 0.11/0.40 ((~![B: $i, A: $i, C: $i] : (subgroup_member(C) | (~product(A, inverse(B), C)) | (~subgroup_member(B)) | (~subgroup_member(A)))) | (~subgroup_member(a)) | subgroup_member(identity) | (~product(a, inverse(a), identity))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[38, 37])).
% 0.11/0.40 tff(40,plain,
% 0.11/0.40 (subgroup_member(identity)),
% 0.11/0.40 inference(unit_resolution,[status(thm)],[39, 33, 23, 20])).
% 0.11/0.40 tff(41,plain,
% 0.11/0.40 (^[A: $i] : refl(((~subgroup_member(A)) | subgroup_member(another_inverse(A))) <=> ((~subgroup_member(A)) | subgroup_member(another_inverse(A))))),
% 0.11/0.40 inference(bind,[status(th)],[])).
% 0.11/0.40 tff(42,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A))) <=> ![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A)))),
% 0.11/0.40 inference(quant_intro,[status(thm)],[41])).
% 0.11/0.40 tff(43,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A))) <=> ![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A)))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(44,axiom,(![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A)))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','another_inverse_in_subgroup')).
% 0.11/0.40 tff(45,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A)))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[44, 43])).
% 0.11/0.40 tff(46,plain,(
% 0.11/0.40 ![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A)))),
% 0.11/0.40 inference(skolemize,[status(sab)],[45])).
% 0.11/0.40 tff(47,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A)))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[46, 42])).
% 0.11/0.40 tff(48,plain,
% 0.11/0.40 (((~![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A)))) | ((~subgroup_member(identity)) | subgroup_member(another_inverse(identity)))) <=> ((~![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A)))) | (~subgroup_member(identity)) | subgroup_member(another_inverse(identity)))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(49,plain,
% 0.11/0.40 ((~![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A)))) | ((~subgroup_member(identity)) | subgroup_member(another_inverse(identity)))),
% 0.11/0.40 inference(quant_inst,[status(thm)],[])).
% 0.11/0.40 tff(50,plain,
% 0.11/0.40 ((~![A: $i] : ((~subgroup_member(A)) | subgroup_member(another_inverse(A)))) | (~subgroup_member(identity)) | subgroup_member(another_inverse(identity))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[49, 48])).
% 0.11/0.40 tff(51,plain,
% 0.11/0.40 (subgroup_member(another_inverse(identity))),
% 0.11/0.40 inference(unit_resolution,[status(thm)],[50, 47, 40])).
% 0.11/0.40 tff(52,plain,
% 0.11/0.40 (^[A: $i] : refl(((~subgroup_member(A)) | product(A, another_identity, A)) <=> ((~subgroup_member(A)) | product(A, another_identity, A)))),
% 0.11/0.40 inference(bind,[status(th)],[])).
% 0.11/0.40 tff(53,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A)) <=> ![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A))),
% 0.11/0.40 inference(quant_intro,[status(thm)],[52])).
% 0.11/0.40 tff(54,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A)) <=> ![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(55,axiom,(![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','another_right_identity')).
% 0.11/0.40 tff(56,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[55, 54])).
% 0.11/0.40 tff(57,plain,(
% 0.11/0.40 ![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A))),
% 0.11/0.40 inference(skolemize,[status(sab)],[56])).
% 0.11/0.40 tff(58,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[57, 53])).
% 0.11/0.40 tff(59,plain,
% 0.11/0.40 (((~![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A))) | ((~subgroup_member(another_inverse(identity))) | product(another_inverse(identity), another_identity, another_inverse(identity)))) <=> ((~![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A))) | (~subgroup_member(another_inverse(identity))) | product(another_inverse(identity), another_identity, another_inverse(identity)))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(60,plain,
% 0.11/0.40 ((~![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A))) | ((~subgroup_member(another_inverse(identity))) | product(another_inverse(identity), another_identity, another_inverse(identity)))),
% 0.11/0.40 inference(quant_inst,[status(thm)],[])).
% 0.11/0.40 tff(61,plain,
% 0.11/0.40 ((~![A: $i] : ((~subgroup_member(A)) | product(A, another_identity, A))) | (~subgroup_member(another_inverse(identity))) | product(another_inverse(identity), another_identity, another_inverse(identity))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[60, 59])).
% 0.11/0.40 tff(62,plain,
% 0.11/0.40 (product(another_inverse(identity), another_identity, another_inverse(identity))),
% 0.11/0.40 inference(unit_resolution,[status(thm)],[61, 58, 51])).
% 0.11/0.40 tff(63,plain,
% 0.11/0.40 (^[B: $i, D: $i, A: $i, C: $i] : refl(((D = B) | (~product(A, D, C)) | (~product(A, B, C))) <=> ((D = B) | (~product(A, D, C)) | (~product(A, B, C))))),
% 0.11/0.40 inference(bind,[status(th)],[])).
% 0.11/0.40 tff(64,plain,
% 0.11/0.40 (![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C))) <=> ![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))),
% 0.11/0.40 inference(quant_intro,[status(thm)],[63])).
% 0.11/0.40 tff(65,plain,
% 0.11/0.40 (![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C))) <=> ![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(66,plain,
% 0.11/0.40 (^[B: $i, D: $i, A: $i, C: $i] : trans(monotonicity(rewrite(((~product(A, B, C)) | (~product(A, D, C))) <=> ((~product(A, D, C)) | (~product(A, B, C)))), ((((~product(A, B, C)) | (~product(A, D, C))) | (D = B)) <=> (((~product(A, D, C)) | (~product(A, B, C))) | (D = B)))), rewrite((((~product(A, D, C)) | (~product(A, B, C))) | (D = B)) <=> ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))), ((((~product(A, B, C)) | (~product(A, D, C))) | (D = B)) <=> ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))))),
% 0.11/0.40 inference(bind,[status(th)],[])).
% 0.11/0.40 tff(67,plain,
% 0.11/0.40 (![B: $i, D: $i, A: $i, C: $i] : (((~product(A, B, C)) | (~product(A, D, C))) | (D = B)) <=> ![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))),
% 0.11/0.40 inference(quant_intro,[status(thm)],[66])).
% 0.11/0.40 tff(68,axiom,(![B: $i, D: $i, A: $i, C: $i] : (((~product(A, B, C)) | (~product(A, D, C))) | (D = B))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','product_right_cancellation')).
% 0.11/0.40 tff(69,plain,
% 0.11/0.40 (![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[68, 67])).
% 0.11/0.40 tff(70,plain,
% 0.11/0.40 (![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[69, 65])).
% 0.11/0.40 tff(71,plain,(
% 0.11/0.40 ![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))),
% 0.11/0.40 inference(skolemize,[status(sab)],[70])).
% 0.11/0.40 tff(72,plain,
% 0.11/0.40 (![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[71, 64])).
% 0.11/0.40 tff(73,plain,
% 0.11/0.40 (((~![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))) | ((another_identity = identity) | (~product(another_inverse(identity), another_identity, another_inverse(identity))) | (~product(another_inverse(identity), identity, another_inverse(identity))))) <=> ((~![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))) | (another_identity = identity) | (~product(another_inverse(identity), another_identity, another_inverse(identity))) | (~product(another_inverse(identity), identity, another_inverse(identity))))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(74,plain,
% 0.11/0.40 ((~![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))) | ((another_identity = identity) | (~product(another_inverse(identity), another_identity, another_inverse(identity))) | (~product(another_inverse(identity), identity, another_inverse(identity))))),
% 0.11/0.40 inference(quant_inst,[status(thm)],[])).
% 0.11/0.40 tff(75,plain,
% 0.11/0.40 ((~![B: $i, D: $i, A: $i, C: $i] : ((D = B) | (~product(A, D, C)) | (~product(A, B, C)))) | (another_identity = identity) | (~product(another_inverse(identity), another_identity, another_inverse(identity))) | (~product(another_inverse(identity), identity, another_inverse(identity)))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[74, 73])).
% 0.11/0.40 tff(76,plain,
% 0.11/0.40 (another_identity = identity),
% 0.11/0.40 inference(unit_resolution,[status(thm)],[75, 72, 62, 11])).
% 0.11/0.40 tff(77,plain,
% 0.11/0.40 (identity = another_identity),
% 0.11/0.40 inference(symmetry,[status(thm)],[76])).
% 0.11/0.40 tff(78,plain,
% 0.11/0.40 (product(another_inverse(a), a, identity) <=> product(another_inverse(a), a, another_identity)),
% 0.11/0.40 inference(monotonicity,[status(thm)],[77])).
% 0.11/0.40 tff(79,plain,
% 0.11/0.40 (product(another_inverse(a), a, another_identity) <=> product(another_inverse(a), a, identity)),
% 0.11/0.40 inference(symmetry,[status(thm)],[78])).
% 0.11/0.40 tff(80,plain,
% 0.11/0.40 (^[A: $i] : refl(((~subgroup_member(A)) | product(another_inverse(A), A, another_identity)) <=> ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity)))),
% 0.11/0.40 inference(bind,[status(th)],[])).
% 0.11/0.40 tff(81,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity)) <=> ![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity))),
% 0.11/0.40 inference(quant_intro,[status(thm)],[80])).
% 0.11/0.40 tff(82,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity)) <=> ![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(83,axiom,(![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','another_left_inverse')).
% 0.11/0.40 tff(84,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[83, 82])).
% 0.11/0.40 tff(85,plain,(
% 0.11/0.40 ![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity))),
% 0.11/0.40 inference(skolemize,[status(sab)],[84])).
% 0.11/0.40 tff(86,plain,
% 0.11/0.40 (![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity))),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[85, 81])).
% 0.11/0.40 tff(87,plain,
% 0.11/0.40 (((~![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity))) | ((~subgroup_member(a)) | product(another_inverse(a), a, another_identity))) <=> ((~![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity))) | (~subgroup_member(a)) | product(another_inverse(a), a, another_identity))),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(88,plain,
% 0.11/0.40 ((~![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity))) | ((~subgroup_member(a)) | product(another_inverse(a), a, another_identity))),
% 0.11/0.40 inference(quant_inst,[status(thm)],[])).
% 0.11/0.40 tff(89,plain,
% 0.11/0.40 ((~![A: $i] : ((~subgroup_member(A)) | product(another_inverse(A), A, another_identity))) | (~subgroup_member(a)) | product(another_inverse(a), a, another_identity)),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[88, 87])).
% 0.11/0.40 tff(90,plain,
% 0.11/0.40 (product(another_inverse(a), a, another_identity)),
% 0.11/0.40 inference(unit_resolution,[status(thm)],[89, 86, 23])).
% 0.11/0.40 tff(91,plain,
% 0.11/0.40 (product(another_inverse(a), a, identity)),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[90, 79])).
% 0.11/0.40 tff(92,plain,
% 0.11/0.40 (^[X: $i] : refl(product(inverse(X), X, identity) <=> product(inverse(X), X, identity))),
% 0.11/0.40 inference(bind,[status(th)],[])).
% 0.11/0.40 tff(93,plain,
% 0.11/0.40 (![X: $i] : product(inverse(X), X, identity) <=> ![X: $i] : product(inverse(X), X, identity)),
% 0.11/0.40 inference(quant_intro,[status(thm)],[92])).
% 0.11/0.40 tff(94,plain,
% 0.11/0.40 (![X: $i] : product(inverse(X), X, identity) <=> ![X: $i] : product(inverse(X), X, identity)),
% 0.11/0.40 inference(rewrite,[status(thm)],[])).
% 0.11/0.40 tff(95,axiom,(![X: $i] : product(inverse(X), X, identity)), file('/export/starexec/sandbox2/benchmark/Axioms/GRP003-0.ax','left_inverse')).
% 0.11/0.40 tff(96,plain,
% 0.11/0.40 (![X: $i] : product(inverse(X), X, identity)),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[95, 94])).
% 0.11/0.40 tff(97,plain,(
% 0.11/0.40 ![X: $i] : product(inverse(X), X, identity)),
% 0.11/0.40 inference(skolemize,[status(sab)],[96])).
% 0.11/0.40 tff(98,plain,
% 0.11/0.40 (![X: $i] : product(inverse(X), X, identity)),
% 0.11/0.40 inference(modus_ponens,[status(thm)],[97, 93])).
% 0.11/0.40 tff(99,plain,
% 0.11/0.40 ((~![X: $i] : product(inverse(X), X, identity)) | product(inverse(a), a, identity)),
% 0.11/0.40 inference(quant_inst,[status(thm)],[])).
% 0.11/0.40 tff(100,plain,
% 0.11/0.41 (product(inverse(a), a, identity)),
% 0.11/0.41 inference(unit_resolution,[status(thm)],[99, 98])).
% 0.11/0.41 tff(101,plain,
% 0.11/0.41 ((~(inverse(a) = another_inverse(a))) <=> (~(inverse(a) = another_inverse(a)))),
% 0.11/0.41 inference(rewrite,[status(thm)],[])).
% 0.11/0.41 tff(102,axiom,(~(inverse(a) = another_inverse(a))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','prove_two_inverses_are_equal')).
% 0.11/0.41 tff(103,plain,
% 0.11/0.41 (~(inverse(a) = another_inverse(a))),
% 0.11/0.41 inference(modus_ponens,[status(thm)],[102, 101])).
% 0.11/0.41 tff(104,plain,
% 0.11/0.41 (^[B: $i, D: $i, A: $i, C: $i] : refl(((~product(A, B, C)) | (D = A) | (~product(D, B, C))) <=> ((~product(A, B, C)) | (D = A) | (~product(D, B, C))))),
% 0.11/0.41 inference(bind,[status(th)],[])).
% 0.11/0.41 tff(105,plain,
% 0.11/0.41 (![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C))) <=> ![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))),
% 0.11/0.41 inference(quant_intro,[status(thm)],[104])).
% 0.11/0.41 tff(106,plain,
% 0.11/0.41 (![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C))) <=> ![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))),
% 0.11/0.41 inference(rewrite,[status(thm)],[])).
% 0.11/0.41 tff(107,plain,
% 0.11/0.41 (^[B: $i, D: $i, A: $i, C: $i] : rewrite((((~product(A, B, C)) | (~product(D, B, C))) | (D = A)) <=> ((~product(A, B, C)) | (D = A) | (~product(D, B, C))))),
% 0.11/0.41 inference(bind,[status(th)],[])).
% 0.11/0.41 tff(108,plain,
% 0.11/0.41 (![B: $i, D: $i, A: $i, C: $i] : (((~product(A, B, C)) | (~product(D, B, C))) | (D = A)) <=> ![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))),
% 0.11/0.41 inference(quant_intro,[status(thm)],[107])).
% 0.11/0.41 tff(109,axiom,(![B: $i, D: $i, A: $i, C: $i] : (((~product(A, B, C)) | (~product(D, B, C))) | (D = A))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','product_left_cancellation')).
% 0.11/0.41 tff(110,plain,
% 0.11/0.41 (![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))),
% 0.11/0.41 inference(modus_ponens,[status(thm)],[109, 108])).
% 0.11/0.41 tff(111,plain,
% 0.11/0.41 (![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))),
% 0.11/0.41 inference(modus_ponens,[status(thm)],[110, 106])).
% 0.11/0.41 tff(112,plain,(
% 0.11/0.41 ![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))),
% 0.11/0.41 inference(skolemize,[status(sab)],[111])).
% 0.11/0.41 tff(113,plain,
% 0.11/0.41 (![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))),
% 0.11/0.41 inference(modus_ponens,[status(thm)],[112, 105])).
% 0.11/0.41 tff(114,plain,
% 0.11/0.41 (((~![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))) | ((inverse(a) = another_inverse(a)) | (~product(inverse(a), a, identity)) | (~product(another_inverse(a), a, identity)))) <=> ((~![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))) | (inverse(a) = another_inverse(a)) | (~product(inverse(a), a, identity)) | (~product(another_inverse(a), a, identity)))),
% 0.11/0.41 inference(rewrite,[status(thm)],[])).
% 0.11/0.41 tff(115,plain,
% 0.11/0.41 (((~product(another_inverse(a), a, identity)) | (inverse(a) = another_inverse(a)) | (~product(inverse(a), a, identity))) <=> ((inverse(a) = another_inverse(a)) | (~product(inverse(a), a, identity)) | (~product(another_inverse(a), a, identity)))),
% 0.18/0.41 inference(rewrite,[status(thm)],[])).
% 0.18/0.41 tff(116,plain,
% 0.18/0.41 (((~![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))) | ((~product(another_inverse(a), a, identity)) | (inverse(a) = another_inverse(a)) | (~product(inverse(a), a, identity)))) <=> ((~![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))) | ((inverse(a) = another_inverse(a)) | (~product(inverse(a), a, identity)) | (~product(another_inverse(a), a, identity))))),
% 0.18/0.41 inference(monotonicity,[status(thm)],[115])).
% 0.18/0.41 tff(117,plain,
% 0.18/0.41 (((~![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))) | ((~product(another_inverse(a), a, identity)) | (inverse(a) = another_inverse(a)) | (~product(inverse(a), a, identity)))) <=> ((~![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))) | (inverse(a) = another_inverse(a)) | (~product(inverse(a), a, identity)) | (~product(another_inverse(a), a, identity)))),
% 0.18/0.41 inference(transitivity,[status(thm)],[116, 114])).
% 0.18/0.41 tff(118,plain,
% 0.18/0.41 ((~![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))) | ((~product(another_inverse(a), a, identity)) | (inverse(a) = another_inverse(a)) | (~product(inverse(a), a, identity)))),
% 0.18/0.41 inference(quant_inst,[status(thm)],[])).
% 0.18/0.41 tff(119,plain,
% 0.18/0.41 ((~![B: $i, D: $i, A: $i, C: $i] : ((~product(A, B, C)) | (D = A) | (~product(D, B, C)))) | (inverse(a) = another_inverse(a)) | (~product(inverse(a), a, identity)) | (~product(another_inverse(a), a, identity))),
% 0.18/0.41 inference(modus_ponens,[status(thm)],[118, 117])).
% 0.18/0.41 tff(120,plain,
% 0.18/0.41 (~product(another_inverse(a), a, identity)),
% 0.18/0.41 inference(unit_resolution,[status(thm)],[119, 113, 103, 100])).
% 0.18/0.41 tff(121,plain,
% 0.18/0.41 ($false),
% 0.18/0.41 inference(unit_resolution,[status(thm)],[120, 91])).
% 0.18/0.41 % SZS output end Proof
% 0.18/0.41 % E exiting
%------------------------------------------------------------------------------