↑ Up

Z3---4.15.1.UNS-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : Z3---4.15.1
% Problem  : CAT003-1 : TPTP v9.0.0. Released v1.0.0.
% Transfm  : none
% Format   : tptp
% Command  : run_E %s %d THM

% Computer : n015.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:00:18 AM UTC 2025

% Result   : Unsatisfiable 0.39s 0.62s
% Output   : Proof 0.48s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.04/0.12  % Problem    : CAT003-1 : TPTP v9.0.0. Released v1.0.0.
% 0.04/0.12  % Command    : run_E %s %d THM
% 0.12/0.34  % Computer : n015.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   : Thu Jun 19 11:51:11 EDT 2025
% 0.12/0.34  % CPUTime    : 
% 0.39/0.62  % SZS status Unsatisfiable
% 0.39/0.62  % SZS output start Proof
% 0.39/0.62  tff(product_type, type, (
% 0.39/0.62     product: ( $i * $i * $i ) > $o)).
% 0.39/0.62  tff(compose_type, type, (
% 0.39/0.62     compose: ( $i * $i ) > $i)).
% 0.39/0.62  tff(b_type, type, (
% 0.39/0.62     b: $i)).
% 0.39/0.62  tff(a_type, type, (
% 0.39/0.62     a: $i)).
% 0.39/0.62  tff(h_type, type, (
% 0.39/0.62     h: $i)).
% 0.39/0.62  tff(c_type, type, (
% 0.39/0.62     c: $i)).
% 0.39/0.62  tff(g_type, type, (
% 0.39/0.62     g: $i)).
% 0.39/0.62  tff(defined_type, type, (
% 0.39/0.62     defined: ( $i * $i ) > $o)).
% 0.39/0.62  tff(codomain_type, type, (
% 0.39/0.62     codomain: $i > $i)).
% 0.39/0.62  tff(d_type, type, (
% 0.39/0.62     d: $i)).
% 0.39/0.62  tff(identity_map_type, type, (
% 0.39/0.62     identity_map: $i > $o)).
% 0.39/0.62  tff(1,plain,
% 0.39/0.62      (product(a, b, c) <=> product(a, b, c)),
% 0.39/0.62      inference(rewrite,[status(thm)],[])).
% 0.39/0.62  tff(2,axiom,(product(a, b, c)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','ab_equals_c')).
% 0.39/0.62  tff(3,plain,
% 0.39/0.62      (product(a, b, c)),
% 0.39/0.62      inference(modus_ponens,[status(thm)],[2, 1])).
% 0.39/0.62  tff(4,plain,
% 0.39/0.62      (^[Z: $i, Y: $i, X: $i] : refl(((~product(X, Y, Z)) | defined(X, Y)) <=> ((~product(X, Y, Z)) | defined(X, Y)))),
% 0.39/0.62      inference(bind,[status(th)],[])).
% 0.39/0.62  tff(5,plain,
% 0.39/0.62      (![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y)) <=> ![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))),
% 0.39/0.62      inference(quant_intro,[status(thm)],[4])).
% 0.39/0.62  tff(6,plain,
% 0.39/0.62      (![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y)) <=> ![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))),
% 0.39/0.62      inference(rewrite,[status(thm)],[])).
% 0.39/0.62  tff(7,axiom,(![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))), file('/export/starexec/sandbox2/benchmark/Axioms/CAT001-0.ax','associative_property1')).
% 0.39/0.62  tff(8,plain,
% 0.39/0.62      (![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))),
% 0.39/0.62      inference(modus_ponens,[status(thm)],[7, 6])).
% 0.39/0.62  tff(9,plain,(
% 0.39/0.62      ![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))),
% 0.39/0.62      inference(skolemize,[status(sab)],[8])).
% 0.39/0.62  tff(10,plain,
% 0.39/0.62      (![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))),
% 0.39/0.62      inference(modus_ponens,[status(thm)],[9, 5])).
% 0.39/0.62  tff(11,plain,
% 0.39/0.62      (((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | ((~product(a, b, c)) | defined(a, b))) <=> ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | (~product(a, b, c)) | defined(a, b))),
% 0.39/0.62      inference(rewrite,[status(thm)],[])).
% 0.39/0.62  tff(12,plain,
% 0.39/0.62      ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | ((~product(a, b, c)) | defined(a, b))),
% 0.39/0.62      inference(quant_inst,[status(thm)],[])).
% 0.39/0.62  tff(13,plain,
% 0.39/0.62      ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | (~product(a, b, c)) | defined(a, b)),
% 0.39/0.62      inference(modus_ponens,[status(thm)],[12, 11])).
% 0.39/0.62  tff(14,plain,
% 0.39/0.62      (defined(a, b)),
% 0.39/0.62      inference(unit_resolution,[status(thm)],[13, 10, 3])).
% 0.39/0.62  tff(15,plain,
% 0.39/0.62      (^[Y: $i, X: $i] : refl(((~defined(X, Y)) | product(X, Y, compose(X, Y))) <=> ((~defined(X, Y)) | product(X, Y, compose(X, Y))))),
% 0.39/0.62      inference(bind,[status(th)],[])).
% 0.39/0.62  tff(16,plain,
% 0.39/0.62      (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y))) <=> ![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.39/0.62      inference(quant_intro,[status(thm)],[15])).
% 0.39/0.62  tff(17,plain,
% 0.39/0.62      (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y))) <=> ![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.39/0.62      inference(rewrite,[status(thm)],[])).
% 0.39/0.62  tff(18,axiom,(![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))), file('/export/starexec/sandbox2/benchmark/Axioms/CAT001-0.ax','closure_of_composition')).
% 0.39/0.62  tff(19,plain,
% 0.39/0.62      (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.39/0.62      inference(modus_ponens,[status(thm)],[18, 17])).
% 0.39/0.62  tff(20,plain,(
% 0.39/0.62      ![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.39/0.62      inference(skolemize,[status(sab)],[19])).
% 0.39/0.62  tff(21,plain,
% 0.39/0.62      (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.39/0.62      inference(modus_ponens,[status(thm)],[20, 16])).
% 0.39/0.62  tff(22,plain,
% 0.39/0.62      (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(a, b)) | product(a, b, compose(a, b)))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(a, b)) | product(a, b, compose(a, b)))),
% 0.45/0.62      inference(rewrite,[status(thm)],[])).
% 0.45/0.62  tff(23,plain,
% 0.45/0.62      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(a, b)) | product(a, b, compose(a, b)))),
% 0.45/0.62      inference(quant_inst,[status(thm)],[])).
% 0.45/0.62  tff(24,plain,
% 0.45/0.62      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(a, b)) | product(a, b, compose(a, b))),
% 0.45/0.62      inference(modus_ponens,[status(thm)],[23, 22])).
% 0.45/0.62  tff(25,plain,
% 0.45/0.62      (product(a, b, compose(a, b))),
% 0.45/0.62      inference(unit_resolution,[status(thm)],[24, 21, 14])).
% 0.45/0.62  tff(26,plain,
% 0.45/0.62      (^[W: $i, Z: $i, Y: $i, X: $i] : refl(((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W)) <=> ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W)))),
% 0.45/0.62      inference(bind,[status(th)],[])).
% 0.45/0.62  tff(27,plain,
% 0.45/0.62      (![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] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.45/0.62      inference(quant_intro,[status(thm)],[26])).
% 0.45/0.62  tff(28,plain,
% 0.45/0.62      (![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] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.45/0.62      inference(rewrite,[status(thm)],[])).
% 0.45/0.62  tff(29,plain,
% 0.45/0.62      (^[W: $i, Z: $i, Y: $i, X: $i] : rewrite((((~product(X, Y, Z)) | (~product(X, Y, W))) | (Z = W)) <=> ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W)))),
% 0.45/0.62      inference(bind,[status(th)],[])).
% 0.45/0.62  tff(30,plain,
% 0.45/0.62      (![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] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.45/0.62      inference(quant_intro,[status(thm)],[29])).
% 0.45/0.62  tff(31,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/CAT001-0.ax','composition_is_well_defined')).
% 0.45/0.62  tff(32,plain,
% 0.45/0.62      (![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.45/0.62      inference(modus_ponens,[status(thm)],[31, 30])).
% 0.45/0.62  tff(33,plain,
% 0.45/0.62      (![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.45/0.62      inference(modus_ponens,[status(thm)],[32, 28])).
% 0.45/0.62  tff(34,plain,(
% 0.45/0.62      ![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.45/0.62      inference(skolemize,[status(sab)],[33])).
% 0.45/0.62  tff(35,plain,
% 0.45/0.62      (![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.45/0.62      inference(modus_ponens,[status(thm)],[34, 27])).
% 0.45/0.62  tff(36,plain,
% 0.45/0.62      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(a, b, c)) | (~product(a, b, compose(a, b))) | (c = compose(a, b)))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(a, b, c)) | (~product(a, b, compose(a, b))) | (c = compose(a, b)))),
% 0.45/0.62      inference(rewrite,[status(thm)],[])).
% 0.45/0.62  tff(37,plain,
% 0.45/0.62      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(a, b, c)) | (~product(a, b, compose(a, b))) | (c = compose(a, b)))),
% 0.45/0.63      inference(quant_inst,[status(thm)],[])).
% 0.45/0.63  tff(38,plain,
% 0.45/0.63      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(a, b, c)) | (~product(a, b, compose(a, b))) | (c = compose(a, b))),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[37, 36])).
% 0.45/0.63  tff(39,plain,
% 0.45/0.63      (c = compose(a, b)),
% 0.45/0.63      inference(unit_resolution,[status(thm)],[38, 35, 3, 25])).
% 0.45/0.63  tff(40,plain,
% 0.45/0.63      (product(g, c, compose(compose(h, a), b)) <=> product(g, compose(a, b), compose(compose(h, a), b))),
% 0.45/0.63      inference(monotonicity,[status(thm)],[39])).
% 0.45/0.63  tff(41,plain,
% 0.45/0.63      (product(g, compose(a, b), compose(compose(h, a), b)) <=> product(g, c, compose(compose(h, a), b))),
% 0.45/0.63      inference(symmetry,[status(thm)],[40])).
% 0.45/0.63  tff(42,plain,
% 0.45/0.63      (product(h, a, d) <=> product(h, a, d)),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(43,axiom,(product(h, a, d)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','ha_equals_d')).
% 0.45/0.63  tff(44,plain,
% 0.45/0.63      (product(h, a, d)),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[43, 42])).
% 0.45/0.63  tff(45,plain,
% 0.45/0.63      (((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | ((~product(h, a, d)) | defined(h, a))) <=> ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | (~product(h, a, d)) | defined(h, a))),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(46,plain,
% 0.45/0.63      ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | ((~product(h, a, d)) | defined(h, a))),
% 0.45/0.63      inference(quant_inst,[status(thm)],[])).
% 0.45/0.63  tff(47,plain,
% 0.45/0.63      ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | (~product(h, a, d)) | defined(h, a)),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[46, 45])).
% 0.45/0.63  tff(48,plain,
% 0.45/0.63      (defined(h, a)),
% 0.45/0.63      inference(unit_resolution,[status(thm)],[47, 10, 44])).
% 0.45/0.63  tff(49,plain,
% 0.45/0.63      (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(h, a)) | product(h, a, compose(h, a)))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(h, a)) | product(h, a, compose(h, a)))),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(50,plain,
% 0.45/0.63      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(h, a)) | product(h, a, compose(h, a)))),
% 0.45/0.63      inference(quant_inst,[status(thm)],[])).
% 0.45/0.63  tff(51,plain,
% 0.45/0.63      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(h, a)) | product(h, a, compose(h, a))),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[50, 49])).
% 0.45/0.63  tff(52,plain,
% 0.45/0.63      (product(h, a, compose(h, a))),
% 0.45/0.63      inference(unit_resolution,[status(thm)],[51, 21, 48])).
% 0.45/0.63  tff(53,plain,
% 0.45/0.63      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(h, a, d)) | (~product(h, a, compose(h, a))) | (d = compose(h, a)))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(h, a, d)) | (~product(h, a, compose(h, a))) | (d = compose(h, a)))),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(54,plain,
% 0.45/0.63      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(h, a, d)) | (~product(h, a, compose(h, a))) | (d = compose(h, a)))),
% 0.45/0.63      inference(quant_inst,[status(thm)],[])).
% 0.45/0.63  tff(55,plain,
% 0.45/0.63      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(h, a, d)) | (~product(h, a, compose(h, a))) | (d = compose(h, a))),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[54, 53])).
% 0.45/0.63  tff(56,plain,
% 0.45/0.63      (d = compose(h, a)),
% 0.45/0.63      inference(unit_resolution,[status(thm)],[55, 35, 44, 52])).
% 0.45/0.63  tff(57,plain,
% 0.45/0.63      (compose(h, a) = d),
% 0.45/0.63      inference(symmetry,[status(thm)],[56])).
% 0.45/0.63  tff(58,plain,
% 0.45/0.63      (^[X: $i] : refl(defined(codomain(X), X) <=> defined(codomain(X), X))),
% 0.45/0.63      inference(bind,[status(th)],[])).
% 0.45/0.63  tff(59,plain,
% 0.45/0.63      (![X: $i] : defined(codomain(X), X) <=> ![X: $i] : defined(codomain(X), X)),
% 0.45/0.63      inference(quant_intro,[status(thm)],[58])).
% 0.45/0.63  tff(60,plain,
% 0.45/0.63      (![X: $i] : defined(codomain(X), X) <=> ![X: $i] : defined(codomain(X), X)),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(61,axiom,(![X: $i] : defined(codomain(X), X)), file('/export/starexec/sandbox2/benchmark/Axioms/CAT001-0.ax','mapping_from_codomain_of_x_to_x')).
% 0.45/0.63  tff(62,plain,
% 0.45/0.63      (![X: $i] : defined(codomain(X), X)),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[61, 60])).
% 0.45/0.63  tff(63,plain,(
% 0.45/0.63      ![X: $i] : defined(codomain(X), X)),
% 0.45/0.63      inference(skolemize,[status(sab)],[62])).
% 0.45/0.63  tff(64,plain,
% 0.45/0.63      (![X: $i] : defined(codomain(X), X)),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[63, 59])).
% 0.45/0.63  tff(65,plain,
% 0.45/0.63      ((~![X: $i] : defined(codomain(X), X)) | defined(codomain(a), a)),
% 0.45/0.63      inference(quant_inst,[status(thm)],[])).
% 0.45/0.63  tff(66,plain,
% 0.45/0.63      (defined(codomain(a), a)),
% 0.45/0.63      inference(unit_resolution,[status(thm)],[65, 64])).
% 0.45/0.63  tff(67,plain,
% 0.45/0.63      (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(codomain(a), a)) | product(codomain(a), a, compose(codomain(a), a)))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(codomain(a), a)) | product(codomain(a), a, compose(codomain(a), a)))),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(68,plain,
% 0.45/0.63      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(codomain(a), a)) | product(codomain(a), a, compose(codomain(a), a)))),
% 0.45/0.63      inference(quant_inst,[status(thm)],[])).
% 0.45/0.63  tff(69,plain,
% 0.45/0.63      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(codomain(a), a)) | product(codomain(a), a, compose(codomain(a), a))),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[68, 67])).
% 0.45/0.63  tff(70,plain,
% 0.45/0.63      (product(codomain(a), a, compose(codomain(a), a))),
% 0.45/0.63      inference(unit_resolution,[status(thm)],[69, 21, 66])).
% 0.45/0.63  tff(71,plain,
% 0.45/0.63      (^[X: $i] : refl(product(codomain(X), X, X) <=> product(codomain(X), X, X))),
% 0.45/0.63      inference(bind,[status(th)],[])).
% 0.45/0.63  tff(72,plain,
% 0.45/0.63      (![X: $i] : product(codomain(X), X, X) <=> ![X: $i] : product(codomain(X), X, X)),
% 0.45/0.63      inference(quant_intro,[status(thm)],[71])).
% 0.45/0.63  tff(73,plain,
% 0.45/0.63      (![X: $i] : product(codomain(X), X, X) <=> ![X: $i] : product(codomain(X), X, X)),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(74,axiom,(![X: $i] : product(codomain(X), X, X)), file('/export/starexec/sandbox2/benchmark/Axioms/CAT001-0.ax','product_on_codomain')).
% 0.45/0.63  tff(75,plain,
% 0.45/0.63      (![X: $i] : product(codomain(X), X, X)),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[74, 73])).
% 0.45/0.63  tff(76,plain,(
% 0.45/0.63      ![X: $i] : product(codomain(X), X, X)),
% 0.45/0.63      inference(skolemize,[status(sab)],[75])).
% 0.45/0.63  tff(77,plain,
% 0.45/0.63      (![X: $i] : product(codomain(X), X, X)),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[76, 72])).
% 0.45/0.63  tff(78,plain,
% 0.45/0.63      ((~![X: $i] : product(codomain(X), X, X)) | product(codomain(a), a, a)),
% 0.45/0.63      inference(quant_inst,[status(thm)],[])).
% 0.45/0.63  tff(79,plain,
% 0.45/0.63      (product(codomain(a), a, a)),
% 0.45/0.63      inference(unit_resolution,[status(thm)],[78, 77])).
% 0.45/0.63  tff(80,plain,
% 0.45/0.63      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(codomain(a), a, a)) | (~product(codomain(a), a, compose(codomain(a), a))) | (a = compose(codomain(a), a)))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(codomain(a), a, a)) | (~product(codomain(a), a, compose(codomain(a), a))) | (a = compose(codomain(a), a)))),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(81,plain,
% 0.45/0.63      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(codomain(a), a, a)) | (~product(codomain(a), a, compose(codomain(a), a))) | (a = compose(codomain(a), a)))),
% 0.45/0.63      inference(quant_inst,[status(thm)],[])).
% 0.45/0.63  tff(82,plain,
% 0.45/0.63      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(codomain(a), a, a)) | (~product(codomain(a), a, compose(codomain(a), a))) | (a = compose(codomain(a), a))),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[81, 80])).
% 0.45/0.63  tff(83,plain,
% 0.45/0.63      (a = compose(codomain(a), a)),
% 0.45/0.63      inference(unit_resolution,[status(thm)],[82, 35, 79, 70])).
% 0.45/0.63  tff(84,plain,
% 0.45/0.63      (compose(codomain(a), a) = a),
% 0.45/0.63      inference(symmetry,[status(thm)],[83])).
% 0.45/0.63  tff(85,plain,
% 0.45/0.63      (product(g, compose(codomain(a), a), compose(h, a)) <=> product(g, a, d)),
% 0.45/0.63      inference(monotonicity,[status(thm)],[84, 57])).
% 0.45/0.63  tff(86,plain,
% 0.45/0.63      (product(g, a, d) <=> product(g, compose(codomain(a), a), compose(h, a))),
% 0.45/0.63      inference(symmetry,[status(thm)],[85])).
% 0.45/0.63  tff(87,plain,
% 0.45/0.63      (product(g, a, d) <=> product(g, a, d)),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(88,axiom,(product(g, a, d)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','ga_equals_d')).
% 0.45/0.63  tff(89,plain,
% 0.45/0.63      (product(g, a, d)),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[88, 87])).
% 0.45/0.63  tff(90,plain,
% 0.45/0.63      (product(g, compose(codomain(a), a), compose(h, a))),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[89, 86])).
% 0.45/0.63  tff(91,plain,
% 0.45/0.63      (product(compose(codomain(a), a), b, compose(a, b)) <=> product(a, b, compose(a, b))),
% 0.45/0.63      inference(monotonicity,[status(thm)],[84])).
% 0.45/0.63  tff(92,plain,
% 0.45/0.63      (product(a, b, compose(a, b)) <=> product(compose(codomain(a), a), b, compose(a, b))),
% 0.45/0.63      inference(symmetry,[status(thm)],[91])).
% 0.45/0.63  tff(93,plain,
% 0.45/0.63      (product(compose(codomain(a), a), b, compose(a, b))),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[25, 92])).
% 0.45/0.63  tff(94,plain,
% 0.45/0.63      (^[Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : refl((defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))) <=> (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))))),
% 0.45/0.63      inference(bind,[status(th)],[])).
% 0.45/0.63  tff(95,plain,
% 0.45/0.63      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))) <=> ![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.63      inference(quant_intro,[status(thm)],[94])).
% 0.45/0.63  tff(96,plain,
% 0.45/0.63      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))) <=> ![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(97,plain,
% 0.45/0.63      (^[Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : trans(monotonicity(rewrite((((~product(X, Y, Xy)) | (~product(Y, Z, Yz))) | (~defined(Xy, Z))) <=> ((~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))), (((((~product(X, Y, Xy)) | (~product(Y, Z, Yz))) | (~defined(Xy, Z))) | defined(X, Yz)) <=> (((~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | defined(X, Yz)))), rewrite((((~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | defined(X, Yz)) <=> (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))), (((((~product(X, Y, Xy)) | (~product(Y, Z, Yz))) | (~defined(Xy, Z))) | defined(X, Yz)) <=> (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))))),
% 0.45/0.63      inference(bind,[status(th)],[])).
% 0.45/0.63  tff(98,plain,
% 0.45/0.63      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((((~product(X, Y, Xy)) | (~product(Y, Z, Yz))) | (~defined(Xy, Z))) | defined(X, Yz)) <=> ![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.63      inference(quant_intro,[status(thm)],[97])).
% 0.45/0.63  tff(99,axiom,(![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((((~product(X, Y, Xy)) | (~product(Y, Z, Yz))) | (~defined(Xy, Z))) | defined(X, Yz))), file('/export/starexec/sandbox2/benchmark/Axioms/CAT001-0.ax','category_theory_axiom1')).
% 0.45/0.63  tff(100,plain,
% 0.45/0.63      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[99, 98])).
% 0.45/0.63  tff(101,plain,
% 0.45/0.63      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[100, 96])).
% 0.45/0.63  tff(102,plain,(
% 0.45/0.63      ![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.63      inference(skolemize,[status(sab)],[101])).
% 0.45/0.63  tff(103,plain,
% 0.45/0.63      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.63      inference(modus_ponens,[status(thm)],[102, 95])).
% 0.45/0.63  tff(104,plain,
% 0.45/0.63      (((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | ((~defined(a, b)) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, a)) | defined(codomain(a), compose(a, b)))) <=> ((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | (~defined(a, b)) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, a)) | defined(codomain(a), compose(a, b)))),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(105,plain,
% 0.45/0.63      ((defined(codomain(a), compose(a, b)) | (~defined(a, b)) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, a))) <=> ((~defined(a, b)) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, a)) | defined(codomain(a), compose(a, b)))),
% 0.45/0.63      inference(rewrite,[status(thm)],[])).
% 0.45/0.63  tff(106,plain,
% 0.45/0.63      (((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | (defined(codomain(a), compose(a, b)) | (~defined(a, b)) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, a)))) <=> ((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | ((~defined(a, b)) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, a)) | defined(codomain(a), compose(a, b))))),
% 0.45/0.64      inference(monotonicity,[status(thm)],[105])).
% 0.45/0.64  tff(107,plain,
% 0.45/0.64      (((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | (defined(codomain(a), compose(a, b)) | (~defined(a, b)) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, a)))) <=> ((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | (~defined(a, b)) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, a)) | defined(codomain(a), compose(a, b)))),
% 0.45/0.64      inference(transitivity,[status(thm)],[106, 104])).
% 0.45/0.64  tff(108,plain,
% 0.45/0.64      ((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | (defined(codomain(a), compose(a, b)) | (~defined(a, b)) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, a)))),
% 0.45/0.64      inference(quant_inst,[status(thm)],[])).
% 0.45/0.64  tff(109,plain,
% 0.45/0.64      ((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : (defined(X, Yz) | (~defined(Xy, Z)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | (~defined(a, b)) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, a)) | defined(codomain(a), compose(a, b))),
% 0.45/0.64      inference(modus_ponens,[status(thm)],[108, 107])).
% 0.45/0.64  tff(110,plain,
% 0.45/0.64      (defined(codomain(a), compose(a, b))),
% 0.45/0.64      inference(unit_resolution,[status(thm)],[109, 103, 14, 25, 79])).
% 0.45/0.64  tff(111,plain,
% 0.45/0.64      (^[Z: $i, Y: $i, X: $i, Yz: $i] : refl(((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz))) <=> ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz))))),
% 0.45/0.64      inference(bind,[status(th)],[])).
% 0.45/0.64  tff(112,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz))) <=> ![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.45/0.64      inference(quant_intro,[status(thm)],[111])).
% 0.45/0.64  tff(113,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz))) <=> ![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.45/0.64      inference(rewrite,[status(thm)],[])).
% 0.45/0.64  tff(114,plain,
% 0.45/0.64      (^[Z: $i, Y: $i, X: $i, Yz: $i] : trans(monotonicity(rewrite(((~product(Y, Z, Yz)) | (~defined(X, Yz))) <=> ((~defined(X, Yz)) | (~product(Y, Z, Yz)))), ((((~product(Y, Z, Yz)) | (~defined(X, Yz))) | defined(X, Y)) <=> (((~defined(X, Yz)) | (~product(Y, Z, Yz))) | defined(X, Y)))), rewrite((((~defined(X, Yz)) | (~product(Y, Z, Yz))) | defined(X, Y)) <=> ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))), ((((~product(Y, Z, Yz)) | (~defined(X, Yz))) | defined(X, Y)) <=> ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))))),
% 0.45/0.64      inference(bind,[status(th)],[])).
% 0.45/0.64  tff(115,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i, Yz: $i] : (((~product(Y, Z, Yz)) | (~defined(X, Yz))) | defined(X, Y)) <=> ![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.45/0.64      inference(quant_intro,[status(thm)],[114])).
% 0.45/0.64  tff(116,axiom,(![Z: $i, Y: $i, X: $i, Yz: $i] : (((~product(Y, Z, Yz)) | (~defined(X, Yz))) | defined(X, Y))), file('/export/starexec/sandbox2/benchmark/Axioms/CAT001-0.ax','category_theory_axiom3')).
% 0.45/0.64  tff(117,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.45/0.64      inference(modus_ponens,[status(thm)],[116, 115])).
% 0.45/0.64  tff(118,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.45/0.64      inference(modus_ponens,[status(thm)],[117, 113])).
% 0.45/0.64  tff(119,plain,(
% 0.45/0.64      ![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.45/0.64      inference(skolemize,[status(sab)],[118])).
% 0.45/0.64  tff(120,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.45/0.64      inference(modus_ponens,[status(thm)],[119, 112])).
% 0.45/0.64  tff(121,plain,
% 0.45/0.64      (((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(h, a)) | (~product(codomain(a), a, a)) | defined(h, codomain(a)))) <=> ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | (~defined(h, a)) | (~product(codomain(a), a, a)) | defined(h, codomain(a)))),
% 0.45/0.64      inference(rewrite,[status(thm)],[])).
% 0.45/0.64  tff(122,plain,
% 0.45/0.64      (((~defined(h, a)) | defined(h, codomain(a)) | (~product(codomain(a), a, a))) <=> ((~defined(h, a)) | (~product(codomain(a), a, a)) | defined(h, codomain(a)))),
% 0.45/0.64      inference(rewrite,[status(thm)],[])).
% 0.45/0.64  tff(123,plain,
% 0.45/0.64      (((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(h, a)) | defined(h, codomain(a)) | (~product(codomain(a), a, a)))) <=> ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(h, a)) | (~product(codomain(a), a, a)) | defined(h, codomain(a))))),
% 0.45/0.64      inference(monotonicity,[status(thm)],[122])).
% 0.45/0.64  tff(124,plain,
% 0.45/0.64      (((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(h, a)) | defined(h, codomain(a)) | (~product(codomain(a), a, a)))) <=> ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | (~defined(h, a)) | (~product(codomain(a), a, a)) | defined(h, codomain(a)))),
% 0.45/0.64      inference(transitivity,[status(thm)],[123, 121])).
% 0.45/0.64  tff(125,plain,
% 0.45/0.64      ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(h, a)) | defined(h, codomain(a)) | (~product(codomain(a), a, a)))),
% 0.45/0.64      inference(quant_inst,[status(thm)],[])).
% 0.45/0.64  tff(126,plain,
% 0.45/0.64      ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | (~defined(h, a)) | (~product(codomain(a), a, a)) | defined(h, codomain(a))),
% 0.45/0.64      inference(modus_ponens,[status(thm)],[125, 124])).
% 0.45/0.64  tff(127,plain,
% 0.45/0.64      (defined(h, codomain(a))),
% 0.45/0.64      inference(unit_resolution,[status(thm)],[126, 120, 48, 79])).
% 0.45/0.64  tff(128,plain,
% 0.45/0.64      (^[X: $i] : refl(identity_map(codomain(X)) <=> identity_map(codomain(X)))),
% 0.45/0.64      inference(bind,[status(th)],[])).
% 0.45/0.64  tff(129,plain,
% 0.45/0.64      (![X: $i] : identity_map(codomain(X)) <=> ![X: $i] : identity_map(codomain(X))),
% 0.45/0.64      inference(quant_intro,[status(thm)],[128])).
% 0.45/0.64  tff(130,plain,
% 0.45/0.64      (![X: $i] : identity_map(codomain(X)) <=> ![X: $i] : identity_map(codomain(X))),
% 0.45/0.64      inference(rewrite,[status(thm)],[])).
% 0.45/0.64  tff(131,axiom,(![X: $i] : identity_map(codomain(X))), file('/export/starexec/sandbox2/benchmark/Axioms/CAT001-0.ax','codomain_is_an_identity_map')).
% 0.45/0.64  tff(132,plain,
% 0.45/0.64      (![X: $i] : identity_map(codomain(X))),
% 0.45/0.64      inference(modus_ponens,[status(thm)],[131, 130])).
% 0.45/0.64  tff(133,plain,(
% 0.45/0.64      ![X: $i] : identity_map(codomain(X))),
% 0.45/0.64      inference(skolemize,[status(sab)],[132])).
% 0.45/0.64  tff(134,plain,
% 0.45/0.64      (![X: $i] : identity_map(codomain(X))),
% 0.45/0.64      inference(modus_ponens,[status(thm)],[133, 129])).
% 0.45/0.64  tff(135,plain,
% 0.45/0.64      ((~![X: $i] : identity_map(codomain(X))) | identity_map(codomain(a))),
% 0.45/0.64      inference(quant_inst,[status(thm)],[])).
% 0.45/0.64  tff(136,plain,
% 0.45/0.64      (identity_map(codomain(a))),
% 0.45/0.64      inference(unit_resolution,[status(thm)],[135, 134])).
% 0.45/0.64  tff(137,assumption,(~defined(h, compose(a, b))), introduced(assumption)).
% 0.45/0.64  tff(138,plain,
% 0.45/0.64      (^[Z: $i, Y: $i, X: $i] : refl(((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z))) <=> ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z))))),
% 0.45/0.64      inference(bind,[status(th)],[])).
% 0.45/0.64  tff(139,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z))) <=> ![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.45/0.64      inference(quant_intro,[status(thm)],[138])).
% 0.45/0.64  tff(140,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z))) <=> ![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.45/0.64      inference(rewrite,[status(thm)],[])).
% 0.45/0.64  tff(141,plain,
% 0.45/0.64      (^[Z: $i, Y: $i, X: $i] : trans(monotonicity(rewrite((((~defined(X, Y)) | (~defined(Y, Z))) | (~identity_map(Y))) <=> ((~defined(X, Y)) | (~identity_map(Y)) | (~defined(Y, Z)))), (((((~defined(X, Y)) | (~defined(Y, Z))) | (~identity_map(Y))) | defined(X, Z)) <=> (((~defined(X, Y)) | (~identity_map(Y)) | (~defined(Y, Z))) | defined(X, Z)))), rewrite((((~defined(X, Y)) | (~identity_map(Y)) | (~defined(Y, Z))) | defined(X, Z)) <=> ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))), (((((~defined(X, Y)) | (~defined(Y, Z))) | (~identity_map(Y))) | defined(X, Z)) <=> ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))))),
% 0.45/0.64      inference(bind,[status(th)],[])).
% 0.45/0.64  tff(142,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i] : ((((~defined(X, Y)) | (~defined(Y, Z))) | (~identity_map(Y))) | defined(X, Z)) <=> ![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.45/0.64      inference(quant_intro,[status(thm)],[141])).
% 0.45/0.64  tff(143,axiom,(![Z: $i, Y: $i, X: $i] : ((((~defined(X, Y)) | (~defined(Y, Z))) | (~identity_map(Y))) | defined(X, Z))), file('/export/starexec/sandbox2/benchmark/Axioms/CAT001-0.ax','category_theory_axiom6')).
% 0.45/0.64  tff(144,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.45/0.64      inference(modus_ponens,[status(thm)],[143, 142])).
% 0.45/0.64  tff(145,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.45/0.64      inference(modus_ponens,[status(thm)],[144, 140])).
% 0.45/0.64  tff(146,plain,(
% 0.45/0.64      ![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.45/0.64      inference(skolemize,[status(sab)],[145])).
% 0.45/0.64  tff(147,plain,
% 0.45/0.64      (![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.45/0.64      inference(modus_ponens,[status(thm)],[146, 139])).
% 0.45/0.64  tff(148,plain,
% 0.45/0.64      (((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | (defined(h, compose(a, b)) | (~defined(h, codomain(a))) | (~identity_map(codomain(a))) | (~defined(codomain(a), compose(a, b))))) <=> ((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | defined(h, compose(a, b)) | (~defined(h, codomain(a))) | (~identity_map(codomain(a))) | (~defined(codomain(a), compose(a, b))))),
% 0.45/0.64      inference(rewrite,[status(thm)],[])).
% 0.45/0.64  tff(149,plain,
% 0.45/0.64      (((~defined(h, codomain(a))) | defined(h, compose(a, b)) | (~identity_map(codomain(a))) | (~defined(codomain(a), compose(a, b)))) <=> (defined(h, compose(a, b)) | (~defined(h, codomain(a))) | (~identity_map(codomain(a))) | (~defined(codomain(a), compose(a, b))))),
% 0.45/0.64      inference(rewrite,[status(thm)],[])).
% 0.45/0.64  tff(150,plain,
% 0.45/0.64      (((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | ((~defined(h, codomain(a))) | defined(h, compose(a, b)) | (~identity_map(codomain(a))) | (~defined(codomain(a), compose(a, b))))) <=> ((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | (defined(h, compose(a, b)) | (~defined(h, codomain(a))) | (~identity_map(codomain(a))) | (~defined(codomain(a), compose(a, b)))))),
% 0.45/0.64      inference(monotonicity,[status(thm)],[149])).
% 0.45/0.64  tff(151,plain,
% 0.45/0.64      (((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | ((~defined(h, codomain(a))) | defined(h, compose(a, b)) | (~identity_map(codomain(a))) | (~defined(codomain(a), compose(a, b))))) <=> ((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | defined(h, compose(a, b)) | (~defined(h, codomain(a))) | (~identity_map(codomain(a))) | (~defined(codomain(a), compose(a, b))))),
% 0.45/0.65      inference(transitivity,[status(thm)],[150, 148])).
% 0.45/0.65  tff(152,plain,
% 0.45/0.65      ((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | ((~defined(h, codomain(a))) | defined(h, compose(a, b)) | (~identity_map(codomain(a))) | (~defined(codomain(a), compose(a, b))))),
% 0.45/0.65      inference(quant_inst,[status(thm)],[])).
% 0.45/0.65  tff(153,plain,
% 0.45/0.65      ((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | defined(h, compose(a, b)) | (~defined(h, codomain(a))) | (~identity_map(codomain(a))) | (~defined(codomain(a), compose(a, b)))),
% 0.45/0.65      inference(modus_ponens,[status(thm)],[152, 151])).
% 0.45/0.65  tff(154,plain,
% 0.45/0.65      ($false),
% 0.45/0.65      inference(unit_resolution,[status(thm)],[153, 147, 137, 136, 127, 110])).
% 0.45/0.65  tff(155,plain,(defined(h, compose(a, b))), inference(lemma,lemma(discharge,[]))).
% 0.45/0.65  tff(156,plain,
% 0.45/0.65      (^[Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : refl(((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))) <=> ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))))),
% 0.45/0.65      inference(bind,[status(th)],[])).
% 0.45/0.65  tff(157,plain,
% 0.45/0.65      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))) <=> ![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.65      inference(quant_intro,[status(thm)],[156])).
% 0.45/0.65  tff(158,plain,
% 0.45/0.65      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))) <=> ![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.65      inference(rewrite,[status(thm)],[])).
% 0.45/0.65  tff(159,plain,
% 0.45/0.65      (^[Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : trans(monotonicity(trans(monotonicity(rewrite(((~product(Y, Z, Yz)) | (~product(X, Y, Xy))) <=> ((~product(Y, Z, Yz)) | (~product(X, Y, Xy)))), ((((~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | (~defined(X, Yz))) <=> (((~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | (~defined(X, Yz))))), rewrite((((~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | (~defined(X, Yz))) <=> ((~defined(X, Yz)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))), ((((~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | (~defined(X, Yz))) <=> ((~defined(X, Yz)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))))), (((((~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | (~defined(X, Yz))) | defined(Xy, Z)) <=> (((~defined(X, Yz)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | defined(Xy, Z)))), rewrite((((~defined(X, Yz)) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | defined(Xy, Z)) <=> ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))), (((((~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | (~defined(X, Yz))) | defined(Xy, Z)) <=> ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))))),
% 0.45/0.65      inference(bind,[status(th)],[])).
% 0.45/0.65  tff(160,plain,
% 0.45/0.65      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((((~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | (~defined(X, Yz))) | defined(Xy, Z)) <=> ![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.65      inference(quant_intro,[status(thm)],[159])).
% 0.45/0.65  tff(161,axiom,(![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((((~product(Y, Z, Yz)) | (~product(X, Y, Xy))) | (~defined(X, Yz))) | defined(Xy, Z))), file('/export/starexec/sandbox2/benchmark/Axioms/CAT001-0.ax','category_theory_axiom4')).
% 0.45/0.65  tff(162,plain,
% 0.45/0.65      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.65      inference(modus_ponens,[status(thm)],[161, 160])).
% 0.45/0.65  tff(163,plain,
% 0.45/0.65      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.65      inference(modus_ponens,[status(thm)],[162, 158])).
% 0.45/0.65  tff(164,plain,(
% 0.45/0.65      ![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.65      inference(skolemize,[status(sab)],[163])).
% 0.45/0.65  tff(165,plain,
% 0.45/0.65      (![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))),
% 0.45/0.65      inference(modus_ponens,[status(thm)],[164, 157])).
% 0.45/0.65  tff(166,plain,
% 0.45/0.65      (((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | ((~product(a, b, compose(a, b))) | (~defined(h, compose(a, b))) | defined(compose(h, a), b) | (~product(h, a, compose(h, a))))) <=> ((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | (~product(a, b, compose(a, b))) | (~defined(h, compose(a, b))) | defined(compose(h, a), b) | (~product(h, a, compose(h, a))))),
% 0.45/0.65      inference(rewrite,[status(thm)],[])).
% 0.45/0.65  tff(167,plain,
% 0.45/0.65      (((~defined(h, compose(a, b))) | defined(compose(h, a), b) | (~product(a, b, compose(a, b))) | (~product(h, a, compose(h, a)))) <=> ((~product(a, b, compose(a, b))) | (~defined(h, compose(a, b))) | defined(compose(h, a), b) | (~product(h, a, compose(h, a))))),
% 0.45/0.65      inference(rewrite,[status(thm)],[])).
% 0.45/0.65  tff(168,plain,
% 0.45/0.65      (((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | ((~defined(h, compose(a, b))) | defined(compose(h, a), b) | (~product(a, b, compose(a, b))) | (~product(h, a, compose(h, a))))) <=> ((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | ((~product(a, b, compose(a, b))) | (~defined(h, compose(a, b))) | defined(compose(h, a), b) | (~product(h, a, compose(h, a)))))),
% 0.45/0.65      inference(monotonicity,[status(thm)],[167])).
% 0.45/0.65  tff(169,plain,
% 0.45/0.65      (((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | ((~defined(h, compose(a, b))) | defined(compose(h, a), b) | (~product(a, b, compose(a, b))) | (~product(h, a, compose(h, a))))) <=> ((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | (~product(a, b, compose(a, b))) | (~defined(h, compose(a, b))) | defined(compose(h, a), b) | (~product(h, a, compose(h, a))))),
% 0.45/0.65      inference(transitivity,[status(thm)],[168, 166])).
% 0.45/0.65  tff(170,plain,
% 0.45/0.65      ((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | ((~defined(h, compose(a, b))) | defined(compose(h, a), b) | (~product(a, b, compose(a, b))) | (~product(h, a, compose(h, a))))),
% 0.45/0.65      inference(quant_inst,[status(thm)],[])).
% 0.45/0.65  tff(171,plain,
% 0.45/0.65      ((~![Xy: $i, Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(Xy, Z) | (~product(Y, Z, Yz)) | (~product(X, Y, Xy)))) | (~product(a, b, compose(a, b))) | (~defined(h, compose(a, b))) | defined(compose(h, a), b) | (~product(h, a, compose(h, a)))),
% 0.45/0.65      inference(modus_ponens,[status(thm)],[170, 169])).
% 0.45/0.65  tff(172,plain,
% 0.45/0.65      ((~defined(h, compose(a, b))) | defined(compose(h, a), b)),
% 0.45/0.65      inference(unit_resolution,[status(thm)],[171, 165, 25, 52])).
% 0.45/0.65  tff(173,plain,
% 0.45/0.65      (defined(compose(h, a), b)),
% 0.45/0.65      inference(unit_resolution,[status(thm)],[172, 155])).
% 0.45/0.65  tff(174,plain,
% 0.45/0.65      (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(compose(h, a), b)) | product(compose(h, a), b, compose(compose(h, a), b)))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(compose(h, a), b)) | product(compose(h, a), b, compose(compose(h, a), b)))),
% 0.45/0.65      inference(rewrite,[status(thm)],[])).
% 0.45/0.65  tff(175,plain,
% 0.45/0.65      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(compose(h, a), b)) | product(compose(h, a), b, compose(compose(h, a), b)))),
% 0.45/0.65      inference(quant_inst,[status(thm)],[])).
% 0.45/0.65  tff(176,plain,
% 0.45/0.65      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(compose(h, a), b)) | product(compose(h, a), b, compose(compose(h, a), b))),
% 0.45/0.65      inference(modus_ponens,[status(thm)],[175, 174])).
% 0.48/0.65  tff(177,plain,
% 0.48/0.65      (product(compose(h, a), b, compose(compose(h, a), b))),
% 0.48/0.65      inference(unit_resolution,[status(thm)],[176, 21, 173])).
% 0.48/0.65  tff(178,plain,
% 0.48/0.65      (^[Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : refl((product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy))) <=> (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy))))),
% 0.48/0.65      inference(bind,[status(th)],[])).
% 0.48/0.65  tff(179,plain,
% 0.48/0.65      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy))) <=> ![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))),
% 0.48/0.65      inference(quant_intro,[status(thm)],[178])).
% 0.48/0.65  tff(180,plain,
% 0.48/0.65      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy))) <=> ![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))),
% 0.48/0.65      inference(rewrite,[status(thm)],[])).
% 0.48/0.65  tff(181,plain,
% 0.48/0.65      (^[Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : trans(monotonicity(rewrite((((~product(X, Y, Xy)) | (~product(Xy, Z, Xyz))) | (~product(Y, Z, Yz))) <=> ((~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))), (((((~product(X, Y, Xy)) | (~product(Xy, Z, Xyz))) | (~product(Y, Z, Yz))) | product(X, Yz, Xyz)) <=> (((~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy))) | product(X, Yz, Xyz)))), rewrite((((~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy))) | product(X, Yz, Xyz)) <=> (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))), (((((~product(X, Y, Xy)) | (~product(Xy, Z, Xyz))) | (~product(Y, Z, Yz))) | product(X, Yz, Xyz)) <=> (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))))),
% 0.48/0.65      inference(bind,[status(th)],[])).
% 0.48/0.65  tff(182,plain,
% 0.48/0.65      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((((~product(X, Y, Xy)) | (~product(Xy, Z, Xyz))) | (~product(Y, Z, Yz))) | product(X, Yz, Xyz)) <=> ![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))),
% 0.48/0.65      inference(quant_intro,[status(thm)],[181])).
% 0.48/0.65  tff(183,axiom,(![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((((~product(X, Y, Xy)) | (~product(Xy, Z, Xyz))) | (~product(Y, Z, Yz))) | product(X, Yz, Xyz))), file('/export/starexec/sandbox2/benchmark/Axioms/CAT001-0.ax','category_theory_axiom2')).
% 0.48/0.65  tff(184,plain,
% 0.48/0.65      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))),
% 0.48/0.65      inference(modus_ponens,[status(thm)],[183, 182])).
% 0.48/0.65  tff(185,plain,
% 0.48/0.65      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))),
% 0.48/0.65      inference(modus_ponens,[status(thm)],[184, 180])).
% 0.48/0.65  tff(186,plain,(
% 0.48/0.65      ![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))),
% 0.48/0.65      inference(skolemize,[status(sab)],[185])).
% 0.48/0.65  tff(187,plain,
% 0.48/0.65      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))),
% 0.48/0.65      inference(modus_ponens,[status(thm)],[186, 179])).
% 0.48/0.65  tff(188,plain,
% 0.48/0.65      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | ((~product(compose(codomain(a), a), b, compose(a, b))) | (~product(g, compose(codomain(a), a), compose(h, a))) | product(g, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(g, compose(codomain(a), a), compose(h, a))) | product(g, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b))))),
% 0.48/0.66      inference(rewrite,[status(thm)],[])).
% 0.48/0.66  tff(189,plain,
% 0.48/0.66      ((product(g, compose(a, b), compose(compose(h, a), b)) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(h, a), b, compose(compose(h, a), b))) | (~product(g, compose(codomain(a), a), compose(h, a)))) <=> ((~product(compose(codomain(a), a), b, compose(a, b))) | (~product(g, compose(codomain(a), a), compose(h, a))) | product(g, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b))))),
% 0.48/0.66      inference(rewrite,[status(thm)],[])).
% 0.48/0.66  tff(190,plain,
% 0.48/0.66      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (product(g, compose(a, b), compose(compose(h, a), b)) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(h, a), b, compose(compose(h, a), b))) | (~product(g, compose(codomain(a), a), compose(h, a))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | ((~product(compose(codomain(a), a), b, compose(a, b))) | (~product(g, compose(codomain(a), a), compose(h, a))) | product(g, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b)))))),
% 0.48/0.66      inference(monotonicity,[status(thm)],[189])).
% 0.48/0.66  tff(191,plain,
% 0.48/0.66      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (product(g, compose(a, b), compose(compose(h, a), b)) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(h, a), b, compose(compose(h, a), b))) | (~product(g, compose(codomain(a), a), compose(h, a))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(g, compose(codomain(a), a), compose(h, a))) | product(g, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b))))),
% 0.48/0.66      inference(transitivity,[status(thm)],[190, 188])).
% 0.48/0.66  tff(192,plain,
% 0.48/0.66      ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (product(g, compose(a, b), compose(compose(h, a), b)) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(h, a), b, compose(compose(h, a), b))) | (~product(g, compose(codomain(a), a), compose(h, a))))),
% 0.48/0.66      inference(quant_inst,[status(thm)],[])).
% 0.48/0.66  tff(193,plain,
% 0.48/0.66      ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(g, compose(codomain(a), a), compose(h, a))) | product(g, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b)))),
% 0.48/0.66      inference(modus_ponens,[status(thm)],[192, 191])).
% 0.48/0.66  tff(194,plain,
% 0.48/0.66      ((~product(g, compose(codomain(a), a), compose(h, a))) | product(g, compose(a, b), compose(compose(h, a), b))),
% 0.48/0.66      inference(unit_resolution,[status(thm)],[193, 187, 177, 93])).
% 0.48/0.66  tff(195,plain,
% 0.48/0.66      (product(g, compose(a, b), compose(compose(h, a), b))),
% 0.48/0.66      inference(unit_resolution,[status(thm)],[194, 90])).
% 0.48/0.66  tff(196,plain,
% 0.48/0.66      (product(g, c, compose(compose(h, a), b))),
% 0.48/0.66      inference(modus_ponens,[status(thm)],[195, 41])).
% 0.48/0.66  tff(197,plain,
% 0.48/0.66      (product(h, c, compose(compose(h, a), b)) <=> product(h, compose(a, b), compose(compose(h, a), b))),
% 0.48/0.66      inference(monotonicity,[status(thm)],[39])).
% 0.48/0.66  tff(198,plain,
% 0.48/0.66      (product(h, compose(a, b), compose(compose(h, a), b)) <=> product(h, c, compose(compose(h, a), b))),
% 0.48/0.66      inference(symmetry,[status(thm)],[197])).
% 0.48/0.66  tff(199,plain,
% 0.48/0.66      (product(h, compose(codomain(a), a), compose(h, a)) <=> product(h, a, compose(h, a))),
% 0.48/0.66      inference(monotonicity,[status(thm)],[84])).
% 0.48/0.66  tff(200,plain,
% 0.48/0.66      (product(h, a, compose(h, a)) <=> product(h, compose(codomain(a), a), compose(h, a))),
% 0.48/0.66      inference(symmetry,[status(thm)],[199])).
% 0.48/0.66  tff(201,plain,
% 0.48/0.66      (product(h, compose(codomain(a), a), compose(h, a))),
% 0.48/0.66      inference(modus_ponens,[status(thm)],[52, 200])).
% 0.48/0.66  tff(202,plain,
% 0.48/0.66      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | ((~product(compose(codomain(a), a), b, compose(a, b))) | (~product(h, compose(codomain(a), a), compose(h, a))) | product(h, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(h, compose(codomain(a), a), compose(h, a))) | product(h, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b))))),
% 0.48/0.66      inference(rewrite,[status(thm)],[])).
% 0.48/0.66  tff(203,plain,
% 0.48/0.66      ((product(h, compose(a, b), compose(compose(h, a), b)) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(h, a), b, compose(compose(h, a), b))) | (~product(h, compose(codomain(a), a), compose(h, a)))) <=> ((~product(compose(codomain(a), a), b, compose(a, b))) | (~product(h, compose(codomain(a), a), compose(h, a))) | product(h, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b))))),
% 0.48/0.66      inference(rewrite,[status(thm)],[])).
% 0.48/0.66  tff(204,plain,
% 0.48/0.66      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (product(h, compose(a, b), compose(compose(h, a), b)) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(h, a), b, compose(compose(h, a), b))) | (~product(h, compose(codomain(a), a), compose(h, a))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | ((~product(compose(codomain(a), a), b, compose(a, b))) | (~product(h, compose(codomain(a), a), compose(h, a))) | product(h, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b)))))),
% 0.48/0.66      inference(monotonicity,[status(thm)],[203])).
% 0.48/0.66  tff(205,plain,
% 0.48/0.66      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (product(h, compose(a, b), compose(compose(h, a), b)) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(h, a), b, compose(compose(h, a), b))) | (~product(h, compose(codomain(a), a), compose(h, a))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(h, compose(codomain(a), a), compose(h, a))) | product(h, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b))))),
% 0.48/0.66      inference(transitivity,[status(thm)],[204, 202])).
% 0.48/0.66  tff(206,plain,
% 0.48/0.66      ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (product(h, compose(a, b), compose(compose(h, a), b)) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(h, a), b, compose(compose(h, a), b))) | (~product(h, compose(codomain(a), a), compose(h, a))))),
% 0.48/0.66      inference(quant_inst,[status(thm)],[])).
% 0.48/0.66  tff(207,plain,
% 0.48/0.66      ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : (product(X, Yz, Xyz) | (~product(Y, Z, Yz)) | (~product(Xy, Z, Xyz)) | (~product(X, Y, Xy)))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(h, compose(codomain(a), a), compose(h, a))) | product(h, compose(a, b), compose(compose(h, a), b)) | (~product(compose(h, a), b, compose(compose(h, a), b)))),
% 0.48/0.67      inference(modus_ponens,[status(thm)],[206, 205])).
% 0.48/0.67  tff(208,plain,
% 0.48/0.67      ((~product(h, compose(codomain(a), a), compose(h, a))) | product(h, compose(a, b), compose(compose(h, a), b))),
% 0.48/0.67      inference(unit_resolution,[status(thm)],[207, 187, 177, 93])).
% 0.48/0.67  tff(209,plain,
% 0.48/0.67      (product(h, compose(a, b), compose(compose(h, a), b))),
% 0.48/0.67      inference(unit_resolution,[status(thm)],[208, 201])).
% 0.48/0.67  tff(210,plain,
% 0.48/0.67      (product(h, c, compose(compose(h, a), b))),
% 0.48/0.67      inference(modus_ponens,[status(thm)],[209, 198])).
% 0.48/0.67  tff(211,plain,
% 0.48/0.67      ((~(h = g)) <=> (~(h = g))),
% 0.48/0.67      inference(rewrite,[status(thm)],[])).
% 0.48/0.67  tff(212,axiom,(~(h = g)), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','prove_h_equals_g')).
% 0.48/0.67  tff(213,plain,
% 0.48/0.67      (~(h = g)),
% 0.48/0.67      inference(modus_ponens,[status(thm)],[212, 211])).
% 0.48/0.67  tff(214,plain,
% 0.48/0.67      (^[W: $i, Y: $i, X: $i] : refl(((X = Y) | (~product(Y, c, W)) | (~product(X, c, W))) <=> ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W))))),
% 0.48/0.67      inference(bind,[status(th)],[])).
% 0.48/0.67  tff(215,plain,
% 0.48/0.67      (![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W))) <=> ![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))),
% 0.48/0.67      inference(quant_intro,[status(thm)],[214])).
% 0.48/0.67  tff(216,plain,
% 0.48/0.67      (![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W))) <=> ![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))),
% 0.48/0.67      inference(rewrite,[status(thm)],[])).
% 0.48/0.67  tff(217,plain,
% 0.48/0.67      (^[W: $i, Y: $i, X: $i] : rewrite((((~product(X, c, W)) | (~product(Y, c, W))) | (X = Y)) <=> ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W))))),
% 0.48/0.67      inference(bind,[status(th)],[])).
% 0.48/0.67  tff(218,plain,
% 0.48/0.67      (![W: $i, Y: $i, X: $i] : (((~product(X, c, W)) | (~product(Y, c, W))) | (X = Y)) <=> ![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))),
% 0.48/0.67      inference(quant_intro,[status(thm)],[217])).
% 0.48/0.67  tff(219,axiom,(![W: $i, Y: $i, X: $i] : (((~product(X, c, W)) | (~product(Y, c, W))) | (X = Y))), file('/export/starexec/sandbox2/benchmark/theBenchmark.p','cancellation_for_product')).
% 0.48/0.67  tff(220,plain,
% 0.48/0.67      (![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))),
% 0.48/0.67      inference(modus_ponens,[status(thm)],[219, 218])).
% 0.48/0.67  tff(221,plain,
% 0.48/0.67      (![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))),
% 0.48/0.67      inference(modus_ponens,[status(thm)],[220, 216])).
% 0.48/0.67  tff(222,plain,(
% 0.48/0.67      ![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))),
% 0.48/0.67      inference(skolemize,[status(sab)],[221])).
% 0.48/0.67  tff(223,plain,
% 0.48/0.67      (![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))),
% 0.48/0.67      inference(modus_ponens,[status(thm)],[222, 215])).
% 0.48/0.67  tff(224,plain,
% 0.48/0.67      (((~![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))) | ((h = g) | (~product(g, c, compose(compose(h, a), b))) | (~product(h, c, compose(compose(h, a), b))))) <=> ((~![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))) | (h = g) | (~product(g, c, compose(compose(h, a), b))) | (~product(h, c, compose(compose(h, a), b))))),
% 0.48/0.67      inference(rewrite,[status(thm)],[])).
% 0.48/0.67  tff(225,plain,
% 0.48/0.67      ((~![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))) | ((h = g) | (~product(g, c, compose(compose(h, a), b))) | (~product(h, c, compose(compose(h, a), b))))),
% 0.48/0.67      inference(quant_inst,[status(thm)],[])).
% 0.48/0.67  tff(226,plain,
% 0.48/0.67      ((~![W: $i, Y: $i, X: $i] : ((X = Y) | (~product(Y, c, W)) | (~product(X, c, W)))) | (h = g) | (~product(g, c, compose(compose(h, a), b))) | (~product(h, c, compose(compose(h, a), b)))),
% 0.48/0.67      inference(modus_ponens,[status(thm)],[225, 224])).
% 0.48/0.67  tff(227,plain,
% 0.48/0.67      ((~product(g, c, compose(compose(h, a), b))) | (~product(h, c, compose(compose(h, a), b)))),
% 0.48/0.67      inference(unit_resolution,[status(thm)],[226, 223, 213])).
% 0.48/0.67  tff(228,plain,
% 0.48/0.67      ($false),
% 0.48/0.67      inference(unit_resolution,[status(thm)],[227, 210, 196])).
% 0.48/0.67  % SZS output end Proof
% 0.48/0.67  % E exiting
%------------------------------------------------------------------------------