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