%------------------------------------------------------------------------------
% File : Z3---4.15.1
% Problem : CAT008-1 : TPTP v9.0.0. Released v1.0.0.
% Transfm : none
% Format : tptp
% Command : run_E %s %d THM
% Computer : n013.cluster.edu
% Model : x86_64 x86_64
% CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory : 8042.1875MB
% OS : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit : 300s
% DateTime : Sat Jun 21 05:00:20 AM UTC 2025
% Result : Unsatisfiable 0.19s 0.40s
% Output : Proof 0.19s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.12/0.12 % Problem : CAT008-1 : TPTP v9.0.0. Released v1.0.0.
% 0.12/0.12 % Command : run_E %s %d THM
% 0.12/0.34 % Computer : n013.cluster.edu
% 0.12/0.34 % Model : x86_64 x86_64
% 0.12/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.34 % Memory : 8042.1875MB
% 0.12/0.34 % OS : Linux 3.10.0-693.el7.x86_64
% 0.12/0.34 % CPULimit : 300
% 0.12/0.34 % WCLimit : 300
% 0.12/0.34 % DateTime : Thu Jun 19 11:52:08 EDT 2025
% 0.12/0.34 % CPUTime :
% 0.19/0.40 % SZS status Unsatisfiable
% 0.19/0.40 % SZS output start Proof
% 0.19/0.40 tff(product_type, type, (
% 0.19/0.40 product: ( $i * $i * $i ) > $o)).
% 0.19/0.40 tff(domain_type, type, (
% 0.19/0.40 domain: $i > $i)).
% 0.19/0.40 tff(a_type, type, (
% 0.19/0.40 a: $i)).
% 0.19/0.40 tff(codomain_type, type, (
% 0.19/0.40 codomain: $i > $i)).
% 0.19/0.40 tff(b_type, type, (
% 0.19/0.40 b: $i)).
% 0.19/0.40 tff(defined_type, type, (
% 0.19/0.40 defined: ( $i * $i ) > $o)).
% 0.19/0.40 tff(compose_type, type, (
% 0.19/0.40 compose: ( $i * $i ) > $i)).
% 0.19/0.40 tff(identity_map_type, type, (
% 0.19/0.40 identity_map: $i > $o)).
% 0.19/0.40 tff(1,assumption,(~defined(codomain(b), domain(a))), introduced(assumption)).
% 0.19/0.40 tff(2,plain,
% 0.19/0.40 (^[X: $i] : refl(defined(X, domain(X)) <=> defined(X, domain(X)))),
% 0.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(3,plain,
% 0.19/0.40 (![X: $i] : defined(X, domain(X)) <=> ![X: $i] : defined(X, domain(X))),
% 0.19/0.40 inference(quant_intro,[status(thm)],[2])).
% 0.19/0.40 tff(4,plain,
% 0.19/0.40 (![X: $i] : defined(X, domain(X)) <=> ![X: $i] : defined(X, domain(X))),
% 0.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(5,axiom,(![X: $i] : defined(X, domain(X))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','mapping_from_x_to_its_domain')).
% 0.19/0.40 tff(6,plain,
% 0.19/0.40 (![X: $i] : defined(X, domain(X))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[5, 4])).
% 0.19/0.40 tff(7,plain,(
% 0.19/0.40 ![X: $i] : defined(X, domain(X))),
% 0.19/0.40 inference(skolemize,[status(sab)],[6])).
% 0.19/0.40 tff(8,plain,
% 0.19/0.40 (![X: $i] : defined(X, domain(X))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[7, 3])).
% 0.19/0.40 tff(9,plain,
% 0.19/0.40 ((~![X: $i] : defined(X, domain(X))) | defined(a, domain(a))),
% 0.19/0.40 inference(quant_inst,[status(thm)],[])).
% 0.19/0.40 tff(10,plain,
% 0.19/0.40 (defined(a, domain(a))),
% 0.19/0.40 inference(unit_resolution,[status(thm)],[9, 8])).
% 0.19/0.40 tff(11,plain,
% 0.19/0.40 (^[Y: $i, X: $i] : refl(((~defined(X, Y)) | product(X, Y, compose(X, Y))) <=> ((~defined(X, Y)) | product(X, Y, compose(X, Y))))),
% 0.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(12,plain,
% 0.19/0.40 (![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.19/0.40 inference(quant_intro,[status(thm)],[11])).
% 0.19/0.40 tff(13,plain,
% 0.19/0.40 (![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.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(14,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.19/0.40 tff(15,plain,
% 0.19/0.40 (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[14, 13])).
% 0.19/0.40 tff(16,plain,(
% 0.19/0.40 ![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.19/0.40 inference(skolemize,[status(sab)],[15])).
% 0.19/0.40 tff(17,plain,
% 0.19/0.40 (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[16, 12])).
% 0.19/0.40 tff(18,plain,
% 0.19/0.40 (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(a, domain(a))) | product(a, domain(a), compose(a, domain(a))))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(a, domain(a))) | product(a, domain(a), compose(a, domain(a))))),
% 0.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(19,plain,
% 0.19/0.40 ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | ((~defined(a, domain(a))) | product(a, domain(a), compose(a, domain(a))))),
% 0.19/0.40 inference(quant_inst,[status(thm)],[])).
% 0.19/0.40 tff(20,plain,
% 0.19/0.40 ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, compose(X, Y)))) | (~defined(a, domain(a))) | product(a, domain(a), compose(a, domain(a)))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[19, 18])).
% 0.19/0.40 tff(21,plain,
% 0.19/0.40 (product(a, domain(a), compose(a, domain(a)))),
% 0.19/0.40 inference(unit_resolution,[status(thm)],[20, 17, 10])).
% 0.19/0.40 tff(22,plain,
% 0.19/0.40 (^[X: $i] : refl(product(X, domain(X), X) <=> product(X, domain(X), X))),
% 0.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(23,plain,
% 0.19/0.40 (![X: $i] : product(X, domain(X), X) <=> ![X: $i] : product(X, domain(X), X)),
% 0.19/0.40 inference(quant_intro,[status(thm)],[22])).
% 0.19/0.40 tff(24,plain,
% 0.19/0.40 (![X: $i] : product(X, domain(X), X) <=> ![X: $i] : product(X, domain(X), X)),
% 0.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(25,axiom,(![X: $i] : product(X, domain(X), X)), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','product_on_domain')).
% 0.19/0.40 tff(26,plain,
% 0.19/0.40 (![X: $i] : product(X, domain(X), X)),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[25, 24])).
% 0.19/0.40 tff(27,plain,(
% 0.19/0.40 ![X: $i] : product(X, domain(X), X)),
% 0.19/0.40 inference(skolemize,[status(sab)],[26])).
% 0.19/0.40 tff(28,plain,
% 0.19/0.40 (![X: $i] : product(X, domain(X), X)),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[27, 23])).
% 0.19/0.40 tff(29,plain,
% 0.19/0.40 ((~![X: $i] : product(X, domain(X), X)) | product(a, domain(a), a)),
% 0.19/0.40 inference(quant_inst,[status(thm)],[])).
% 0.19/0.40 tff(30,plain,
% 0.19/0.40 (product(a, domain(a), a)),
% 0.19/0.40 inference(unit_resolution,[status(thm)],[29, 28])).
% 0.19/0.40 tff(31,plain,
% 0.19/0.40 (^[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.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(32,plain,
% 0.19/0.40 (![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.19/0.40 inference(quant_intro,[status(thm)],[31])).
% 0.19/0.40 tff(33,plain,
% 0.19/0.40 (![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.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(34,plain,
% 0.19/0.40 (^[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.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(35,plain,
% 0.19/0.40 (![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.19/0.40 inference(quant_intro,[status(thm)],[34])).
% 0.19/0.40 tff(36,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.19/0.40 tff(37,plain,
% 0.19/0.40 (![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[36, 35])).
% 0.19/0.40 tff(38,plain,
% 0.19/0.40 (![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[37, 33])).
% 0.19/0.40 tff(39,plain,(
% 0.19/0.40 ![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.19/0.40 inference(skolemize,[status(sab)],[38])).
% 0.19/0.40 tff(40,plain,
% 0.19/0.40 (![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[39, 32])).
% 0.19/0.40 tff(41,plain,
% 0.19/0.40 (((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(a, domain(a), a)) | (~product(a, domain(a), compose(a, domain(a)))) | (a = compose(a, domain(a))))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(a, domain(a), a)) | (~product(a, domain(a), compose(a, domain(a)))) | (a = compose(a, domain(a))))),
% 0.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(42,plain,
% 0.19/0.40 ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(a, domain(a), a)) | (~product(a, domain(a), compose(a, domain(a)))) | (a = compose(a, domain(a))))),
% 0.19/0.40 inference(quant_inst,[status(thm)],[])).
% 0.19/0.40 tff(43,plain,
% 0.19/0.40 ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (~product(a, domain(a), a)) | (~product(a, domain(a), compose(a, domain(a)))) | (a = compose(a, domain(a)))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[42, 41])).
% 0.19/0.40 tff(44,plain,
% 0.19/0.40 (a = compose(a, domain(a))),
% 0.19/0.40 inference(unit_resolution,[status(thm)],[43, 40, 30, 21])).
% 0.19/0.40 tff(45,plain,
% 0.19/0.40 (compose(a, domain(a)) = a),
% 0.19/0.40 inference(symmetry,[status(thm)],[44])).
% 0.19/0.40 tff(46,plain,
% 0.19/0.40 (defined(compose(a, domain(a)), domain(a)) <=> defined(a, domain(a))),
% 0.19/0.40 inference(monotonicity,[status(thm)],[45])).
% 0.19/0.40 tff(47,plain,
% 0.19/0.40 (defined(a, domain(a)) <=> defined(compose(a, domain(a)), domain(a))),
% 0.19/0.40 inference(symmetry,[status(thm)],[46])).
% 0.19/0.40 tff(48,plain,
% 0.19/0.40 (defined(compose(a, domain(a)), domain(a))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[10, 47])).
% 0.19/0.40 tff(49,assumption,(~defined(compose(a, domain(a)), domain(a))), introduced(assumption)).
% 0.19/0.40 tff(50,plain,
% 0.19/0.40 ($false),
% 0.19/0.40 inference(unit_resolution,[status(thm)],[49, 48])).
% 0.19/0.40 tff(51,plain,(defined(compose(a, domain(a)), domain(a))), inference(lemma,lemma(discharge,[]))).
% 0.19/0.40 tff(52,plain,
% 0.19/0.40 (product(compose(a, domain(a)), codomain(b), compose(a, domain(a))) <=> product(a, codomain(b), a)),
% 0.19/0.40 inference(monotonicity,[status(thm)],[45, 45])).
% 0.19/0.40 tff(53,plain,
% 0.19/0.40 (product(a, codomain(b), a) <=> product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))),
% 0.19/0.40 inference(symmetry,[status(thm)],[52])).
% 0.19/0.40 tff(54,plain,
% 0.19/0.40 (^[X: $i] : refl(product(codomain(X), X, X) <=> product(codomain(X), X, X))),
% 0.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(55,plain,
% 0.19/0.40 (![X: $i] : product(codomain(X), X, X) <=> ![X: $i] : product(codomain(X), X, X)),
% 0.19/0.40 inference(quant_intro,[status(thm)],[54])).
% 0.19/0.40 tff(56,plain,
% 0.19/0.40 (![X: $i] : product(codomain(X), X, X) <=> ![X: $i] : product(codomain(X), X, X)),
% 0.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(57,axiom,(![X: $i] : product(codomain(X), X, X)), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','product_on_codomain')).
% 0.19/0.40 tff(58,plain,
% 0.19/0.40 (![X: $i] : product(codomain(X), X, X)),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[57, 56])).
% 0.19/0.40 tff(59,plain,(
% 0.19/0.40 ![X: $i] : product(codomain(X), X, X)),
% 0.19/0.40 inference(skolemize,[status(sab)],[58])).
% 0.19/0.40 tff(60,plain,
% 0.19/0.40 (![X: $i] : product(codomain(X), X, X)),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[59, 55])).
% 0.19/0.40 tff(61,plain,
% 0.19/0.40 ((~![X: $i] : product(codomain(X), X, X)) | product(codomain(b), b, b)),
% 0.19/0.40 inference(quant_inst,[status(thm)],[])).
% 0.19/0.40 tff(62,plain,
% 0.19/0.40 (product(codomain(b), b, b)),
% 0.19/0.40 inference(unit_resolution,[status(thm)],[61, 60])).
% 0.19/0.40 tff(63,plain,
% 0.19/0.40 (defined(a, b) <=> defined(a, b)),
% 0.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(64,axiom,(defined(a, b)), file('/export/starexec/sandbox/benchmark/theBenchmark.p','ab_defined')).
% 0.19/0.40 tff(65,plain,
% 0.19/0.40 (defined(a, b)),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[64, 63])).
% 0.19/0.40 tff(66,plain,
% 0.19/0.40 (^[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.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(67,plain,
% 0.19/0.40 (![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.19/0.40 inference(quant_intro,[status(thm)],[66])).
% 0.19/0.40 tff(68,plain,
% 0.19/0.40 (![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.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(69,plain,
% 0.19/0.40 (^[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.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(70,plain,
% 0.19/0.40 (![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.19/0.40 inference(quant_intro,[status(thm)],[69])).
% 0.19/0.40 tff(71,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.19/0.40 tff(72,plain,
% 0.19/0.40 (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[71, 70])).
% 0.19/0.40 tff(73,plain,
% 0.19/0.40 (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[72, 68])).
% 0.19/0.40 tff(74,plain,(
% 0.19/0.40 ![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.19/0.40 inference(skolemize,[status(sab)],[73])).
% 0.19/0.40 tff(75,plain,
% 0.19/0.40 (![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[74, 67])).
% 0.19/0.40 tff(76,plain,
% 0.19/0.40 (((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(a, b)) | defined(a, codomain(b)) | (~product(codomain(b), b, b)))) <=> ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | (~defined(a, b)) | defined(a, codomain(b)) | (~product(codomain(b), b, b)))),
% 0.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(77,plain,
% 0.19/0.40 ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | ((~defined(a, b)) | defined(a, codomain(b)) | (~product(codomain(b), b, b)))),
% 0.19/0.40 inference(quant_inst,[status(thm)],[])).
% 0.19/0.40 tff(78,plain,
% 0.19/0.40 ((~![Z: $i, Y: $i, X: $i, Yz: $i] : ((~defined(X, Yz)) | defined(X, Y) | (~product(Y, Z, Yz)))) | (~defined(a, b)) | defined(a, codomain(b)) | (~product(codomain(b), b, b))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[77, 76])).
% 0.19/0.40 tff(79,plain,
% 0.19/0.40 (defined(a, codomain(b))),
% 0.19/0.40 inference(unit_resolution,[status(thm)],[78, 75, 65, 62])).
% 0.19/0.40 tff(80,plain,
% 0.19/0.40 (^[X: $i] : refl(identity_map(codomain(X)) <=> identity_map(codomain(X)))),
% 0.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(81,plain,
% 0.19/0.40 (![X: $i] : identity_map(codomain(X)) <=> ![X: $i] : identity_map(codomain(X))),
% 0.19/0.40 inference(quant_intro,[status(thm)],[80])).
% 0.19/0.40 tff(82,plain,
% 0.19/0.40 (![X: $i] : identity_map(codomain(X)) <=> ![X: $i] : identity_map(codomain(X))),
% 0.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(83,axiom,(![X: $i] : identity_map(codomain(X))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','codomain_is_an_identity_map')).
% 0.19/0.40 tff(84,plain,
% 0.19/0.40 (![X: $i] : identity_map(codomain(X))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[83, 82])).
% 0.19/0.40 tff(85,plain,(
% 0.19/0.40 ![X: $i] : identity_map(codomain(X))),
% 0.19/0.40 inference(skolemize,[status(sab)],[84])).
% 0.19/0.40 tff(86,plain,
% 0.19/0.40 (![X: $i] : identity_map(codomain(X))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[85, 81])).
% 0.19/0.40 tff(87,plain,
% 0.19/0.40 ((~![X: $i] : identity_map(codomain(X))) | identity_map(codomain(b))),
% 0.19/0.40 inference(quant_inst,[status(thm)],[])).
% 0.19/0.40 tff(88,plain,
% 0.19/0.40 (identity_map(codomain(b))),
% 0.19/0.40 inference(unit_resolution,[status(thm)],[87, 86])).
% 0.19/0.40 tff(89,plain,
% 0.19/0.40 (^[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.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(90,plain,
% 0.19/0.40 (![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.19/0.40 inference(quant_intro,[status(thm)],[89])).
% 0.19/0.40 tff(91,plain,
% 0.19/0.40 (![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.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(92,plain,
% 0.19/0.40 (^[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.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(93,plain,
% 0.19/0.40 (![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.19/0.40 inference(quant_intro,[status(thm)],[92])).
% 0.19/0.40 tff(94,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.19/0.40 tff(95,plain,
% 0.19/0.40 (![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[94, 93])).
% 0.19/0.40 tff(96,plain,
% 0.19/0.40 (![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[95, 91])).
% 0.19/0.40 tff(97,plain,(
% 0.19/0.40 ![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.19/0.40 inference(skolemize,[status(sab)],[96])).
% 0.19/0.40 tff(98,plain,
% 0.19/0.40 (![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[97, 90])).
% 0.19/0.40 tff(99,plain,
% 0.19/0.40 (((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | ((~defined(a, codomain(b))) | (~identity_map(codomain(b))) | product(a, codomain(b), a))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | (~defined(a, codomain(b))) | (~identity_map(codomain(b))) | product(a, codomain(b), a))),
% 0.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(100,plain,
% 0.19/0.40 ((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | ((~defined(a, codomain(b))) | (~identity_map(codomain(b))) | product(a, codomain(b), a))),
% 0.19/0.40 inference(quant_inst,[status(thm)],[])).
% 0.19/0.40 tff(101,plain,
% 0.19/0.40 ((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | (~defined(a, codomain(b))) | (~identity_map(codomain(b))) | product(a, codomain(b), a)),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[100, 99])).
% 0.19/0.40 tff(102,plain,
% 0.19/0.40 (product(a, codomain(b), a)),
% 0.19/0.40 inference(unit_resolution,[status(thm)],[101, 98, 88, 79])).
% 0.19/0.40 tff(103,plain,
% 0.19/0.40 (product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[102, 53])).
% 0.19/0.40 tff(104,plain,
% 0.19/0.40 (^[Xy: $i, Z: $i, Y: $i, X: $i] : refl((defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy))) <=> (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy))))),
% 0.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(105,plain,
% 0.19/0.40 (![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy))) <=> ![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))),
% 0.19/0.40 inference(quant_intro,[status(thm)],[104])).
% 0.19/0.40 tff(106,plain,
% 0.19/0.40 (![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy))) <=> ![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))),
% 0.19/0.40 inference(rewrite,[status(thm)],[])).
% 0.19/0.40 tff(107,plain,
% 0.19/0.40 (^[Xy: $i, Z: $i, Y: $i, X: $i] : trans(monotonicity(rewrite(((~product(X, Y, Xy)) | (~defined(Xy, Z))) <=> ((~defined(Xy, Z)) | (~product(X, Y, Xy)))), ((((~product(X, Y, Xy)) | (~defined(Xy, Z))) | defined(Y, Z)) <=> (((~defined(Xy, Z)) | (~product(X, Y, Xy))) | defined(Y, Z)))), rewrite((((~defined(Xy, Z)) | (~product(X, Y, Xy))) | defined(Y, Z)) <=> (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))), ((((~product(X, Y, Xy)) | (~defined(Xy, Z))) | defined(Y, Z)) <=> (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))))),
% 0.19/0.40 inference(bind,[status(th)],[])).
% 0.19/0.40 tff(108,plain,
% 0.19/0.40 (![Xy: $i, Z: $i, Y: $i, X: $i] : (((~product(X, Y, Xy)) | (~defined(Xy, Z))) | defined(Y, Z)) <=> ![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))),
% 0.19/0.40 inference(quant_intro,[status(thm)],[107])).
% 0.19/0.40 tff(109,axiom,(![Xy: $i, Z: $i, Y: $i, X: $i] : (((~product(X, Y, Xy)) | (~defined(Xy, Z))) | defined(Y, Z))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','associative_property2')).
% 0.19/0.40 tff(110,plain,
% 0.19/0.40 (![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[109, 108])).
% 0.19/0.40 tff(111,plain,
% 0.19/0.40 (![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))),
% 0.19/0.40 inference(modus_ponens,[status(thm)],[110, 106])).
% 0.19/0.41 tff(112,plain,(
% 0.19/0.41 ![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))),
% 0.19/0.41 inference(skolemize,[status(sab)],[111])).
% 0.19/0.41 tff(113,plain,
% 0.19/0.41 (![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))),
% 0.19/0.41 inference(modus_ponens,[status(thm)],[112, 105])).
% 0.19/0.41 tff(114,plain,
% 0.19/0.41 (((~![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))) | ((~product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))) | defined(codomain(b), domain(a)) | (~defined(compose(a, domain(a)), domain(a))))) <=> ((~![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))) | (~product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))) | defined(codomain(b), domain(a)) | (~defined(compose(a, domain(a)), domain(a))))),
% 0.19/0.41 inference(rewrite,[status(thm)],[])).
% 0.19/0.41 tff(115,plain,
% 0.19/0.41 ((defined(codomain(b), domain(a)) | (~defined(compose(a, domain(a)), domain(a))) | (~product(compose(a, domain(a)), codomain(b), compose(a, domain(a))))) <=> ((~product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))) | defined(codomain(b), domain(a)) | (~defined(compose(a, domain(a)), domain(a))))),
% 0.19/0.41 inference(rewrite,[status(thm)],[])).
% 0.19/0.41 tff(116,plain,
% 0.19/0.41 (((~![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))) | (defined(codomain(b), domain(a)) | (~defined(compose(a, domain(a)), domain(a))) | (~product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))))) <=> ((~![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))) | ((~product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))) | defined(codomain(b), domain(a)) | (~defined(compose(a, domain(a)), domain(a)))))),
% 0.19/0.41 inference(monotonicity,[status(thm)],[115])).
% 0.19/0.41 tff(117,plain,
% 0.19/0.41 (((~![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))) | (defined(codomain(b), domain(a)) | (~defined(compose(a, domain(a)), domain(a))) | (~product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))))) <=> ((~![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))) | (~product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))) | defined(codomain(b), domain(a)) | (~defined(compose(a, domain(a)), domain(a))))),
% 0.19/0.41 inference(transitivity,[status(thm)],[116, 114])).
% 0.19/0.41 tff(118,plain,
% 0.19/0.41 ((~![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))) | (defined(codomain(b), domain(a)) | (~defined(compose(a, domain(a)), domain(a))) | (~product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))))),
% 0.19/0.41 inference(quant_inst,[status(thm)],[])).
% 0.19/0.41 tff(119,plain,
% 0.19/0.41 ((~![Xy: $i, Z: $i, Y: $i, X: $i] : (defined(Y, Z) | (~defined(Xy, Z)) | (~product(X, Y, Xy)))) | (~product(compose(a, domain(a)), codomain(b), compose(a, domain(a)))) | defined(codomain(b), domain(a)) | (~defined(compose(a, domain(a)), domain(a)))),
% 0.19/0.41 inference(modus_ponens,[status(thm)],[118, 117])).
% 0.19/0.41 tff(120,plain,
% 0.19/0.41 ($false),
% 0.19/0.41 inference(unit_resolution,[status(thm)],[119, 113, 103, 51, 1])).
% 0.19/0.41 tff(121,plain,(defined(codomain(b), domain(a))), inference(lemma,lemma(discharge,[]))).
% 0.19/0.41 tff(122,plain,
% 0.19/0.41 (^[Y: $i, X: $i] : refl(((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X))) <=> ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X))))),
% 0.19/0.41 inference(bind,[status(th)],[])).
% 0.19/0.41 tff(123,plain,
% 0.19/0.41 (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X))) <=> ![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))),
% 0.19/0.41 inference(quant_intro,[status(thm)],[122])).
% 0.19/0.41 tff(124,plain,
% 0.19/0.41 (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X))) <=> ![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))),
% 0.19/0.41 inference(rewrite,[status(thm)],[])).
% 0.19/0.41 tff(125,plain,
% 0.19/0.41 (^[Y: $i, X: $i] : trans(monotonicity(rewrite(((~defined(X, Y)) | (~identity_map(X))) <=> ((~defined(X, Y)) | (~identity_map(X)))), ((((~defined(X, Y)) | (~identity_map(X))) | product(X, Y, Y)) <=> (((~defined(X, Y)) | (~identity_map(X))) | product(X, Y, Y)))), rewrite((((~defined(X, Y)) | (~identity_map(X))) | product(X, Y, Y)) <=> ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))), ((((~defined(X, Y)) | (~identity_map(X))) | product(X, Y, Y)) <=> ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))))),
% 0.19/0.41 inference(bind,[status(th)],[])).
% 0.19/0.41 tff(126,plain,
% 0.19/0.41 (![Y: $i, X: $i] : (((~defined(X, Y)) | (~identity_map(X))) | product(X, Y, Y)) <=> ![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))),
% 0.19/0.41 inference(quant_intro,[status(thm)],[125])).
% 0.19/0.41 tff(127,axiom,(![Y: $i, X: $i] : (((~defined(X, Y)) | (~identity_map(X))) | product(X, Y, Y))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','identity1')).
% 0.19/0.41 tff(128,plain,
% 0.19/0.41 (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))),
% 0.19/0.41 inference(modus_ponens,[status(thm)],[127, 126])).
% 0.19/0.41 tff(129,plain,
% 0.19/0.41 (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))),
% 0.19/0.41 inference(modus_ponens,[status(thm)],[128, 124])).
% 0.19/0.41 tff(130,plain,(
% 0.19/0.41 ![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))),
% 0.19/0.41 inference(skolemize,[status(sab)],[129])).
% 0.19/0.41 tff(131,plain,
% 0.19/0.41 (![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))),
% 0.19/0.41 inference(modus_ponens,[status(thm)],[130, 123])).
% 0.19/0.41 tff(132,plain,
% 0.19/0.41 (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))) | ((~identity_map(codomain(b))) | product(codomain(b), domain(a), domain(a)) | (~defined(codomain(b), domain(a))))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))) | (~identity_map(codomain(b))) | product(codomain(b), domain(a), domain(a)) | (~defined(codomain(b), domain(a))))),
% 0.19/0.41 inference(rewrite,[status(thm)],[])).
% 0.19/0.41 tff(133,plain,
% 0.19/0.41 (((~defined(codomain(b), domain(a))) | product(codomain(b), domain(a), domain(a)) | (~identity_map(codomain(b)))) <=> ((~identity_map(codomain(b))) | product(codomain(b), domain(a), domain(a)) | (~defined(codomain(b), domain(a))))),
% 0.19/0.41 inference(rewrite,[status(thm)],[])).
% 0.19/0.41 tff(134,plain,
% 0.19/0.41 (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))) | ((~defined(codomain(b), domain(a))) | product(codomain(b), domain(a), domain(a)) | (~identity_map(codomain(b))))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))) | ((~identity_map(codomain(b))) | product(codomain(b), domain(a), domain(a)) | (~defined(codomain(b), domain(a)))))),
% 0.19/0.41 inference(monotonicity,[status(thm)],[133])).
% 0.19/0.41 tff(135,plain,
% 0.19/0.41 (((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))) | ((~defined(codomain(b), domain(a))) | product(codomain(b), domain(a), domain(a)) | (~identity_map(codomain(b))))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))) | (~identity_map(codomain(b))) | product(codomain(b), domain(a), domain(a)) | (~defined(codomain(b), domain(a))))),
% 0.19/0.41 inference(transitivity,[status(thm)],[134, 132])).
% 0.19/0.41 tff(136,plain,
% 0.19/0.41 ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))) | ((~defined(codomain(b), domain(a))) | product(codomain(b), domain(a), domain(a)) | (~identity_map(codomain(b))))),
% 0.19/0.41 inference(quant_inst,[status(thm)],[])).
% 0.19/0.41 tff(137,plain,
% 0.19/0.41 ((~![Y: $i, X: $i] : ((~defined(X, Y)) | product(X, Y, Y) | (~identity_map(X)))) | (~identity_map(codomain(b))) | product(codomain(b), domain(a), domain(a)) | (~defined(codomain(b), domain(a)))),
% 0.19/0.41 inference(modus_ponens,[status(thm)],[136, 135])).
% 0.19/0.41 tff(138,plain,
% 0.19/0.41 (product(codomain(b), domain(a), domain(a))),
% 0.19/0.41 inference(unit_resolution,[status(thm)],[137, 131, 88, 121])).
% 0.19/0.41 tff(139,plain,
% 0.19/0.41 (^[X: $i] : refl(identity_map(domain(X)) <=> identity_map(domain(X)))),
% 0.19/0.41 inference(bind,[status(th)],[])).
% 0.19/0.41 tff(140,plain,
% 0.19/0.41 (![X: $i] : identity_map(domain(X)) <=> ![X: $i] : identity_map(domain(X))),
% 0.19/0.41 inference(quant_intro,[status(thm)],[139])).
% 0.19/0.41 tff(141,plain,
% 0.19/0.41 (![X: $i] : identity_map(domain(X)) <=> ![X: $i] : identity_map(domain(X))),
% 0.19/0.41 inference(rewrite,[status(thm)],[])).
% 0.19/0.41 tff(142,axiom,(![X: $i] : identity_map(domain(X))), file('/export/starexec/sandbox/benchmark/Axioms/CAT001-0.ax','domain_is_an_identity_map')).
% 0.19/0.41 tff(143,plain,
% 0.19/0.41 (![X: $i] : identity_map(domain(X))),
% 0.19/0.41 inference(modus_ponens,[status(thm)],[142, 141])).
% 0.19/0.41 tff(144,plain,(
% 0.19/0.41 ![X: $i] : identity_map(domain(X))),
% 0.19/0.41 inference(skolemize,[status(sab)],[143])).
% 0.19/0.41 tff(145,plain,
% 0.19/0.41 (![X: $i] : identity_map(domain(X))),
% 0.19/0.41 inference(modus_ponens,[status(thm)],[144, 140])).
% 0.19/0.41 tff(146,plain,
% 0.19/0.41 ((~![X: $i] : identity_map(domain(X))) | identity_map(domain(a))),
% 0.19/0.41 inference(quant_inst,[status(thm)],[])).
% 0.19/0.41 tff(147,plain,
% 0.19/0.41 (identity_map(domain(a))),
% 0.19/0.41 inference(unit_resolution,[status(thm)],[146, 145])).
% 0.19/0.41 tff(148,plain,
% 0.19/0.41 (((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | ((~defined(codomain(b), domain(a))) | (~identity_map(domain(a))) | product(codomain(b), domain(a), codomain(b)))) <=> ((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | (~defined(codomain(b), domain(a))) | (~identity_map(domain(a))) | product(codomain(b), domain(a), codomain(b)))),
% 0.19/0.41 inference(rewrite,[status(thm)],[])).
% 0.19/0.41 tff(149,plain,
% 0.19/0.41 ((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | ((~defined(codomain(b), domain(a))) | (~identity_map(domain(a))) | product(codomain(b), domain(a), codomain(b)))),
% 0.19/0.41 inference(quant_inst,[status(thm)],[])).
% 0.19/0.41 tff(150,plain,
% 0.19/0.41 ((~![Y: $i, X: $i] : ((~defined(X, Y)) | (~identity_map(Y)) | product(X, Y, X))) | (~defined(codomain(b), domain(a))) | (~identity_map(domain(a))) | product(codomain(b), domain(a), codomain(b))),
% 0.19/0.41 inference(modus_ponens,[status(thm)],[149, 148])).
% 0.19/0.41 tff(151,plain,
% 0.19/0.41 (product(codomain(b), domain(a), codomain(b))),
% 0.19/0.41 inference(unit_resolution,[status(thm)],[150, 98, 147, 121])).
% 0.19/0.41 tff(152,plain,
% 0.19/0.41 ((~(domain(a) = codomain(b))) <=> (~(domain(a) = codomain(b)))),
% 0.19/0.41 inference(rewrite,[status(thm)],[])).
% 0.19/0.41 tff(153,axiom,(~(domain(a) = codomain(b))), file('/export/starexec/sandbox/benchmark/theBenchmark.p','prove_domain_of_a_equals_codomain_of_b')).
% 0.19/0.41 tff(154,plain,
% 0.19/0.41 (~(domain(a) = codomain(b))),
% 0.19/0.41 inference(modus_ponens,[status(thm)],[153, 152])).
% 0.19/0.41 tff(155,plain,
% 0.19/0.41 (((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((domain(a) = codomain(b)) | (~product(codomain(b), domain(a), domain(a))) | (~product(codomain(b), domain(a), codomain(b))))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (domain(a) = codomain(b)) | (~product(codomain(b), domain(a), domain(a))) | (~product(codomain(b), domain(a), codomain(b))))),
% 0.19/0.41 inference(rewrite,[status(thm)],[])).
% 0.19/0.41 tff(156,plain,
% 0.19/0.41 (((~product(codomain(b), domain(a), domain(a))) | (~product(codomain(b), domain(a), codomain(b))) | (domain(a) = codomain(b))) <=> ((domain(a) = codomain(b)) | (~product(codomain(b), domain(a), domain(a))) | (~product(codomain(b), domain(a), codomain(b))))),
% 0.19/0.41 inference(rewrite,[status(thm)],[])).
% 0.19/0.41 tff(157,plain,
% 0.19/0.41 (((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(codomain(b), domain(a), domain(a))) | (~product(codomain(b), domain(a), codomain(b))) | (domain(a) = codomain(b)))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((domain(a) = codomain(b)) | (~product(codomain(b), domain(a), domain(a))) | (~product(codomain(b), domain(a), codomain(b)))))),
% 0.19/0.41 inference(monotonicity,[status(thm)],[156])).
% 0.19/0.41 tff(158,plain,
% 0.19/0.41 (((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(codomain(b), domain(a), domain(a))) | (~product(codomain(b), domain(a), codomain(b))) | (domain(a) = codomain(b)))) <=> ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (domain(a) = codomain(b)) | (~product(codomain(b), domain(a), domain(a))) | (~product(codomain(b), domain(a), codomain(b))))),
% 0.19/0.42 inference(transitivity,[status(thm)],[157, 155])).
% 0.19/0.42 tff(159,plain,
% 0.19/0.42 ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | ((~product(codomain(b), domain(a), domain(a))) | (~product(codomain(b), domain(a), codomain(b))) | (domain(a) = codomain(b)))),
% 0.19/0.42 inference(quant_inst,[status(thm)],[])).
% 0.19/0.42 tff(160,plain,
% 0.19/0.42 ((~![W: $i, Z: $i, Y: $i, X: $i] : ((~product(X, Y, Z)) | (~product(X, Y, W)) | (Z = W))) | (domain(a) = codomain(b)) | (~product(codomain(b), domain(a), domain(a))) | (~product(codomain(b), domain(a), codomain(b)))),
% 0.19/0.42 inference(modus_ponens,[status(thm)],[159, 158])).
% 0.19/0.42 tff(161,plain,
% 0.19/0.42 ($false),
% 0.19/0.42 inference(unit_resolution,[status(thm)],[160, 40, 154, 151, 138])).
% 0.19/0.42 % SZS output end Proof
% 0.19/0.42 % E exiting
%------------------------------------------------------------------------------