%------------------------------------------------------------------------------
% File : Z3---4.15.1
% Problem : CAT009-3 : TPTP v9.0.0. Released v1.0.0.
% Transfm : none
% Format : tptp
% Command : run_E %s %d THM
% Computer : n001.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:21 AM UTC 2025
% Result : Unsatisfiable 0.12s 0.38s
% Output : Proof 0.12s
% Verified :
% SZS Type : Refutation
% Derivation depth : 18
% Number of leaves : 37
% Syntax : Number of formulae : 109 ( 40 unt; 0 typ; 0 def)
% Number of atoms : 278 ( 105 equ)
% Maximal formula atoms : 8 ( 2 avg)
% Number of connectives : 291 ( 129 ~; 119 |; 0 &)
% ( 43 <=>; 0 =>; 0 <=; 0 <~>)
% Maximal formula depth : 8 ( 4 avg)
% Maximal term depth : 4 ( 2 avg)
% Number of FOOLs : 7 ( 7 fml; 0 var)
% Number of types : 2 ( 0 usr)
% Number of type conns : 0 ( 0 >; 0 *; 0 +; 0 <<)
% Number of predicates : 5 ( 3 usr; 1 prp; 0-2 aty)
% Number of functors : 5 ( 5 usr; 2 con; 0-2 aty)
% Number of variables : 142 ( 130 !; 0 ?; 142 :)
% Comments :
%------------------------------------------------------------------------------
tff(codomain_type,type,
codomain: $i > $i ).
tff(domain_type,type,
domain: $i > $i ).
tff(b_type,type,
b: $i ).
tff(compose_type,type,
compose: ( $i * $i ) > $i ).
tff(a_type,type,
a: $i ).
tff(there_exists_type,type,
there_exists: $i > $o ).
tff(1,plain,
( ( codomain(domain(compose(a,b))) = domain(b) )
<=> ( domain(b) = codomain(domain(compose(a,b))) ) ),
inference(commutativity,[status(thm)],[]) ).
tff(2,plain,
^ [X: $i] :
refl(( ( compose(X,domain(X)) = X )
<=> ( compose(X,domain(X)) = X ) )),
inference(bind,[status(th)],[]) ).
tff(3,plain,
( ! [X: $i] : ( compose(X,domain(X)) = X )
<=> ! [X: $i] : ( compose(X,domain(X)) = X ) ),
inference(quant_intro,[status(thm)],[2]) ).
tff(4,plain,
( ! [X: $i] : ( compose(X,domain(X)) = X )
<=> ! [X: $i] : ( compose(X,domain(X)) = X ) ),
inference(rewrite,[status(thm)],[]) ).
tff(5,axiom,
! [X: $i] : ( compose(X,domain(X)) = X ),
file('/export/starexec/sandbox2/benchmark/Axioms/CAT003-0.ax',compose_domain) ).
tff(6,plain,
! [X: $i] : ( compose(X,domain(X)) = X ),
inference(modus_ponens,[status(thm)],[5,4]) ).
tff(7,plain,
! [X: $i] : ( compose(X,domain(X)) = X ),
inference(skolemize,[status(sab)],[6]) ).
tff(8,plain,
! [X: $i] : ( compose(X,domain(X)) = X ),
inference(modus_ponens,[status(thm)],[7,3]) ).
tff(9,plain,
( ~ ! [X: $i] : ( compose(X,domain(X)) = X )
| ( compose(b,domain(b)) = b ) ),
inference(quant_inst,[status(thm)],[]) ).
tff(10,plain,
compose(b,domain(b)) = b,
inference(unit_resolution,[status(thm)],[9,8]) ).
tff(11,plain,
( there_exists(compose(b,domain(b)))
<=> there_exists(b) ),
inference(monotonicity,[status(thm)],[10]) ).
tff(12,plain,
( there_exists(b)
<=> there_exists(compose(b,domain(b))) ),
inference(symmetry,[status(thm)],[11]) ).
tff(13,plain,
( there_exists(compose(a,b))
<=> there_exists(compose(a,b)) ),
inference(rewrite,[status(thm)],[]) ).
tff(14,axiom,
there_exists(compose(a,b)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',ab_exists) ).
tff(15,plain,
there_exists(compose(a,b)),
inference(modus_ponens,[status(thm)],[14,13]) ).
tff(16,plain,
^ [Y: $i,X: $i] :
refl(( ( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
<=> ( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) ) )),
inference(bind,[status(th)],[]) ).
tff(17,plain,
( ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
<=> ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) ) ),
inference(quant_intro,[status(thm)],[16]) ).
tff(18,plain,
( ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
<=> ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(19,axiom,
! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) ),
file('/export/starexec/sandbox2/benchmark/Axioms/CAT003-0.ax',domain_codomain_composition1) ).
tff(20,plain,
! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) ),
inference(modus_ponens,[status(thm)],[19,18]) ).
tff(21,plain,
! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) ),
inference(skolemize,[status(sab)],[20]) ).
tff(22,plain,
! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) ),
inference(modus_ponens,[status(thm)],[21,17]) ).
tff(23,plain,
( ( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(a,b))
| ( domain(a) = codomain(b) ) )
<=> ( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(a,b))
| ( domain(a) = codomain(b) ) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(24,plain,
( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(a,b))
| ( domain(a) = codomain(b) ) ),
inference(quant_inst,[status(thm)],[]) ).
tff(25,plain,
( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(a,b))
| ( domain(a) = codomain(b) ) ),
inference(modus_ponens,[status(thm)],[24,23]) ).
tff(26,plain,
domain(a) = codomain(b),
inference(unit_resolution,[status(thm)],[25,22,15]) ).
tff(27,plain,
codomain(b) = domain(a),
inference(symmetry,[status(thm)],[26]) ).
tff(28,plain,
( there_exists(codomain(b))
<=> there_exists(domain(a)) ),
inference(monotonicity,[status(thm)],[27]) ).
tff(29,plain,
( there_exists(domain(a))
<=> there_exists(codomain(b)) ),
inference(symmetry,[status(thm)],[28]) ).
tff(30,plain,
^ [Y: $i,X: $i] :
refl(( ( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) )
<=> ( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) ) )),
inference(bind,[status(th)],[]) ).
tff(31,plain,
( ! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) )
<=> ! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) ) ),
inference(quant_intro,[status(thm)],[30]) ).
tff(32,plain,
( ! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) )
<=> ! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(33,plain,
^ [Y: $i,X: $i] :
rewrite(( ( ~ there_exists(compose(X,Y))
| there_exists(domain(X)) )
<=> ( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) ) )),
inference(bind,[status(th)],[]) ).
tff(34,plain,
( ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| there_exists(domain(X)) )
<=> ! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) ) ),
inference(quant_intro,[status(thm)],[33]) ).
tff(35,axiom,
! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| there_exists(domain(X)) ),
file('/export/starexec/sandbox2/benchmark/Axioms/CAT003-0.ax',composition_implies_domain) ).
tff(36,plain,
! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) ),
inference(modus_ponens,[status(thm)],[35,34]) ).
tff(37,plain,
! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) ),
inference(modus_ponens,[status(thm)],[36,32]) ).
tff(38,plain,
! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) ),
inference(skolemize,[status(sab)],[37]) ).
tff(39,plain,
! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) ),
inference(modus_ponens,[status(thm)],[38,31]) ).
tff(40,plain,
( ( ~ ! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) )
| there_exists(domain(a))
| ~ there_exists(compose(a,b)) )
<=> ( ~ ! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) )
| there_exists(domain(a))
| ~ there_exists(compose(a,b)) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(41,plain,
( ~ ! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) )
| there_exists(domain(a))
| ~ there_exists(compose(a,b)) ),
inference(quant_inst,[status(thm)],[]) ).
tff(42,plain,
( ~ ! [Y: $i,X: $i] :
( there_exists(domain(X))
| ~ there_exists(compose(X,Y)) )
| there_exists(domain(a))
| ~ there_exists(compose(a,b)) ),
inference(modus_ponens,[status(thm)],[41,40]) ).
tff(43,plain,
there_exists(domain(a)),
inference(unit_resolution,[status(thm)],[42,39,15]) ).
tff(44,plain,
there_exists(codomain(b)),
inference(modus_ponens,[status(thm)],[43,29]) ).
tff(45,plain,
^ [X: $i] :
refl(( ( there_exists(X)
| ~ there_exists(codomain(X)) )
<=> ( there_exists(X)
| ~ there_exists(codomain(X)) ) )),
inference(bind,[status(th)],[]) ).
tff(46,plain,
( ! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) )
<=> ! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) ) ),
inference(quant_intro,[status(thm)],[45]) ).
tff(47,plain,
( ! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) )
<=> ! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(48,plain,
^ [X: $i] :
rewrite(( ( ~ there_exists(codomain(X))
| there_exists(X) )
<=> ( there_exists(X)
| ~ there_exists(codomain(X)) ) )),
inference(bind,[status(th)],[]) ).
tff(49,plain,
( ! [X: $i] :
( ~ there_exists(codomain(X))
| there_exists(X) )
<=> ! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) ) ),
inference(quant_intro,[status(thm)],[48]) ).
tff(50,axiom,
! [X: $i] :
( ~ there_exists(codomain(X))
| there_exists(X) ),
file('/export/starexec/sandbox2/benchmark/Axioms/CAT003-0.ax',codomain_has_elements) ).
tff(51,plain,
! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) ),
inference(modus_ponens,[status(thm)],[50,49]) ).
tff(52,plain,
! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) ),
inference(modus_ponens,[status(thm)],[51,47]) ).
tff(53,plain,
! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) ),
inference(skolemize,[status(sab)],[52]) ).
tff(54,plain,
! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) ),
inference(modus_ponens,[status(thm)],[53,46]) ).
tff(55,plain,
( ( ~ ! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) )
| there_exists(b)
| ~ there_exists(codomain(b)) )
<=> ( ~ ! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) )
| there_exists(b)
| ~ there_exists(codomain(b)) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(56,plain,
( ~ ! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) )
| there_exists(b)
| ~ there_exists(codomain(b)) ),
inference(quant_inst,[status(thm)],[]) ).
tff(57,plain,
( ~ ! [X: $i] :
( there_exists(X)
| ~ there_exists(codomain(X)) )
| there_exists(b)
| ~ there_exists(codomain(b)) ),
inference(modus_ponens,[status(thm)],[56,55]) ).
tff(58,plain,
( there_exists(b)
| ~ there_exists(codomain(b)) ),
inference(unit_resolution,[status(thm)],[57,54]) ).
tff(59,plain,
there_exists(b),
inference(unit_resolution,[status(thm)],[58,44]) ).
tff(60,plain,
there_exists(compose(b,domain(b))),
inference(modus_ponens,[status(thm)],[59,12]) ).
tff(61,plain,
( ( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(b,domain(b)))
| ( domain(b) = codomain(domain(b)) ) )
<=> ( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(b,domain(b)))
| ( domain(b) = codomain(domain(b)) ) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(62,plain,
( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(b,domain(b)))
| ( domain(b) = codomain(domain(b)) ) ),
inference(quant_inst,[status(thm)],[]) ).
tff(63,plain,
( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(b,domain(b)))
| ( domain(b) = codomain(domain(b)) ) ),
inference(modus_ponens,[status(thm)],[62,61]) ).
tff(64,plain,
( ~ there_exists(compose(b,domain(b)))
| ( domain(b) = codomain(domain(b)) ) ),
inference(unit_resolution,[status(thm)],[63,22]) ).
tff(65,plain,
domain(b) = codomain(domain(b)),
inference(unit_resolution,[status(thm)],[64,60]) ).
tff(66,plain,
codomain(domain(b)) = domain(b),
inference(symmetry,[status(thm)],[65]) ).
tff(67,plain,
( ~ ! [X: $i] : ( compose(X,domain(X)) = X )
| ( compose(compose(a,b),domain(compose(a,b))) = compose(a,b) ) ),
inference(quant_inst,[status(thm)],[]) ).
tff(68,plain,
compose(compose(a,b),domain(compose(a,b))) = compose(a,b),
inference(unit_resolution,[status(thm)],[67,8]) ).
tff(69,plain,
( there_exists(compose(compose(a,b),domain(compose(a,b))))
<=> there_exists(compose(a,b)) ),
inference(monotonicity,[status(thm)],[68]) ).
tff(70,plain,
( there_exists(compose(a,b))
<=> there_exists(compose(compose(a,b),domain(compose(a,b)))) ),
inference(symmetry,[status(thm)],[69]) ).
tff(71,plain,
there_exists(compose(compose(a,b),domain(compose(a,b)))),
inference(modus_ponens,[status(thm)],[15,70]) ).
tff(72,plain,
( ( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(compose(a,b),domain(compose(a,b))))
| ( domain(compose(a,b)) = codomain(domain(compose(a,b))) ) )
<=> ( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(compose(a,b),domain(compose(a,b))))
| ( domain(compose(a,b)) = codomain(domain(compose(a,b))) ) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(73,plain,
( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(compose(a,b),domain(compose(a,b))))
| ( domain(compose(a,b)) = codomain(domain(compose(a,b))) ) ),
inference(quant_inst,[status(thm)],[]) ).
tff(74,plain,
( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(compose(a,b),domain(compose(a,b))))
| ( domain(compose(a,b)) = codomain(domain(compose(a,b))) ) ),
inference(modus_ponens,[status(thm)],[73,72]) ).
tff(75,plain,
( ~ there_exists(compose(compose(a,b),domain(compose(a,b))))
| ( domain(compose(a,b)) = codomain(domain(compose(a,b))) ) ),
inference(unit_resolution,[status(thm)],[74,22]) ).
tff(76,plain,
domain(compose(a,b)) = codomain(domain(compose(a,b))),
inference(unit_resolution,[status(thm)],[75,71]) ).
tff(77,plain,
( ( domain(compose(a,b)) = codomain(domain(b)) )
<=> ( codomain(domain(compose(a,b))) = domain(b) ) ),
inference(monotonicity,[status(thm)],[76,66]) ).
tff(78,plain,
( ( domain(compose(a,b)) = codomain(domain(b)) )
<=> ( domain(b) = codomain(domain(compose(a,b))) ) ),
inference(transitivity,[status(thm)],[77,1]) ).
tff(79,plain,
( ( domain(b) = codomain(domain(compose(a,b))) )
<=> ( domain(compose(a,b)) = codomain(domain(b)) ) ),
inference(symmetry,[status(thm)],[78]) ).
tff(80,plain,
( ( domain(b) != codomain(domain(compose(a,b))) )
<=> ( domain(compose(a,b)) != codomain(domain(b)) ) ),
inference(monotonicity,[status(thm)],[79]) ).
tff(81,plain,
( ( domain(compose(a,b)) = domain(b) )
<=> ( codomain(domain(compose(a,b))) = domain(b) ) ),
inference(monotonicity,[status(thm)],[76]) ).
tff(82,plain,
( ( domain(compose(a,b)) = domain(b) )
<=> ( domain(b) = codomain(domain(compose(a,b))) ) ),
inference(transitivity,[status(thm)],[81,1]) ).
tff(83,plain,
( ( domain(compose(a,b)) != domain(b) )
<=> ( domain(b) != codomain(domain(compose(a,b))) ) ),
inference(monotonicity,[status(thm)],[82]) ).
tff(84,plain,
( ( domain(compose(a,b)) != domain(b) )
<=> ( domain(compose(a,b)) != domain(b) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(85,axiom,
domain(compose(a,b)) != domain(b),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',prove_domain_of_ab_equals_domain_of_b) ).
tff(86,plain,
domain(compose(a,b)) != domain(b),
inference(modus_ponens,[status(thm)],[85,84]) ).
tff(87,plain,
domain(b) != codomain(domain(compose(a,b))),
inference(modus_ponens,[status(thm)],[86,83]) ).
tff(88,plain,
domain(compose(a,b)) != codomain(domain(b)),
inference(modus_ponens,[status(thm)],[87,80]) ).
tff(89,plain,
compose(a,compose(b,domain(b))) = compose(a,b),
inference(monotonicity,[status(thm)],[10]) ).
tff(90,plain,
^ [Z: $i,Y: $i,X: $i] :
refl(( ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) )
<=> ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) ) )),
inference(bind,[status(th)],[]) ).
tff(91,plain,
( ! [Z: $i,Y: $i,X: $i] : ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) )
<=> ! [Z: $i,Y: $i,X: $i] : ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) ) ),
inference(quant_intro,[status(thm)],[90]) ).
tff(92,plain,
( ! [Z: $i,Y: $i,X: $i] : ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) )
<=> ! [Z: $i,Y: $i,X: $i] : ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(93,axiom,
! [Z: $i,Y: $i,X: $i] : ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) ),
file('/export/starexec/sandbox2/benchmark/Axioms/CAT003-0.ax',associativity_of_compose) ).
tff(94,plain,
! [Z: $i,Y: $i,X: $i] : ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) ),
inference(modus_ponens,[status(thm)],[93,92]) ).
tff(95,plain,
! [Z: $i,Y: $i,X: $i] : ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) ),
inference(skolemize,[status(sab)],[94]) ).
tff(96,plain,
! [Z: $i,Y: $i,X: $i] : ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) ),
inference(modus_ponens,[status(thm)],[95,91]) ).
tff(97,plain,
( ~ ! [Z: $i,Y: $i,X: $i] : ( compose(X,compose(Y,Z)) = compose(compose(X,Y),Z) )
| ( compose(a,compose(b,domain(b))) = compose(compose(a,b),domain(b)) ) ),
inference(quant_inst,[status(thm)],[]) ).
tff(98,plain,
compose(a,compose(b,domain(b))) = compose(compose(a,b),domain(b)),
inference(unit_resolution,[status(thm)],[97,96]) ).
tff(99,plain,
compose(compose(a,b),domain(b)) = compose(a,compose(b,domain(b))),
inference(symmetry,[status(thm)],[98]) ).
tff(100,plain,
compose(compose(a,b),domain(b)) = compose(a,b),
inference(transitivity,[status(thm)],[99,89]) ).
tff(101,plain,
( there_exists(compose(compose(a,b),domain(b)))
<=> there_exists(compose(a,b)) ),
inference(monotonicity,[status(thm)],[100]) ).
tff(102,plain,
( there_exists(compose(a,b))
<=> there_exists(compose(compose(a,b),domain(b))) ),
inference(symmetry,[status(thm)],[101]) ).
tff(103,plain,
there_exists(compose(compose(a,b),domain(b))),
inference(modus_ponens,[status(thm)],[15,102]) ).
tff(104,plain,
( ( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(compose(a,b),domain(b)))
| ( domain(compose(a,b)) = codomain(domain(b)) ) )
<=> ( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(compose(a,b),domain(b)))
| ( domain(compose(a,b)) = codomain(domain(b)) ) ) ),
inference(rewrite,[status(thm)],[]) ).
tff(105,plain,
( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(compose(a,b),domain(b)))
| ( domain(compose(a,b)) = codomain(domain(b)) ) ),
inference(quant_inst,[status(thm)],[]) ).
tff(106,plain,
( ~ ! [Y: $i,X: $i] :
( ~ there_exists(compose(X,Y))
| ( domain(X) = codomain(Y) ) )
| ~ there_exists(compose(compose(a,b),domain(b)))
| ( domain(compose(a,b)) = codomain(domain(b)) ) ),
inference(modus_ponens,[status(thm)],[105,104]) ).
tff(107,plain,
( ~ there_exists(compose(compose(a,b),domain(b)))
| ( domain(compose(a,b)) = codomain(domain(b)) ) ),
inference(unit_resolution,[status(thm)],[106,22]) ).
tff(108,plain,
domain(compose(a,b)) = codomain(domain(b)),
inference(unit_resolution,[status(thm)],[107,103]) ).
tff(109,plain,
$false,
inference(unit_resolution,[status(thm)],[108,88]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.11/0.12 % Problem : CAT009-3 : TPTP v9.0.0. Released v1.0.0.
% 0.11/0.12 % Command : run_E %s %d THM
% 0.12/0.33 % Computer : n001.cluster.edu
% 0.12/0.33 % Model : x86_64 x86_64
% 0.12/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.33 % Memory : 8042.1875MB
% 0.12/0.33 % OS : Linux 3.10.0-693.el7.x86_64
% 0.12/0.33 % CPULimit : 300
% 0.12/0.33 % WCLimit : 300
% 0.12/0.33 % DateTime : Thu Jun 19 11:56:03 EDT 2025
% 0.12/0.33 % CPUTime :
% 0.12/0.38 % SZS status Unsatisfiable
% 0.12/0.38 % SZS output start Proof
% See solution above
% 0.12/0.40 % E exiting
%------------------------------------------------------------------------------