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

View Problem - Process Solution

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

% Computer : n004.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Tue Sep  6 17:29:35 EDT 2022

% Result   : Unsatisfiable 0.49s 0.60s
% Output   : Proof 0.62s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem  : CAT001-1 : TPTP v8.1.0. Released v1.0.0.
% 0.07/0.13  % Command  : z3_tptp -proof -model -t:%d -file:%s
% 0.12/0.34  % Computer : n004.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 : Tue Aug 30 05:36:49 EDT 2022
% 0.12/0.34  % CPUTime  : 
% 0.12/0.34  Z3tptp [4.8.9.0] (c) 2006-20**. Microsoft Corp.
% 0.12/0.34  Usage: tptp [options] [-file:]file
% 0.12/0.34    -h, -?       prints this message.
% 0.12/0.34    -smt2        print SMT-LIB2 benchmark.
% 0.12/0.34    -m, -model   generate model.
% 0.12/0.34    -p, -proof   generate proof.
% 0.12/0.34    -c, -core    generate unsat core of named formulas.
% 0.12/0.34    -st, -statistics display statistics.
% 0.12/0.34    -t:timeout   set timeout (in second).
% 0.12/0.34    -smt2status  display status in smt2 format instead of SZS.
% 0.12/0.34    -check_status check the status produced by Z3 against annotation in benchmark.
% 0.12/0.34    -<param>:<value> configuration parameter and value.
% 0.12/0.34    -o:<output-file> file to place output in.
% 0.49/0.60  % SZS status Unsatisfiable
% 0.49/0.60  % SZS output start Proof
% 0.49/0.60  tff(product_type, type, (
% 0.49/0.60     product: ( $i * $i * $i ) > $o)).
% 0.49/0.60  tff(compose_type, type, (
% 0.49/0.60     compose: ( $i * $i ) > $i)).
% 0.49/0.60  tff(h_type, type, (
% 0.49/0.60     h: $i)).
% 0.49/0.60  tff(b_type, type, (
% 0.49/0.60     b: $i)).
% 0.49/0.60  tff(a_type, type, (
% 0.49/0.60     a: $i)).
% 0.49/0.60  tff(codomain_type, type, (
% 0.49/0.60     codomain: $i > $i)).
% 0.49/0.60  tff(domain_type, type, (
% 0.49/0.60     domain: $i > $i)).
% 0.49/0.60  tff(c_type, type, (
% 0.49/0.60     c: $i)).
% 0.49/0.60  tff(defined_type, type, (
% 0.49/0.60     defined: ( $i * $i ) > $o)).
% 0.49/0.60  tff(d_type, type, (
% 0.49/0.60     d: $i)).
% 0.49/0.60  tff(g_type, type, (
% 0.49/0.60     g: $i)).
% 0.49/0.60  tff(identity_map_type, type, (
% 0.49/0.60     identity_map: $i > $o)).
% 0.49/0.60  tff(1,plain,
% 0.49/0.60      (product(a, b, c) <=> product(a, b, c)),
% 0.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(2,axiom,(product(a, b, c)), file('/export/starexec/sandbox/benchmark/theBenchmark.p','ab_equals_c')).
% 0.49/0.60  tff(3,plain,
% 0.49/0.60      (product(a, b, c)),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[2, 1])).
% 0.49/0.60  tff(4,plain,
% 0.49/0.60      (^[Z: $i, Y: $i, X: $i] : refl(((~product(X, Y, Z)) | defined(X, Y)) <=> ((~product(X, Y, Z)) | defined(X, Y)))),
% 0.49/0.60      inference(bind,[status(th)],[])).
% 0.49/0.60  tff(5,plain,
% 0.49/0.60      (![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.49/0.60      inference(quant_intro,[status(thm)],[4])).
% 0.49/0.60  tff(6,plain,
% 0.49/0.60      (![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.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(7,axiom,(![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','associative_property1')).
% 0.49/0.60  tff(8,plain,
% 0.49/0.60      (![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[7, 6])).
% 0.49/0.60  tff(9,plain,(
% 0.49/0.60      ![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))),
% 0.49/0.60      inference(skolemize,[status(sab)],[8])).
% 0.49/0.60  tff(10,plain,
% 0.49/0.60      (![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[9, 5])).
% 0.49/0.60  tff(11,plain,
% 0.49/0.60      (((~![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.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(12,plain,
% 0.49/0.60      ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | ((~product(a, b, c)) | defined(a, b))),
% 0.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(13,plain,
% 0.49/0.60      ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | (~product(a, b, c)) | defined(a, b)),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[12, 11])).
% 0.49/0.60  tff(14,plain,
% 0.49/0.60      (defined(a, b)),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[13, 10, 3])).
% 0.49/0.60  tff(15,plain,
% 0.49/0.60      (^[Y: $i, X: $i] : refl(((~defined(X, Y)) | product(X, Y, compose(X, Y))) <=> ((~defined(X, Y)) | product(X, Y, compose(X, Y))))),
% 0.49/0.60      inference(bind,[status(th)],[])).
% 0.49/0.60  tff(16,plain,
% 0.49/0.60      (![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.49/0.60      inference(quant_intro,[status(thm)],[15])).
% 0.49/0.60  tff(17,plain,
% 0.49/0.60      (![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.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(18,axiom,(![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','closure_of_composition')).
% 0.49/0.60  tff(19,plain,
% 0.49/0.60      (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[18, 17])).
% 0.49/0.60  tff(20,plain,(
% 0.49/0.60      ![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.49/0.60      inference(skolemize,[status(sab)],[19])).
% 0.49/0.60  tff(21,plain,
% 0.49/0.60      (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[20, 16])).
% 0.49/0.60  tff(22,plain,
% 0.49/0.60      (((~![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.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(23,plain,
% 0.49/0.60      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(a, b)) | product(a, b, compose(a, b)))),
% 0.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(24,plain,
% 0.49/0.60      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(a, b)) | product(a, b, compose(a, b))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[23, 22])).
% 0.49/0.60  tff(25,plain,
% 0.49/0.60      (product(a, b, compose(a, b))),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[24, 21, 14])).
% 0.49/0.60  tff(26,plain,
% 0.49/0.60      (^[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.49/0.60      inference(bind,[status(th)],[])).
% 0.49/0.60  tff(27,plain,
% 0.49/0.60      (![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.49/0.60      inference(quant_intro,[status(thm)],[26])).
% 0.49/0.60  tff(28,plain,
% 0.49/0.60      (![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.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(29,plain,
% 0.49/0.60      (^[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.49/0.60      inference(bind,[status(th)],[])).
% 0.49/0.60  tff(30,plain,
% 0.49/0.60      (![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.49/0.60      inference(quant_intro,[status(thm)],[29])).
% 0.49/0.60  tff(31,axiom,(![W: $i, Z: $i, Y: $i, X: $i] : (((~product(X, Y, Z)) | (~product(X, Y, W))) | (Z = W))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','composition_is_well_defined')).
% 0.49/0.60  tff(32,plain,
% 0.49/0.60      (![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[31, 30])).
% 0.49/0.60  tff(33,plain,
% 0.49/0.60      (![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[32, 28])).
% 0.49/0.60  tff(34,plain,(
% 0.49/0.60      ![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.49/0.60      inference(skolemize,[status(sab)],[33])).
% 0.49/0.60  tff(35,plain,
% 0.49/0.60      (![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[34, 27])).
% 0.49/0.60  tff(36,plain,
% 0.49/0.60      (((~![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.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(37,plain,
% 0.49/0.60      ((~![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.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(38,plain,
% 0.49/0.60      ((~![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.49/0.60      inference(modus_ponens,[status(thm)],[37, 36])).
% 0.49/0.60  tff(39,plain,
% 0.49/0.60      (c = compose(a, b)),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[38, 35, 3, 25])).
% 0.49/0.60  tff(40,plain,
% 0.49/0.60      (product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))) <=> product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))),
% 0.49/0.60      inference(monotonicity,[status(thm)],[39])).
% 0.49/0.60  tff(41,plain,
% 0.49/0.60      (product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))) <=> product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))),
% 0.49/0.60      inference(symmetry,[status(thm)],[40])).
% 0.49/0.60  tff(42,plain,
% 0.49/0.60      (^[X: $i] : refl(defined(X, domain(X)) <=> defined(X, domain(X)))),
% 0.49/0.60      inference(bind,[status(th)],[])).
% 0.49/0.60  tff(43,plain,
% 0.49/0.60      (![X: $i] : defined(X, domain(X)) <=> ![X: $i] : defined(X, domain(X))),
% 0.49/0.60      inference(quant_intro,[status(thm)],[42])).
% 0.49/0.60  tff(44,plain,
% 0.49/0.60      (![X: $i] : defined(X, domain(X)) <=> ![X: $i] : defined(X, domain(X))),
% 0.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(45,axiom,(![X: $i] : defined(X, domain(X))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','mapping_from_x_to_its_domain')).
% 0.49/0.60  tff(46,plain,
% 0.49/0.60      (![X: $i] : defined(X, domain(X))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[45, 44])).
% 0.49/0.60  tff(47,plain,(
% 0.49/0.60      ![X: $i] : defined(X, domain(X))),
% 0.49/0.60      inference(skolemize,[status(sab)],[46])).
% 0.49/0.60  tff(48,plain,
% 0.49/0.60      (![X: $i] : defined(X, domain(X))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[47, 43])).
% 0.49/0.60  tff(49,plain,
% 0.49/0.60      ((~![X: $i] : defined(X, domain(X))) | defined(h, domain(h))),
% 0.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(50,plain,
% 0.49/0.60      (defined(h, domain(h))),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[49, 48])).
% 0.49/0.60  tff(51,plain,
% 0.49/0.60      (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(h, domain(h))) | product(h, domain(h), compose(h, domain(h))))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(h, domain(h))) | product(h, domain(h), compose(h, domain(h))))),
% 0.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(52,plain,
% 0.49/0.60      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(h, domain(h))) | product(h, domain(h), compose(h, domain(h))))),
% 0.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(53,plain,
% 0.49/0.60      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(h, domain(h))) | product(h, domain(h), compose(h, domain(h)))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[52, 51])).
% 0.49/0.60  tff(54,plain,
% 0.49/0.60      (product(h, domain(h), compose(h, domain(h)))),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[53, 21, 50])).
% 0.49/0.60  tff(55,plain,
% 0.49/0.60      (^[X: $i] : refl(product(X, domain(X), X) <=> product(X, domain(X), X))),
% 0.49/0.60      inference(bind,[status(th)],[])).
% 0.49/0.60  tff(56,plain,
% 0.49/0.60      (![X: $i] : product(X, domain(X), X) <=> ![X: $i] : product(X, domain(X), X)),
% 0.49/0.60      inference(quant_intro,[status(thm)],[55])).
% 0.49/0.60  tff(57,plain,
% 0.49/0.60      (![X: $i] : product(X, domain(X), X) <=> ![X: $i] : product(X, domain(X), X)),
% 0.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(58,axiom,(![X: $i] : product(X, domain(X), X)), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','product_on_domain')).
% 0.49/0.60  tff(59,plain,
% 0.49/0.60      (![X: $i] : product(X, domain(X), X)),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[58, 57])).
% 0.49/0.60  tff(60,plain,(
% 0.49/0.60      ![X: $i] : product(X, domain(X), X)),
% 0.49/0.60      inference(skolemize,[status(sab)],[59])).
% 0.49/0.60  tff(61,plain,
% 0.49/0.60      (![X: $i] : product(X, domain(X), X)),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[60, 56])).
% 0.49/0.60  tff(62,plain,
% 0.49/0.60      ((~![X: $i] : product(X, domain(X), X)) | product(h, domain(h), h)),
% 0.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(63,plain,
% 0.49/0.60      (product(h, domain(h), h)),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[62, 61])).
% 0.49/0.60  tff(64,plain,
% 0.49/0.60      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(h, domain(h), h)) | (~product(h, domain(h), compose(h, domain(h)))) | (h = compose(h, domain(h))))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(h, domain(h), h)) | (~product(h, domain(h), compose(h, domain(h)))) | (h = compose(h, domain(h))))),
% 0.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(65,plain,
% 0.49/0.60      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(h, domain(h), h)) | (~product(h, domain(h), compose(h, domain(h)))) | (h = compose(h, domain(h))))),
% 0.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(66,plain,
% 0.49/0.60      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(h, domain(h), h)) | (~product(h, domain(h), compose(h, domain(h)))) | (h = compose(h, domain(h)))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[65, 64])).
% 0.49/0.60  tff(67,plain,
% 0.49/0.60      (h = compose(h, domain(h))),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[66, 35, 63, 54])).
% 0.49/0.60  tff(68,plain,
% 0.49/0.60      (compose(h, domain(h)) = h),
% 0.49/0.60      inference(symmetry,[status(thm)],[67])).
% 0.49/0.60  tff(69,plain,
% 0.49/0.60      (product(b, compose(h, domain(h)), compose(b, h)) <=> product(b, h, compose(b, h))),
% 0.49/0.60      inference(monotonicity,[status(thm)],[68])).
% 0.49/0.60  tff(70,plain,
% 0.49/0.60      (product(b, h, compose(b, h)) <=> product(b, compose(h, domain(h)), compose(b, h))),
% 0.49/0.60      inference(symmetry,[status(thm)],[69])).
% 0.49/0.60  tff(71,plain,
% 0.49/0.60      (product(b, h, d) <=> product(b, h, d)),
% 0.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(72,axiom,(product(b, h, d)), file('/export/starexec/sandbox/benchmark/theBenchmark.p','bh_equals_d')).
% 0.49/0.60  tff(73,plain,
% 0.49/0.60      (product(b, h, d)),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[72, 71])).
% 0.49/0.60  tff(74,plain,
% 0.49/0.60      (((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | ((~product(b, h, d)) | defined(b, h))) <=> ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | (~product(b, h, d)) | defined(b, h))),
% 0.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(75,plain,
% 0.49/0.60      ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | ((~product(b, h, d)) | defined(b, h))),
% 0.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(76,plain,
% 0.49/0.60      ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | (~product(b, h, d)) | defined(b, h)),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[75, 74])).
% 0.49/0.60  tff(77,plain,
% 0.49/0.60      (defined(b, h)),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[76, 10, 73])).
% 0.49/0.60  tff(78,plain,
% 0.49/0.60      (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(b, h)) | product(b, h, compose(b, h)))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(b, h)) | product(b, h, compose(b, h)))),
% 0.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(79,plain,
% 0.49/0.60      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(b, h)) | product(b, h, compose(b, h)))),
% 0.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(80,plain,
% 0.49/0.60      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(b, h)) | product(b, h, compose(b, h))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[79, 78])).
% 0.49/0.60  tff(81,plain,
% 0.49/0.60      (product(b, h, compose(b, h))),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[80, 21, 77])).
% 0.49/0.60  tff(82,plain,
% 0.49/0.60      (product(b, compose(h, domain(h)), compose(b, h))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[81, 70])).
% 0.49/0.60  tff(83,plain,
% 0.49/0.60      (^[X: $i] : refl(defined(codomain(X), X) <=> defined(codomain(X), X))),
% 0.49/0.60      inference(bind,[status(th)],[])).
% 0.49/0.60  tff(84,plain,
% 0.49/0.60      (![X: $i] : defined(codomain(X), X) <=> ![X: $i] : defined(codomain(X), X)),
% 0.49/0.60      inference(quant_intro,[status(thm)],[83])).
% 0.49/0.60  tff(85,plain,
% 0.49/0.60      (![X: $i] : defined(codomain(X), X) <=> ![X: $i] : defined(codomain(X), X)),
% 0.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(86,axiom,(![X: $i] : defined(codomain(X), X)), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','mapping_from_codomain_of_x_to_x')).
% 0.49/0.60  tff(87,plain,
% 0.49/0.60      (![X: $i] : defined(codomain(X), X)),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[86, 85])).
% 0.49/0.60  tff(88,plain,(
% 0.49/0.60      ![X: $i] : defined(codomain(X), X)),
% 0.49/0.60      inference(skolemize,[status(sab)],[87])).
% 0.49/0.60  tff(89,plain,
% 0.49/0.60      (![X: $i] : defined(codomain(X), X)),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[88, 84])).
% 0.49/0.60  tff(90,plain,
% 0.49/0.60      ((~![X: $i] : defined(codomain(X), X)) | defined(codomain(a), a)),
% 0.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(91,plain,
% 0.49/0.60      (defined(codomain(a), a)),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[90, 89])).
% 0.49/0.60  tff(92,plain,
% 0.49/0.60      (((~![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.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(93,plain,
% 0.49/0.60      ((~![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.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(94,plain,
% 0.49/0.60      ((~![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.49/0.60      inference(modus_ponens,[status(thm)],[93, 92])).
% 0.49/0.60  tff(95,plain,
% 0.49/0.60      (product(codomain(a), a, compose(codomain(a), a))),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[94, 21, 91])).
% 0.49/0.60  tff(96,plain,
% 0.49/0.60      (^[X: $i] : refl(product(codomain(X), X, X) <=> product(codomain(X), X, X))),
% 0.49/0.60      inference(bind,[status(th)],[])).
% 0.49/0.60  tff(97,plain,
% 0.49/0.60      (![X: $i] : product(codomain(X), X, X) <=> ![X: $i] : product(codomain(X), X, X)),
% 0.49/0.60      inference(quant_intro,[status(thm)],[96])).
% 0.49/0.60  tff(98,plain,
% 0.49/0.60      (![X: $i] : product(codomain(X), X, X) <=> ![X: $i] : product(codomain(X), X, X)),
% 0.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(99,axiom,(![X: $i] : product(codomain(X), X, X)), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','product_on_codomain')).
% 0.49/0.60  tff(100,plain,
% 0.49/0.60      (![X: $i] : product(codomain(X), X, X)),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[99, 98])).
% 0.49/0.60  tff(101,plain,(
% 0.49/0.60      ![X: $i] : product(codomain(X), X, X)),
% 0.49/0.60      inference(skolemize,[status(sab)],[100])).
% 0.49/0.60  tff(102,plain,
% 0.49/0.60      (![X: $i] : product(codomain(X), X, X)),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[101, 97])).
% 0.49/0.60  tff(103,plain,
% 0.49/0.60      ((~![X: $i] : product(codomain(X), X, X)) | product(codomain(a), a, a)),
% 0.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(104,plain,
% 0.49/0.60      (product(codomain(a), a, a)),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[103, 102])).
% 0.49/0.60  tff(105,plain,
% 0.49/0.60      (((~![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.49/0.60      inference(rewrite,[status(thm)],[])).
% 0.49/0.60  tff(106,plain,
% 0.49/0.60      ((~![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.49/0.60      inference(quant_inst,[status(thm)],[])).
% 0.49/0.60  tff(107,plain,
% 0.49/0.60      ((~![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.49/0.60      inference(modus_ponens,[status(thm)],[106, 105])).
% 0.49/0.60  tff(108,plain,
% 0.49/0.60      (a = compose(codomain(a), a)),
% 0.49/0.60      inference(unit_resolution,[status(thm)],[107, 35, 104, 95])).
% 0.49/0.60  tff(109,plain,
% 0.49/0.60      (compose(codomain(a), a) = a),
% 0.49/0.60      inference(symmetry,[status(thm)],[108])).
% 0.49/0.60  tff(110,plain,
% 0.49/0.60      (defined(compose(codomain(a), a), compose(b, h)) <=> defined(a, compose(b, h))),
% 0.49/0.60      inference(monotonicity,[status(thm)],[109])).
% 0.49/0.60  tff(111,plain,
% 0.49/0.60      (defined(a, compose(b, h)) <=> defined(compose(codomain(a), a), compose(b, h))),
% 0.49/0.60      inference(symmetry,[status(thm)],[110])).
% 0.49/0.60  tff(112,plain,
% 0.49/0.60      (product(compose(codomain(a), a), b, compose(a, b)) <=> product(a, b, compose(a, b))),
% 0.49/0.60      inference(monotonicity,[status(thm)],[109])).
% 0.49/0.60  tff(113,plain,
% 0.49/0.60      (product(a, b, compose(a, b)) <=> product(compose(codomain(a), a), b, compose(a, b))),
% 0.49/0.60      inference(symmetry,[status(thm)],[112])).
% 0.49/0.60  tff(114,plain,
% 0.49/0.60      (product(compose(codomain(a), a), b, compose(a, b))),
% 0.49/0.60      inference(modus_ponens,[status(thm)],[25, 113])).
% 0.49/0.60  tff(115,plain,
% 0.49/0.60      (^[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.49/0.60      inference(bind,[status(th)],[])).
% 0.49/0.60  tff(116,plain,
% 0.49/0.60      (![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.49/0.61      inference(quant_intro,[status(thm)],[115])).
% 0.49/0.61  tff(117,plain,
% 0.49/0.61      (![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.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(118,plain,
% 0.49/0.61      (^[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.49/0.61      inference(bind,[status(th)],[])).
% 0.49/0.61  tff(119,plain,
% 0.49/0.61      (![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.49/0.61      inference(quant_intro,[status(thm)],[118])).
% 0.49/0.61  tff(120,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/sandbox/benchmark/Axioms/CAT001-0.ax','category_theory_axiom1')).
% 0.49/0.61  tff(121,plain,
% 0.49/0.61      (![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.49/0.61      inference(modus_ponens,[status(thm)],[120, 119])).
% 0.49/0.61  tff(122,plain,
% 0.49/0.61      (![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.49/0.61      inference(modus_ponens,[status(thm)],[121, 117])).
% 0.49/0.61  tff(123,plain,(
% 0.49/0.61      ![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.49/0.61      inference(skolemize,[status(sab)],[122])).
% 0.49/0.61  tff(124,plain,
% 0.49/0.61      (![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.49/0.61      inference(modus_ponens,[status(thm)],[123, 116])).
% 0.49/0.61  tff(125,plain,
% 0.49/0.61      (((~![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))) | defined(codomain(a), 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))) | defined(codomain(a), compose(a, b)) | (~product(codomain(a), a, a)))),
% 0.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(126,plain,
% 0.49/0.61      ((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))) | defined(codomain(a), compose(a, b)) | (~product(codomain(a), a, a)))),
% 0.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(127,plain,
% 0.49/0.61      (((~![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))) | defined(codomain(a), compose(a, b)) | (~product(codomain(a), a, a))))),
% 0.49/0.61      inference(monotonicity,[status(thm)],[126])).
% 0.49/0.61  tff(128,plain,
% 0.49/0.61      (((~![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))) | defined(codomain(a), compose(a, b)) | (~product(codomain(a), a, a)))),
% 0.49/0.61      inference(transitivity,[status(thm)],[127, 125])).
% 0.49/0.61  tff(129,plain,
% 0.49/0.61      ((~![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.49/0.61      inference(quant_inst,[status(thm)],[])).
% 0.49/0.61  tff(130,plain,
% 0.49/0.61      ((~![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))) | defined(codomain(a), compose(a, b)) | (~product(codomain(a), a, a))),
% 0.49/0.61      inference(modus_ponens,[status(thm)],[129, 128])).
% 0.49/0.61  tff(131,plain,
% 0.49/0.61      (defined(codomain(a), compose(a, b))),
% 0.49/0.61      inference(unit_resolution,[status(thm)],[130, 124, 14, 25, 104])).
% 0.49/0.61  tff(132,plain,
% 0.49/0.61      (^[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.49/0.61      inference(bind,[status(th)],[])).
% 0.49/0.61  tff(133,plain,
% 0.49/0.61      (![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.49/0.61      inference(quant_intro,[status(thm)],[132])).
% 0.49/0.61  tff(134,plain,
% 0.49/0.61      (![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.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(135,plain,
% 0.49/0.61      (^[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.49/0.61      inference(bind,[status(th)],[])).
% 0.49/0.61  tff(136,plain,
% 0.49/0.61      (![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.49/0.61      inference(quant_intro,[status(thm)],[135])).
% 0.49/0.61  tff(137,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/sandbox/benchmark/Axioms/CAT001-0.ax','category_theory_axiom4')).
% 0.49/0.61  tff(138,plain,
% 0.49/0.61      (![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.49/0.61      inference(modus_ponens,[status(thm)],[137, 136])).
% 0.49/0.61  tff(139,plain,
% 0.49/0.61      (![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.49/0.61      inference(modus_ponens,[status(thm)],[138, 134])).
% 0.49/0.61  tff(140,plain,(
% 0.49/0.61      ![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.49/0.61      inference(skolemize,[status(sab)],[139])).
% 0.49/0.61  tff(141,plain,
% 0.49/0.61      (![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.49/0.61      inference(modus_ponens,[status(thm)],[140, 133])).
% 0.49/0.61  tff(142,plain,
% 0.49/0.61      (((~![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(codomain(a), compose(a, b))) | (~product(codomain(a), a, compose(codomain(a), a))) | defined(compose(codomain(a), 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)))) | (~product(a, b, compose(a, b))) | (~defined(codomain(a), compose(a, b))) | (~product(codomain(a), a, compose(codomain(a), a))) | defined(compose(codomain(a), a), b))),
% 0.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(143,plain,
% 0.49/0.61      (((~defined(codomain(a), compose(a, b))) | defined(compose(codomain(a), a), b) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, compose(codomain(a), a)))) <=> ((~product(a, b, compose(a, b))) | (~defined(codomain(a), compose(a, b))) | (~product(codomain(a), a, compose(codomain(a), a))) | defined(compose(codomain(a), a), b))),
% 0.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(144,plain,
% 0.49/0.61      (((~![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(compose(codomain(a), a), b) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, compose(codomain(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)))) | ((~product(a, b, compose(a, b))) | (~defined(codomain(a), compose(a, b))) | (~product(codomain(a), a, compose(codomain(a), a))) | defined(compose(codomain(a), a), b)))),
% 0.49/0.61      inference(monotonicity,[status(thm)],[143])).
% 0.49/0.61  tff(145,plain,
% 0.49/0.61      (((~![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(compose(codomain(a), a), b) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, compose(codomain(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)))) | (~product(a, b, compose(a, b))) | (~defined(codomain(a), compose(a, b))) | (~product(codomain(a), a, compose(codomain(a), a))) | defined(compose(codomain(a), a), b))),
% 0.49/0.61      inference(transitivity,[status(thm)],[144, 142])).
% 0.49/0.61  tff(146,plain,
% 0.49/0.61      ((~![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(compose(codomain(a), a), b) | (~product(a, b, compose(a, b))) | (~product(codomain(a), a, compose(codomain(a), a))))),
% 0.49/0.61      inference(quant_inst,[status(thm)],[])).
% 0.49/0.61  tff(147,plain,
% 0.49/0.61      ((~![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(codomain(a), compose(a, b))) | (~product(codomain(a), a, compose(codomain(a), a))) | defined(compose(codomain(a), a), b)),
% 0.49/0.61      inference(modus_ponens,[status(thm)],[146, 145])).
% 0.49/0.61  tff(148,plain,
% 0.49/0.61      (defined(compose(codomain(a), a), b)),
% 0.49/0.61      inference(unit_resolution,[status(thm)],[147, 141, 25, 131, 95])).
% 0.49/0.61  tff(149,plain,
% 0.49/0.61      ((~![X: $i] : product(codomain(X), X, X)) | product(codomain(g), g, g)),
% 0.49/0.61      inference(quant_inst,[status(thm)],[])).
% 0.49/0.61  tff(150,plain,
% 0.49/0.61      (product(codomain(g), g, g)),
% 0.49/0.61      inference(unit_resolution,[status(thm)],[149, 102])).
% 0.49/0.61  tff(151,plain,
% 0.49/0.61      (product(b, g, d) <=> product(b, g, d)),
% 0.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(152,axiom,(product(b, g, d)), file('/export/starexec/sandbox/benchmark/theBenchmark.p','bg_equals_d')).
% 0.49/0.61  tff(153,plain,
% 0.49/0.61      (product(b, g, d)),
% 0.49/0.61      inference(modus_ponens,[status(thm)],[152, 151])).
% 0.49/0.61  tff(154,plain,
% 0.49/0.61      (((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | ((~product(b, g, d)) | defined(b, g))) <=> ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | (~product(b, g, d)) | defined(b, g))),
% 0.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(155,plain,
% 0.49/0.61      ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | ((~product(b, g, d)) | defined(b, g))),
% 0.49/0.61      inference(quant_inst,[status(thm)],[])).
% 0.49/0.61  tff(156,plain,
% 0.49/0.61      ((~![Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | defined(X, Y))) | (~product(b, g, d)) | defined(b, g)),
% 0.49/0.61      inference(modus_ponens,[status(thm)],[155, 154])).
% 0.49/0.61  tff(157,plain,
% 0.49/0.61      (defined(b, g)),
% 0.49/0.61      inference(unit_resolution,[status(thm)],[156, 10, 153])).
% 0.49/0.61  tff(158,plain,
% 0.49/0.61      (^[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.49/0.61      inference(bind,[status(th)],[])).
% 0.49/0.61  tff(159,plain,
% 0.49/0.61      (![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.49/0.61      inference(quant_intro,[status(thm)],[158])).
% 0.49/0.61  tff(160,plain,
% 0.49/0.61      (![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.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(161,plain,
% 0.49/0.61      (^[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.49/0.61      inference(bind,[status(th)],[])).
% 0.49/0.61  tff(162,plain,
% 0.49/0.61      (![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.49/0.61      inference(quant_intro,[status(thm)],[161])).
% 0.49/0.61  tff(163,axiom,(![Z: $i, Y: $i, X: $i, Yz: $i] : (((~product(Y, Z, Yz)) | (~defined(X, Yz))) | defined(X, Y))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','category_theory_axiom3')).
% 0.49/0.61  tff(164,plain,
% 0.49/0.61      (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.49/0.61      inference(modus_ponens,[status(thm)],[163, 162])).
% 0.49/0.61  tff(165,plain,
% 0.49/0.61      (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.49/0.61      inference(modus_ponens,[status(thm)],[164, 160])).
% 0.49/0.61  tff(166,plain,(
% 0.49/0.61      ![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.49/0.61      inference(skolemize,[status(sab)],[165])).
% 0.49/0.61  tff(167,plain,
% 0.49/0.61      (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.49/0.61      inference(modus_ponens,[status(thm)],[166, 159])).
% 0.49/0.61  tff(168,plain,
% 0.49/0.61      (((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(b, g)) | (~product(codomain(g), g, g)) | defined(b, codomain(g)))) <=> ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | (~defined(b, g)) | (~product(codomain(g), g, g)) | defined(b, codomain(g)))),
% 0.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(169,plain,
% 0.49/0.61      (((~defined(b, g)) | defined(b, codomain(g)) | (~product(codomain(g), g, g))) <=> ((~defined(b, g)) | (~product(codomain(g), g, g)) | defined(b, codomain(g)))),
% 0.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(170,plain,
% 0.49/0.61      (((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(b, g)) | defined(b, codomain(g)) | (~product(codomain(g), g, g)))) <=> ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(b, g)) | (~product(codomain(g), g, g)) | defined(b, codomain(g))))),
% 0.49/0.61      inference(monotonicity,[status(thm)],[169])).
% 0.49/0.61  tff(171,plain,
% 0.49/0.61      (((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(b, g)) | defined(b, codomain(g)) | (~product(codomain(g), g, g)))) <=> ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | (~defined(b, g)) | (~product(codomain(g), g, g)) | defined(b, codomain(g)))),
% 0.49/0.61      inference(transitivity,[status(thm)],[170, 168])).
% 0.49/0.61  tff(172,plain,
% 0.49/0.61      ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(b, g)) | defined(b, codomain(g)) | (~product(codomain(g), g, g)))),
% 0.49/0.61      inference(quant_inst,[status(thm)],[])).
% 0.49/0.61  tff(173,plain,
% 0.49/0.61      ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | (~defined(b, g)) | (~product(codomain(g), g, g)) | defined(b, codomain(g))),
% 0.49/0.61      inference(modus_ponens,[status(thm)],[172, 171])).
% 0.49/0.61  tff(174,plain,
% 0.49/0.61      (defined(b, codomain(g))),
% 0.49/0.61      inference(unit_resolution,[status(thm)],[173, 167, 157, 150])).
% 0.49/0.61  tff(175,plain,
% 0.49/0.61      (^[X: $i] : refl(identity_map(codomain(X)) <=> identity_map(codomain(X)))),
% 0.49/0.61      inference(bind,[status(th)],[])).
% 0.49/0.61  tff(176,plain,
% 0.49/0.61      (![X: $i] : identity_map(codomain(X)) <=> ![X: $i] : identity_map(codomain(X))),
% 0.49/0.61      inference(quant_intro,[status(thm)],[175])).
% 0.49/0.61  tff(177,plain,
% 0.49/0.61      (![X: $i] : identity_map(codomain(X)) <=> ![X: $i] : identity_map(codomain(X))),
% 0.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(178,axiom,(![X: $i] : identity_map(codomain(X))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','codomain_is_an_identity_map')).
% 0.49/0.61  tff(179,plain,
% 0.49/0.61      (![X: $i] : identity_map(codomain(X))),
% 0.49/0.61      inference(modus_ponens,[status(thm)],[178, 177])).
% 0.49/0.61  tff(180,plain,(
% 0.49/0.61      ![X: $i] : identity_map(codomain(X))),
% 0.49/0.61      inference(skolemize,[status(sab)],[179])).
% 0.49/0.61  tff(181,plain,
% 0.49/0.61      (![X: $i] : identity_map(codomain(X))),
% 0.49/0.61      inference(modus_ponens,[status(thm)],[180, 176])).
% 0.49/0.61  tff(182,plain,
% 0.49/0.61      ((~![X: $i] : identity_map(codomain(X))) | identity_map(codomain(g))),
% 0.49/0.61      inference(quant_inst,[status(thm)],[])).
% 0.49/0.61  tff(183,plain,
% 0.49/0.61      (identity_map(codomain(g))),
% 0.49/0.61      inference(unit_resolution,[status(thm)],[182, 181])).
% 0.49/0.61  tff(184,plain,
% 0.49/0.61      (^[Y: $i, X: $i] : refl(((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X)) <=> ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X)))),
% 0.49/0.61      inference(bind,[status(th)],[])).
% 0.49/0.61  tff(185,plain,
% 0.49/0.61      (![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X)) <=> ![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.49/0.61      inference(quant_intro,[status(thm)],[184])).
% 0.49/0.61  tff(186,plain,
% 0.49/0.61      (![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X)) <=> ![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.49/0.61      inference(rewrite,[status(thm)],[])).
% 0.49/0.61  tff(187,plain,
% 0.49/0.61      (^[Y: $i, X: $i] : trans(monotonicity(rewrite(((~defined(X, Y)) | (~identity_map(Y))) <=> ((~defined(X, Y)) | (~identity_map(Y)))), ((((~defined(X, Y)) | (~identity_map(Y))) | product(X, Y, X)) <=> (((~defined(X, Y)) | (~identity_map(Y))) | product(X, Y, X)))), rewrite((((~defined(X, Y)) | (~identity_map(Y))) | product(X, Y, X)) <=> ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))), ((((~defined(X, Y)) | (~identity_map(Y))) | product(X, Y, X)) <=> ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))))),
% 0.49/0.61      inference(bind,[status(th)],[])).
% 0.49/0.61  tff(188,plain,
% 0.49/0.61      (![Y: $i, X: $i] : (((~defined(X, Y)) | (~identity_map(Y))) | product(X, Y, X)) <=> ![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.49/0.62      inference(quant_intro,[status(thm)],[187])).
% 0.49/0.62  tff(189,axiom,(![Y: $i, X: $i] : (((~defined(X, Y)) | (~identity_map(Y))) | product(X, Y, X))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','identity2')).
% 0.49/0.62  tff(190,plain,
% 0.49/0.62      (![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[189, 188])).
% 0.49/0.62  tff(191,plain,
% 0.49/0.62      (![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[190, 186])).
% 0.49/0.62  tff(192,plain,(
% 0.49/0.62      ![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.49/0.62      inference(skolemize,[status(sab)],[191])).
% 0.49/0.62  tff(193,plain,
% 0.49/0.62      (![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[192, 185])).
% 0.49/0.62  tff(194,plain,
% 0.49/0.62      (((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | ((~defined(b, codomain(g))) | (~identity_map(codomain(g))) | product(b, codomain(g), b))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | (~defined(b, codomain(g))) | (~identity_map(codomain(g))) | product(b, codomain(g), b))),
% 0.49/0.62      inference(rewrite,[status(thm)],[])).
% 0.49/0.62  tff(195,plain,
% 0.49/0.62      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | ((~defined(b, codomain(g))) | (~identity_map(codomain(g))) | product(b, codomain(g), b))),
% 0.49/0.62      inference(quant_inst,[status(thm)],[])).
% 0.49/0.62  tff(196,plain,
% 0.49/0.62      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | (~defined(b, codomain(g))) | (~identity_map(codomain(g))) | product(b, codomain(g), b)),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[195, 194])).
% 0.49/0.62  tff(197,plain,
% 0.49/0.62      (product(b, codomain(g), b)),
% 0.49/0.62      inference(unit_resolution,[status(thm)],[196, 193, 183, 174])).
% 0.49/0.62  tff(198,plain,
% 0.49/0.62      (((~![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(b, codomain(g), b)) | (~defined(compose(codomain(a), a), b)) | defined(compose(a, b), codomain(g)) | (~product(compose(codomain(a), a), b, 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)))) | (~product(b, codomain(g), b)) | (~defined(compose(codomain(a), a), b)) | defined(compose(a, b), codomain(g)) | (~product(compose(codomain(a), a), b, compose(a, b))))),
% 0.49/0.62      inference(rewrite,[status(thm)],[])).
% 0.49/0.62  tff(199,plain,
% 0.49/0.62      (((~defined(compose(codomain(a), a), b)) | defined(compose(a, b), codomain(g)) | (~product(b, codomain(g), b)) | (~product(compose(codomain(a), a), b, compose(a, b)))) <=> ((~product(b, codomain(g), b)) | (~defined(compose(codomain(a), a), b)) | defined(compose(a, b), codomain(g)) | (~product(compose(codomain(a), a), b, compose(a, b))))),
% 0.49/0.62      inference(rewrite,[status(thm)],[])).
% 0.49/0.62  tff(200,plain,
% 0.49/0.62      (((~![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(compose(codomain(a), a), b)) | defined(compose(a, b), codomain(g)) | (~product(b, codomain(g), b)) | (~product(compose(codomain(a), a), b, 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)))) | ((~product(b, codomain(g), b)) | (~defined(compose(codomain(a), a), b)) | defined(compose(a, b), codomain(g)) | (~product(compose(codomain(a), a), b, compose(a, b)))))),
% 0.49/0.62      inference(monotonicity,[status(thm)],[199])).
% 0.49/0.62  tff(201,plain,
% 0.49/0.62      (((~![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(compose(codomain(a), a), b)) | defined(compose(a, b), codomain(g)) | (~product(b, codomain(g), b)) | (~product(compose(codomain(a), a), b, 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)))) | (~product(b, codomain(g), b)) | (~defined(compose(codomain(a), a), b)) | defined(compose(a, b), codomain(g)) | (~product(compose(codomain(a), a), b, compose(a, b))))),
% 0.49/0.62      inference(transitivity,[status(thm)],[200, 198])).
% 0.49/0.62  tff(202,plain,
% 0.49/0.62      ((~![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(compose(codomain(a), a), b)) | defined(compose(a, b), codomain(g)) | (~product(b, codomain(g), b)) | (~product(compose(codomain(a), a), b, compose(a, b))))),
% 0.49/0.62      inference(quant_inst,[status(thm)],[])).
% 0.49/0.62  tff(203,plain,
% 0.49/0.62      ((~![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(b, codomain(g), b)) | (~defined(compose(codomain(a), a), b)) | defined(compose(a, b), codomain(g)) | (~product(compose(codomain(a), a), b, compose(a, b)))),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[202, 201])).
% 0.49/0.62  tff(204,plain,
% 0.49/0.62      (defined(compose(a, b), codomain(g)) | (~product(compose(codomain(a), a), b, compose(a, b)))),
% 0.49/0.62      inference(unit_resolution,[status(thm)],[203, 141, 197, 148])).
% 0.49/0.62  tff(205,plain,
% 0.49/0.62      (defined(compose(a, b), codomain(g))),
% 0.49/0.62      inference(unit_resolution,[status(thm)],[204, 114])).
% 0.49/0.62  tff(206,plain,
% 0.49/0.62      ((~![X: $i] : defined(codomain(X), X)) | defined(codomain(g), g)),
% 0.49/0.62      inference(quant_inst,[status(thm)],[])).
% 0.49/0.62  tff(207,plain,
% 0.49/0.62      (defined(codomain(g), g)),
% 0.49/0.62      inference(unit_resolution,[status(thm)],[206, 89])).
% 0.49/0.62  tff(208,assumption,(~defined(compose(a, b), g)), introduced(assumption)).
% 0.49/0.62  tff(209,plain,
% 0.49/0.62      (^[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.49/0.62      inference(bind,[status(th)],[])).
% 0.49/0.62  tff(210,plain,
% 0.49/0.62      (![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.49/0.62      inference(quant_intro,[status(thm)],[209])).
% 0.49/0.62  tff(211,plain,
% 0.49/0.62      (![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.49/0.62      inference(rewrite,[status(thm)],[])).
% 0.49/0.62  tff(212,plain,
% 0.49/0.62      (^[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.49/0.62      inference(bind,[status(th)],[])).
% 0.49/0.62  tff(213,plain,
% 0.49/0.62      (![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.49/0.62      inference(quant_intro,[status(thm)],[212])).
% 0.49/0.62  tff(214,axiom,(![Z: $i, Y: $i, X: $i] : ((((~defined(X, Y)) | (~defined(Y, Z))) | (~identity_map(Y))) | defined(X, Z))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','category_theory_axiom6')).
% 0.49/0.62  tff(215,plain,
% 0.49/0.62      (![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[214, 213])).
% 0.49/0.62  tff(216,plain,
% 0.49/0.62      (![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[215, 211])).
% 0.49/0.62  tff(217,plain,(
% 0.49/0.62      ![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.49/0.62      inference(skolemize,[status(sab)],[216])).
% 0.49/0.62  tff(218,plain,
% 0.49/0.62      (![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[217, 210])).
% 0.49/0.62  tff(219,plain,
% 0.49/0.62      (((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | (defined(compose(a, b), g) | (~defined(codomain(g), g)) | (~identity_map(codomain(g))) | (~defined(compose(a, b), codomain(g))))) <=> ((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | defined(compose(a, b), g) | (~defined(codomain(g), g)) | (~identity_map(codomain(g))) | (~defined(compose(a, b), codomain(g))))),
% 0.49/0.62      inference(rewrite,[status(thm)],[])).
% 0.49/0.62  tff(220,plain,
% 0.49/0.62      (((~defined(compose(a, b), codomain(g))) | defined(compose(a, b), g) | (~identity_map(codomain(g))) | (~defined(codomain(g), g))) <=> (defined(compose(a, b), g) | (~defined(codomain(g), g)) | (~identity_map(codomain(g))) | (~defined(compose(a, b), codomain(g))))),
% 0.49/0.62      inference(rewrite,[status(thm)],[])).
% 0.49/0.62  tff(221,plain,
% 0.49/0.62      (((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | ((~defined(compose(a, b), codomain(g))) | defined(compose(a, b), g) | (~identity_map(codomain(g))) | (~defined(codomain(g), g)))) <=> ((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | (defined(compose(a, b), g) | (~defined(codomain(g), g)) | (~identity_map(codomain(g))) | (~defined(compose(a, b), codomain(g)))))),
% 0.49/0.62      inference(monotonicity,[status(thm)],[220])).
% 0.49/0.62  tff(222,plain,
% 0.49/0.62      (((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | ((~defined(compose(a, b), codomain(g))) | defined(compose(a, b), g) | (~identity_map(codomain(g))) | (~defined(codomain(g), g)))) <=> ((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | defined(compose(a, b), g) | (~defined(codomain(g), g)) | (~identity_map(codomain(g))) | (~defined(compose(a, b), codomain(g))))),
% 0.49/0.62      inference(transitivity,[status(thm)],[221, 219])).
% 0.49/0.62  tff(223,plain,
% 0.49/0.62      ((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | ((~defined(compose(a, b), codomain(g))) | defined(compose(a, b), g) | (~identity_map(codomain(g))) | (~defined(codomain(g), g)))),
% 0.49/0.62      inference(quant_inst,[status(thm)],[])).
% 0.49/0.62  tff(224,plain,
% 0.49/0.62      ((~![Z: $i, Y: $i, X: $i] : ((~defined(X, Y)) | defined(X, Z) | (~identity_map(Y)) | (~defined(Y, Z)))) | defined(compose(a, b), g) | (~defined(codomain(g), g)) | (~identity_map(codomain(g))) | (~defined(compose(a, b), codomain(g)))),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[223, 222])).
% 0.49/0.62  tff(225,plain,
% 0.49/0.62      ($false),
% 0.49/0.62      inference(unit_resolution,[status(thm)],[224, 218, 208, 207, 183, 205])).
% 0.49/0.62  tff(226,plain,(defined(compose(a, b), g)), inference(lemma,lemma(discharge,[]))).
% 0.49/0.62  tff(227,plain,
% 0.49/0.62      (((~![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, d) | (~product(b, g, d)) | (~product(a, b, compose(a, b))) | (~defined(compose(a, b), g)))) <=> ((~![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, d) | (~product(b, g, d)) | (~product(a, b, compose(a, b))) | (~defined(compose(a, b), g)))),
% 0.49/0.62      inference(rewrite,[status(thm)],[])).
% 0.49/0.62  tff(228,plain,
% 0.49/0.62      ((defined(a, d) | (~defined(compose(a, b), g)) | (~product(b, g, d)) | (~product(a, b, compose(a, b)))) <=> (defined(a, d) | (~product(b, g, d)) | (~product(a, b, compose(a, b))) | (~defined(compose(a, b), g)))),
% 0.49/0.62      inference(rewrite,[status(thm)],[])).
% 0.49/0.62  tff(229,plain,
% 0.49/0.62      (((~![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, d) | (~defined(compose(a, b), g)) | (~product(b, g, d)) | (~product(a, b, 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, d) | (~product(b, g, d)) | (~product(a, b, compose(a, b))) | (~defined(compose(a, b), g))))),
% 0.49/0.62      inference(monotonicity,[status(thm)],[228])).
% 0.49/0.62  tff(230,plain,
% 0.49/0.62      (((~![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, d) | (~defined(compose(a, b), g)) | (~product(b, g, d)) | (~product(a, b, 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, d) | (~product(b, g, d)) | (~product(a, b, compose(a, b))) | (~defined(compose(a, b), g)))),
% 0.49/0.62      inference(transitivity,[status(thm)],[229, 227])).
% 0.49/0.62  tff(231,plain,
% 0.49/0.62      ((~![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, d) | (~defined(compose(a, b), g)) | (~product(b, g, d)) | (~product(a, b, compose(a, b))))),
% 0.49/0.62      inference(quant_inst,[status(thm)],[])).
% 0.49/0.62  tff(232,plain,
% 0.49/0.62      ((~![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, d) | (~product(b, g, d)) | (~product(a, b, compose(a, b))) | (~defined(compose(a, b), g))),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[231, 230])).
% 0.49/0.62  tff(233,plain,
% 0.49/0.62      (defined(a, d) | (~defined(compose(a, b), g))),
% 0.49/0.62      inference(unit_resolution,[status(thm)],[232, 124, 153, 25])).
% 0.49/0.62  tff(234,plain,
% 0.49/0.62      (defined(a, d)),
% 0.49/0.62      inference(unit_resolution,[status(thm)],[233, 226])).
% 0.49/0.62  tff(235,plain,
% 0.49/0.62      (((~![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, c)) | (~defined(a, d)) | defined(c, h) | (~product(b, h, d)))) <=> ((~![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, c)) | (~defined(a, d)) | defined(c, h) | (~product(b, h, d)))),
% 0.49/0.62      inference(rewrite,[status(thm)],[])).
% 0.49/0.62  tff(236,plain,
% 0.49/0.62      (((~defined(a, d)) | defined(c, h) | (~product(b, h, d)) | (~product(a, b, c))) <=> ((~product(a, b, c)) | (~defined(a, d)) | defined(c, h) | (~product(b, h, d)))),
% 0.49/0.62      inference(rewrite,[status(thm)],[])).
% 0.49/0.62  tff(237,plain,
% 0.49/0.62      (((~![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, d)) | defined(c, h) | (~product(b, h, d)) | (~product(a, b, c)))) <=> ((~![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, c)) | (~defined(a, d)) | defined(c, h) | (~product(b, h, d))))),
% 0.49/0.62      inference(monotonicity,[status(thm)],[236])).
% 0.49/0.62  tff(238,plain,
% 0.49/0.62      (((~![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, d)) | defined(c, h) | (~product(b, h, d)) | (~product(a, b, c)))) <=> ((~![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, c)) | (~defined(a, d)) | defined(c, h) | (~product(b, h, d)))),
% 0.49/0.62      inference(transitivity,[status(thm)],[237, 235])).
% 0.49/0.62  tff(239,plain,
% 0.49/0.62      ((~![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, d)) | defined(c, h) | (~product(b, h, d)) | (~product(a, b, c)))),
% 0.49/0.62      inference(quant_inst,[status(thm)],[])).
% 0.49/0.62  tff(240,plain,
% 0.49/0.62      ((~![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, c)) | (~defined(a, d)) | defined(c, h) | (~product(b, h, d))),
% 0.49/0.62      inference(modus_ponens,[status(thm)],[239, 238])).
% 0.49/0.62  tff(241,plain,
% 0.49/0.62      ((~defined(a, d)) | defined(c, h)),
% 0.49/0.62      inference(unit_resolution,[status(thm)],[240, 141, 3, 73])).
% 0.49/0.62  tff(242,plain,
% 0.49/0.62      (defined(c, h)),
% 0.49/0.62      inference(unit_resolution,[status(thm)],[241, 234])).
% 0.49/0.62  tff(243,plain,
% 0.62/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)))) | ((~product(a, b, c)) | (~defined(c, h)) | defined(a, compose(b, h)) | (~product(b, h, compose(b, h))))) <=> ((~![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, c)) | (~defined(c, h)) | defined(a, compose(b, h)) | (~product(b, h, compose(b, h))))),
% 0.62/0.63      inference(rewrite,[status(thm)],[])).
% 0.62/0.63  tff(244,plain,
% 0.62/0.63      ((defined(a, compose(b, h)) | (~defined(c, h)) | (~product(b, h, compose(b, h))) | (~product(a, b, c))) <=> ((~product(a, b, c)) | (~defined(c, h)) | defined(a, compose(b, h)) | (~product(b, h, compose(b, h))))),
% 0.62/0.63      inference(rewrite,[status(thm)],[])).
% 0.62/0.63  tff(245,plain,
% 0.62/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, compose(b, h)) | (~defined(c, h)) | (~product(b, h, compose(b, h))) | (~product(a, b, c)))) <=> ((~![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, c)) | (~defined(c, h)) | defined(a, compose(b, h)) | (~product(b, h, compose(b, h)))))),
% 0.62/0.63      inference(monotonicity,[status(thm)],[244])).
% 0.62/0.63  tff(246,plain,
% 0.62/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, compose(b, h)) | (~defined(c, h)) | (~product(b, h, compose(b, h))) | (~product(a, b, c)))) <=> ((~![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, c)) | (~defined(c, h)) | defined(a, compose(b, h)) | (~product(b, h, compose(b, h))))),
% 0.62/0.63      inference(transitivity,[status(thm)],[245, 243])).
% 0.62/0.63  tff(247,plain,
% 0.62/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, compose(b, h)) | (~defined(c, h)) | (~product(b, h, compose(b, h))) | (~product(a, b, c)))),
% 0.62/0.63      inference(quant_inst,[status(thm)],[])).
% 0.62/0.63  tff(248,plain,
% 0.62/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)))) | (~product(a, b, c)) | (~defined(c, h)) | defined(a, compose(b, h)) | (~product(b, h, compose(b, h)))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[247, 246])).
% 0.62/0.63  tff(249,plain,
% 0.62/0.63      ((~defined(c, h)) | defined(a, compose(b, h))),
% 0.62/0.63      inference(unit_resolution,[status(thm)],[248, 124, 3, 81])).
% 0.62/0.63  tff(250,plain,
% 0.62/0.63      (defined(a, compose(b, h))),
% 0.62/0.63      inference(unit_resolution,[status(thm)],[249, 242])).
% 0.62/0.63  tff(251,plain,
% 0.62/0.63      (defined(compose(codomain(a), a), compose(b, h))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[250, 111])).
% 0.62/0.63  tff(252,plain,
% 0.62/0.63      (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(compose(codomain(a), a), compose(b, h))) | product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h))))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(compose(codomain(a), a), compose(b, h))) | product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h))))),
% 0.62/0.63      inference(rewrite,[status(thm)],[])).
% 0.62/0.63  tff(253,plain,
% 0.62/0.63      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(compose(codomain(a), a), compose(b, h))) | product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h))))),
% 0.62/0.63      inference(quant_inst,[status(thm)],[])).
% 0.62/0.63  tff(254,plain,
% 0.62/0.63      ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(compose(codomain(a), a), compose(b, h))) | product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[253, 252])).
% 0.62/0.63  tff(255,plain,
% 0.62/0.63      ((~defined(compose(codomain(a), a), compose(b, h))) | product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.63      inference(unit_resolution,[status(thm)],[254, 21])).
% 0.62/0.63  tff(256,plain,
% 0.62/0.63      (product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.63      inference(unit_resolution,[status(thm)],[255, 251])).
% 0.62/0.63  tff(257,plain,
% 0.62/0.63      (^[Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : refl(((~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)) | (~product(X, Yz, Xyz))))),
% 0.62/0.63      inference(bind,[status(th)],[])).
% 0.62/0.63  tff(258,plain,
% 0.62/0.63      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz))) <=> ![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))),
% 0.62/0.63      inference(quant_intro,[status(thm)],[257])).
% 0.62/0.63  tff(259,plain,
% 0.62/0.63      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz))) <=> ![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))),
% 0.62/0.63      inference(rewrite,[status(thm)],[])).
% 0.62/0.63  tff(260,plain,
% 0.62/0.63      (^[Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : trans(monotonicity(trans(monotonicity(rewrite(((~product(Y, Z, Yz)) | (~product(X, Yz, Xyz))) <=> ((~product(Y, Z, Yz)) | (~product(X, Yz, Xyz)))), ((((~product(Y, Z, Yz)) | (~product(X, Yz, Xyz))) | (~product(X, Y, Xy))) <=> (((~product(Y, Z, Yz)) | (~product(X, Yz, Xyz))) | (~product(X, Y, Xy))))), rewrite((((~product(Y, Z, Yz)) | (~product(X, Yz, Xyz))) | (~product(X, Y, Xy))) <=> ((~product(Y, Z, Yz)) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))), ((((~product(Y, Z, Yz)) | (~product(X, Yz, Xyz))) | (~product(X, Y, Xy))) <=> ((~product(Y, Z, Yz)) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz))))), (((((~product(Y, Z, Yz)) | (~product(X, Yz, Xyz))) | (~product(X, Y, Xy))) | product(Xy, Z, Xyz)) <=> (((~product(Y, Z, Yz)) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz))) | product(Xy, Z, Xyz)))), rewrite((((~product(Y, Z, Yz)) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz))) | product(Xy, Z, Xyz)) <=> ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))), (((((~product(Y, Z, Yz)) | (~product(X, Yz, Xyz))) | (~product(X, Y, Xy))) | product(Xy, Z, Xyz)) <=> ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))))),
% 0.62/0.63      inference(bind,[status(th)],[])).
% 0.62/0.63  tff(261,plain,
% 0.62/0.63      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((((~product(Y, Z, Yz)) | (~product(X, Yz, Xyz))) | (~product(X, Y, Xy))) | product(Xy, Z, Xyz)) <=> ![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))),
% 0.62/0.63      inference(quant_intro,[status(thm)],[260])).
% 0.62/0.63  tff(262,axiom,(![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((((~product(Y, Z, Yz)) | (~product(X, Yz, Xyz))) | (~product(X, Y, Xy))) | product(Xy, Z, Xyz))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','category_theory_axiom5')).
% 0.62/0.63  tff(263,plain,
% 0.62/0.63      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[262, 261])).
% 0.62/0.63  tff(264,plain,
% 0.62/0.63      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[263, 259])).
% 0.62/0.63  tff(265,plain,(
% 0.62/0.63      ![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))),
% 0.62/0.63      inference(skolemize,[status(sab)],[264])).
% 0.62/0.63  tff(266,plain,
% 0.62/0.63      (![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[265, 258])).
% 0.62/0.63  tff(267,plain,
% 0.62/0.63      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | ((~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | (~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | (~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))))),
% 0.62/0.63      inference(rewrite,[status(thm)],[])).
% 0.62/0.63  tff(268,plain,
% 0.62/0.63      (((~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h))))) <=> ((~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | (~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))))),
% 0.62/0.63      inference(rewrite,[status(thm)],[])).
% 0.62/0.63  tff(269,plain,
% 0.62/0.63      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | ((~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | ((~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | (~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))))),
% 0.62/0.63      inference(monotonicity,[status(thm)],[268])).
% 0.62/0.63  tff(270,plain,
% 0.62/0.63      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | ((~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | (~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))))),
% 0.62/0.63      inference(transitivity,[status(thm)],[269, 267])).
% 0.62/0.63  tff(271,plain,
% 0.62/0.63      ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | ((~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))))),
% 0.62/0.63      inference(quant_inst,[status(thm)],[])).
% 0.62/0.63  tff(272,plain,
% 0.62/0.63      ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | (~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[271, 270])).
% 0.62/0.63  tff(273,plain,
% 0.62/0.63      ((~product(b, compose(h, domain(h)), compose(b, h))) | product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.63      inference(unit_resolution,[status(thm)],[272, 266, 114, 256])).
% 0.62/0.63  tff(274,plain,
% 0.62/0.63      (product(compose(a, b), compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.63      inference(unit_resolution,[status(thm)],[273, 82])).
% 0.62/0.63  tff(275,plain,
% 0.62/0.63      (product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[274, 41])).
% 0.62/0.63  tff(276,plain,
% 0.62/0.63      ((g = h) <=> (h = g)),
% 0.62/0.63      inference(commutativity,[status(thm)],[])).
% 0.62/0.63  tff(277,plain,
% 0.62/0.63      ((g = compose(h, domain(h))) <=> (g = h)),
% 0.62/0.63      inference(monotonicity,[status(thm)],[68])).
% 0.62/0.63  tff(278,plain,
% 0.62/0.63      ((g = compose(h, domain(h))) <=> (h = g)),
% 0.62/0.63      inference(transitivity,[status(thm)],[277, 276])).
% 0.62/0.63  tff(279,plain,
% 0.62/0.63      ((h = g) <=> (g = compose(h, domain(h)))),
% 0.62/0.63      inference(symmetry,[status(thm)],[278])).
% 0.62/0.63  tff(280,plain,
% 0.62/0.63      ((~(h = g)) <=> (~(g = compose(h, domain(h))))),
% 0.62/0.63      inference(monotonicity,[status(thm)],[279])).
% 0.62/0.63  tff(281,plain,
% 0.62/0.63      ((~(h = g)) <=> (~(h = g))),
% 0.62/0.63      inference(rewrite,[status(thm)],[])).
% 0.62/0.63  tff(282,axiom,(~(h = g)), file('/export/starexec/sandbox/benchmark/theBenchmark.p','prove_h_equals_g')).
% 0.62/0.63  tff(283,plain,
% 0.62/0.63      (~(h = g)),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[282, 281])).
% 0.62/0.63  tff(284,plain,
% 0.62/0.63      (~(g = compose(h, domain(h)))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[283, 280])).
% 0.62/0.63  tff(285,plain,
% 0.62/0.63      (product(c, g, compose(compose(codomain(a), a), compose(b, h))) <=> product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.63      inference(monotonicity,[status(thm)],[39])).
% 0.62/0.63  tff(286,plain,
% 0.62/0.63      (product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h))) <=> product(c, g, compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.63      inference(symmetry,[status(thm)],[285])).
% 0.62/0.63  tff(287,plain,
% 0.62/0.63      (((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(b, h, d)) | (~product(b, h, compose(b, h))) | (d = compose(b, h)))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(b, h, d)) | (~product(b, h, compose(b, h))) | (d = compose(b, h)))),
% 0.62/0.63      inference(rewrite,[status(thm)],[])).
% 0.62/0.63  tff(288,plain,
% 0.62/0.63      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(b, h, d)) | (~product(b, h, compose(b, h))) | (d = compose(b, h)))),
% 0.62/0.63      inference(quant_inst,[status(thm)],[])).
% 0.62/0.63  tff(289,plain,
% 0.62/0.63      ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(b, h, d)) | (~product(b, h, compose(b, h))) | (d = compose(b, h))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[288, 287])).
% 0.62/0.63  tff(290,plain,
% 0.62/0.63      (d = compose(b, h)),
% 0.62/0.63      inference(unit_resolution,[status(thm)],[289, 35, 73, 81])).
% 0.62/0.63  tff(291,plain,
% 0.62/0.63      (compose(b, h) = d),
% 0.62/0.63      inference(symmetry,[status(thm)],[290])).
% 0.62/0.63  tff(292,plain,
% 0.62/0.63      (product(b, g, compose(b, h)) <=> product(b, g, d)),
% 0.62/0.63      inference(monotonicity,[status(thm)],[291])).
% 0.62/0.63  tff(293,plain,
% 0.62/0.63      (product(b, g, d) <=> product(b, g, compose(b, h))),
% 0.62/0.63      inference(symmetry,[status(thm)],[292])).
% 0.62/0.63  tff(294,plain,
% 0.62/0.63      (product(b, g, compose(b, h))),
% 0.62/0.63      inference(modus_ponens,[status(thm)],[153, 293])).
% 0.62/0.63  tff(295,plain,
% 0.62/0.63      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | ((~product(b, g, compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | (~product(b, g, compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h))))),
% 0.62/0.64      inference(rewrite,[status(thm)],[])).
% 0.62/0.64  tff(296,plain,
% 0.62/0.64      (((~product(b, g, compose(b, h))) | product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h))))) <=> ((~product(b, g, compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h))))),
% 0.62/0.64      inference(rewrite,[status(thm)],[])).
% 0.62/0.64  tff(297,plain,
% 0.62/0.64      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | ((~product(b, g, compose(b, h))) | product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | ((~product(b, g, compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h)))))),
% 0.62/0.64      inference(monotonicity,[status(thm)],[296])).
% 0.62/0.64  tff(298,plain,
% 0.62/0.64      (((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | ((~product(b, g, compose(b, h))) | product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))))) <=> ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | (~product(b, g, compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h))))),
% 0.62/0.64      inference(transitivity,[status(thm)],[297, 295])).
% 0.62/0.64  tff(299,plain,
% 0.62/0.64      ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | ((~product(b, g, compose(b, h))) | product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))))),
% 0.62/0.64      inference(quant_inst,[status(thm)],[])).
% 0.62/0.64  tff(300,plain,
% 0.62/0.64      ((~![Xy: $i, Z: $i, Y: $i, Xyz: $i, X: $i, Yz: $i] : ((~product(Y, Z, Yz)) | product(Xy, Z, Xyz) | (~product(X, Y, Xy)) | (~product(X, Yz, Xyz)))) | (~product(b, g, compose(b, h))) | (~product(compose(codomain(a), a), b, compose(a, b))) | (~product(compose(codomain(a), a), compose(b, h), compose(compose(codomain(a), a), compose(b, h)))) | product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.64      inference(modus_ponens,[status(thm)],[299, 298])).
% 0.62/0.64  tff(301,plain,
% 0.62/0.64      (product(compose(a, b), g, compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.64      inference(unit_resolution,[status(thm)],[300, 266, 294, 114, 256])).
% 0.62/0.64  tff(302,plain,
% 0.62/0.64      (product(c, g, compose(compose(codomain(a), a), compose(b, h)))),
% 0.62/0.64      inference(modus_ponens,[status(thm)],[301, 286])).
% 0.62/0.64  tff(303,plain,
% 0.62/0.64      (^[X3: $i, X2: $i, X1: $i] : refl(((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2))) <=> ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2))))),
% 0.62/0.64      inference(bind,[status(th)],[])).
% 0.62/0.64  tff(304,plain,
% 0.62/0.64      (![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2))) <=> ![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))),
% 0.62/0.64      inference(quant_intro,[status(thm)],[303])).
% 0.62/0.64  tff(305,plain,
% 0.62/0.64      (![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2))) <=> ![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))),
% 0.62/0.64      inference(rewrite,[status(thm)],[])).
% 0.62/0.64  tff(306,plain,
% 0.62/0.64      (^[X3: $i, X2: $i, X1: $i] : rewrite((((~product(c, X1, X2)) | (~product(c, X3, X2))) | (X1 = X3)) <=> ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2))))),
% 0.62/0.64      inference(bind,[status(th)],[])).
% 0.62/0.64  tff(307,plain,
% 0.62/0.64      (![X3: $i, X2: $i, X1: $i] : (((~product(c, X1, X2)) | (~product(c, X3, X2))) | (X1 = X3)) <=> ![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))),
% 0.62/0.64      inference(quant_intro,[status(thm)],[306])).
% 0.62/0.64  tff(308,axiom,(![X3: $i, X2: $i, X1: $i] : (((~product(c, X1, X2)) | (~product(c, X3, X2))) | (X1 = X3))), file('/export/starexec/sandbox/benchmark/theBenchmark.p','cancellation_for_product')).
% 0.62/0.64  tff(309,plain,
% 0.62/0.64      (![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))),
% 0.62/0.64      inference(modus_ponens,[status(thm)],[308, 307])).
% 0.62/0.64  tff(310,plain,
% 0.62/0.64      (![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))),
% 0.62/0.64      inference(modus_ponens,[status(thm)],[309, 305])).
% 0.62/0.64  tff(311,plain,(
% 0.62/0.64      ![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))),
% 0.62/0.64      inference(skolemize,[status(sab)],[310])).
% 0.62/0.64  tff(312,plain,
% 0.62/0.64      (![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))),
% 0.62/0.64      inference(modus_ponens,[status(thm)],[311, 304])).
% 0.62/0.64  tff(313,plain,
% 0.62/0.64      (((~![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))) | ((g = compose(h, domain(h))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))))) <=> ((~![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))) | (g = compose(h, domain(h))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))))),
% 0.62/0.64      inference(rewrite,[status(thm)],[])).
% 0.62/0.64  tff(314,plain,
% 0.62/0.64      (((g = compose(h, domain(h))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h))))) <=> ((g = compose(h, domain(h))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))))),
% 0.62/0.64      inference(rewrite,[status(thm)],[])).
% 0.62/0.64  tff(315,plain,
% 0.62/0.64      (((~![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))) | ((g = compose(h, domain(h))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h)))))) <=> ((~![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))) | ((g = compose(h, domain(h))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))))))),
% 0.62/0.64      inference(monotonicity,[status(thm)],[314])).
% 0.62/0.64  tff(316,plain,
% 0.62/0.64      (((~![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))) | ((g = compose(h, domain(h))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h)))))) <=> ((~![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))) | (g = compose(h, domain(h))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))))),
% 0.62/0.64      inference(transitivity,[status(thm)],[315, 313])).
% 0.62/0.64  tff(317,plain,
% 0.62/0.64      ((~![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))) | ((g = compose(h, domain(h))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h)))))),
% 0.62/0.64      inference(quant_inst,[status(thm)],[])).
% 0.62/0.64  tff(318,plain,
% 0.62/0.64      ((~![X3: $i, X2: $i, X1: $i] : ((X1 = X3) | (~product(c, X3, X2)) | (~product(c, X1, X2)))) | (g = compose(h, domain(h))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))))),
% 0.62/0.64      inference(modus_ponens,[status(thm)],[317, 316])).
% 0.62/0.64  tff(319,plain,
% 0.62/0.64      ((g = compose(h, domain(h))) | (~product(c, g, compose(compose(codomain(a), a), compose(b, h)))) | (~product(c, compose(h, domain(h)), compose(compose(codomain(a), a), compose(b, h))))),
% 0.62/0.64      inference(unit_resolution,[status(thm)],[318, 312])).
% 0.62/0.64  tff(320,plain,
% 0.62/0.64      ($false),
% 0.62/0.64      inference(unit_resolution,[status(thm)],[319, 302, 284, 275])).
% 0.62/0.64  % SZS output end Proof
%------------------------------------------------------------------------------