%------------------------------------------------------------------------------
% File : Drodi---4.1.1
% Problem : PUZ021-1 : TPTP v9.3.1. Released v1.0.0.
% Transfm : none
% Format : tptp:raw
% Command : drodi -timeout(300) /export/starexec/sandbox2/benchmark/theBenchmark.p
% Computer : n004.cluster.edu
% Model : x86_64 x86_64
% CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory : 8046.5625MB
% OS : Linux 6.8.0-71-generic
% CPULimit : 300s
% WCLimit : 300s
% DateTime : Thu Sep 24 01:59:53 PM UTC 2026
% Result : Unsatisfiable 0.12s 0.55s
% Output : CNFRefutation 1.18s
% Verified :
% SZS Type : Refutation
% Derivation depth : 13
% Number of leaves : 41
% Syntax : Number of formulae : 193 ( 3 unt; 29 def)
% Number of atoms : 517 ( 0 equ)
% Maximal formula atoms : 4 ( 2 avg)
% Number of connectives : 522 ( 198 ~; 295 |; 0 &)
% ( 29 <=>; 0 =>; 0 <=; 0 <~>)
% Maximal formula depth : 9 ( 5 avg)
% Maximal term depth : 3 ( 1 avg)
% Number of predicates : 32 ( 31 usr; 30 prp; 0-2 aty)
% Number of functors : 6 ( 6 usr; 1 con; 0-2 aty)
% Number of variables : 232 ( 232 !; 0 ?)
% Comments :
%------------------------------------------------------------------------------
fof(f2,axiom,
! [X,Y] :
( a_truth(knave(X),Y)
| a_truth(knight(X),Y) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f3,axiom,
! [X,Y] :
( ~ a_truth(poor(X),Y)
| ~ a_truth(rich(X),Y) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f4,axiom,
! [X,Y] :
( a_truth(poor(X),Y)
| a_truth(rich(X),Y) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f5,axiom,
! [X,Z,Y] :
( a_truth(Y,Z)
| ~ says(X,Y)
| ~ a_truth(knight(X),Z) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f6,axiom,
! [X,Z,Y] :
( ~ a_truth(Y,Z)
| says(X,Y)
| ~ a_truth(knight(X),Z) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f7,axiom,
! [X,Z,Y] :
( ~ a_truth(Y,Z)
| ~ says(X,Y)
| ~ a_truth(knave(X),Z) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f8,axiom,
! [X,Z,Y] :
( a_truth(Y,Z)
| says(X,Y)
| ~ a_truth(knave(X),Z) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f9,axiom,
! [X,Y,Z] :
( a_truth(X,Z)
| ~ a_truth(and(X,Y),Z) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f10,axiom,
! [X,Y,Z] :
( a_truth(Y,Z)
| ~ a_truth(and(X,Y),Z) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f11,axiom,
! [X,Y,Z] :
( ~ a_truth(Y,Z)
| ~ a_truth(X,Z)
| a_truth(and(X,Y),Z) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f12,negated_conjecture,
! [X] :
( ~ a_truth(and(knave(me),rich(me)),X)
| ~ says(me,X) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f13,negated_conjecture,
! [X] :
( a_truth(and(knave(me),rich(me)),X)
| says(me,X) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p') ).
fof(f15,plain,
! [X0,X1] :
( a_truth(knave(X0),X1)
| a_truth(knight(X0),X1) ),
inference(cnf_transformation,[status(thm)],[f2]) ).
fof(f16,plain,
! [X0,X1] :
( ~ a_truth(poor(X0),X1)
| ~ a_truth(rich(X0),X1) ),
inference(cnf_transformation,[status(thm)],[f3]) ).
fof(f17,plain,
! [X0,X1] :
( a_truth(poor(X0),X1)
| a_truth(rich(X0),X1) ),
inference(cnf_transformation,[status(thm)],[f4]) ).
fof(f18,plain,
! [Z,Y] :
( a_truth(Y,Z)
| ! [X] :
( ~ says(X,Y)
| ~ a_truth(knight(X),Z) ) ),
inference(miniscoping,[status(thm)],[f5]) ).
fof(f19,plain,
! [X0,X1,X2] :
( a_truth(X2,X1)
| ~ says(X0,X2)
| ~ a_truth(knight(X0),X1) ),
inference(cnf_transformation,[status(thm)],[f18]) ).
fof(f20,plain,
! [Z,Y] :
( ~ a_truth(Y,Z)
| ! [X] :
( says(X,Y)
| ~ a_truth(knight(X),Z) ) ),
inference(miniscoping,[status(thm)],[f6]) ).
fof(f21,plain,
! [X0,X1,X2] :
( ~ a_truth(X2,X1)
| says(X0,X2)
| ~ a_truth(knight(X0),X1) ),
inference(cnf_transformation,[status(thm)],[f20]) ).
fof(f22,plain,
! [Z,Y] :
( ~ a_truth(Y,Z)
| ! [X] :
( ~ says(X,Y)
| ~ a_truth(knave(X),Z) ) ),
inference(miniscoping,[status(thm)],[f7]) ).
fof(f23,plain,
! [X0,X1,X2] :
( ~ a_truth(X2,X1)
| ~ says(X0,X2)
| ~ a_truth(knave(X0),X1) ),
inference(cnf_transformation,[status(thm)],[f22]) ).
fof(f24,plain,
! [Z,Y] :
( a_truth(Y,Z)
| ! [X] :
( says(X,Y)
| ~ a_truth(knave(X),Z) ) ),
inference(miniscoping,[status(thm)],[f8]) ).
fof(f25,plain,
! [X0,X1,X2] :
( a_truth(X2,X1)
| says(X0,X2)
| ~ a_truth(knave(X0),X1) ),
inference(cnf_transformation,[status(thm)],[f24]) ).
fof(f26,plain,
! [X,Z] :
( a_truth(X,Z)
| ! [Y] : ~ a_truth(and(X,Y),Z) ),
inference(miniscoping,[status(thm)],[f9]) ).
fof(f27,plain,
! [X0,X1,X2] :
( a_truth(X0,X2)
| ~ a_truth(and(X0,X1),X2) ),
inference(cnf_transformation,[status(thm)],[f26]) ).
fof(f28,plain,
! [Y,Z] :
( a_truth(Y,Z)
| ! [X] : ~ a_truth(and(X,Y),Z) ),
inference(miniscoping,[status(thm)],[f10]) ).
fof(f29,plain,
! [X0,X1,X2] :
( a_truth(X1,X2)
| ~ a_truth(and(X0,X1),X2) ),
inference(cnf_transformation,[status(thm)],[f28]) ).
fof(f30,plain,
! [Y,Z] :
( ~ a_truth(Y,Z)
| ! [X] :
( ~ a_truth(X,Z)
| a_truth(and(X,Y),Z) ) ),
inference(miniscoping,[status(thm)],[f11]) ).
fof(f31,plain,
! [X0,X1,X2] :
( ~ a_truth(X1,X2)
| ~ a_truth(X0,X2)
| a_truth(and(X0,X1),X2) ),
inference(cnf_transformation,[status(thm)],[f30]) ).
fof(f32,plain,
! [X0] :
( ~ a_truth(and(knave(me),rich(me)),X0)
| ~ says(me,X0) ),
inference(cnf_transformation,[status(thm)],[f12]) ).
fof(f33,plain,
! [X0] :
( a_truth(and(knave(me),rich(me)),X0)
| says(me,X0) ),
inference(cnf_transformation,[status(thm)],[f13]) ).
fof(f34,plain,
! [X0] :
( says(me,X0)
| a_truth(knave(me),X0) ),
inference(resolution,[status(thm)],[f27,f33]) ).
fof(f35,plain,
! [X0] :
( says(me,X0)
| a_truth(rich(me),X0) ),
inference(resolution,[status(thm)],[f29,f33]) ).
fof(f36,plain,
! [X0,X1] :
( says(me,X1)
| a_truth(X0,X1)
| says(me,X0) ),
inference(resolution,[status(thm)],[f25,f34]) ).
fof(f37,plain,
! [X0] :
( ~ a_truth(and(knave(me),rich(me)),X0)
| a_truth(X0,X0) ),
inference(resolution,[status(thm)],[f36,f32]) ).
fof(f38,plain,
! [X0,X1] :
( ~ a_truth(and(knave(me),rich(me)),X0)
| says(me,X1)
| a_truth(X0,X1) ),
inference(resolution,[status(thm)],[f36,f32]) ).
fof(f39,plain,
! [X0,X1] :
( ~ a_truth(X0,X1)
| ~ a_truth(knave(me),X1)
| a_truth(X0,X0) ),
inference(resolution,[status(thm)],[f36,f23]) ).
fof(f48,plain,
! [X0] :
( says(me,X0)
| a_truth(X0,X0) ),
inference(resolution,[status(thm)],[f37,f33]) ).
fof(f50,plain,
! [X0] :
( says(me,X0)
| says(me,and(knave(me),rich(me)))
| a_truth(X0,X0) ),
inference(resolution,[status(thm)],[f37,f36]) ).
fof(f51,definition,
! [X0] :
( sQ0_spl
<=> ( says(me,X0)
| a_truth(X0,X0) ) ),
introduced(definition,[new_symbols(definition,[sQ0_spl])],[split_symbol_definition]) ).
fof(f52,plain,
! [X0] :
( ~ sQ0_spl
| says(me,X0)
| a_truth(X0,X0) ),
inference(component_clause,[status(thm)],[f51]) ).
fof(f54,definition,
( sQ1_spl
<=> says(me,and(knave(me),rich(me))) ),
introduced(definition,[new_symbols(definition,[sQ1_spl])],[split_symbol_definition]) ).
fof(f55,plain,
( ~ sQ1_spl
| says(me,and(knave(me),rich(me))) ),
inference(component_clause,[status(thm)],[f54]) ).
fof(f56,plain,
( sQ1_spl
| ~ says(me,and(knave(me),rich(me))) ),
inference(component_clause,[status(thm)],[f54]) ).
fof(f57,plain,
( sQ1_spl
| sQ0_spl ),
inference(split_clause,[status(thm)],[f50,f51,f54]) ).
fof(f60,plain,
! [X0,X1] :
( says(me,X0)
| says(me,and(knave(me),rich(me)))
| says(me,X1)
| a_truth(X0,X1) ),
inference(resolution,[status(thm)],[f38,f36]) ).
fof(f61,definition,
! [X0,X1] :
( sQ2_spl
<=> ( says(me,X0)
| says(me,X1)
| a_truth(X0,X1) ) ),
introduced(definition,[new_symbols(definition,[sQ2_spl])],[split_symbol_definition]) ).
fof(f62,plain,
! [X0,X1] :
( ~ sQ2_spl
| says(me,X0)
| says(me,X1)
| a_truth(X0,X1) ),
inference(component_clause,[status(thm)],[f61]) ).
fof(f64,plain,
( sQ1_spl
| sQ2_spl ),
inference(split_clause,[status(thm)],[f60,f61,f54]) ).
fof(f66,plain,
! [X0] :
( says(me,X0)
| a_truth(and(knave(me),rich(me)),X0)
| says(me,and(knave(me),rich(me))) ),
inference(resolution,[status(thm)],[f48,f38]) ).
fof(f67,plain,
( a_truth(and(knave(me),rich(me)),and(knave(me),rich(me)))
| says(me,and(knave(me),rich(me))) ),
inference(resolution,[status(thm)],[f48,f37]) ).
fof(f72,definition,
! [X0] :
( sQ3_spl
<=> ( says(me,X0)
| a_truth(and(knave(me),rich(me)),X0) ) ),
introduced(definition,[new_symbols(definition,[sQ3_spl])],[split_symbol_definition]) ).
fof(f75,plain,
( sQ3_spl
| sQ1_spl ),
inference(split_clause,[status(thm)],[f66,f54,f72]) ).
fof(f76,definition,
( sQ4_spl
<=> a_truth(and(knave(me),rich(me)),and(knave(me),rich(me))) ),
introduced(definition,[new_symbols(definition,[sQ4_spl])],[split_symbol_definition]) ).
fof(f79,plain,
( sQ4_spl
| sQ1_spl ),
inference(split_clause,[status(thm)],[f67,f54,f76]) ).
fof(f82,plain,
! [X0,X1,X2] :
( a_truth(X2,X1)
| says(X0,X2)
| a_truth(knight(X0),X1) ),
inference(resolution,[status(thm)],[f15,f25]) ).
fof(f91,plain,
! [X0] :
( ~ sQ1_spl
| ~ a_truth(and(knave(me),rich(me)),X0)
| ~ a_truth(knave(me),X0) ),
inference(resolution,[status(thm)],[f55,f23]) ).
fof(f92,plain,
! [X0] :
( ~ sQ1_spl
| ~ a_truth(and(knave(me),rich(me)),X0) ),
inference(forward_subsumption_resolution,[status(thm)],[f91,f27]) ).
fof(f93,plain,
! [X0] :
( ~ sQ1_spl
| says(me,X0) ),
inference(backward_subsumption_resolution,[status(thm)],[f33,f92]) ).
fof(f97,definition,
! [X0] :
( sQ5_spl
<=> says(me,X0) ),
introduced(definition,[new_symbols(definition,[sQ5_spl])],[split_symbol_definition]) ).
fof(f98,plain,
! [X0] :
( ~ sQ5_spl
| says(me,X0) ),
inference(component_clause,[status(thm)],[f97]) ).
fof(f101,plain,
! [X0,X1] :
( ~ sQ1_spl
| ~ a_truth(X1,X0)
| ~ a_truth(knave(me),X0) ),
inference(resolution,[status(thm)],[f93,f23]) ).
fof(f102,plain,
! [X0,X1,X2] :
( ~ a_truth(X1,X2)
| says(X0,X1)
| says(X0,knight(X0)) ),
inference(resolution,[status(thm)],[f82,f21]) ).
fof(f104,plain,
! [X0,X1,X2] :
( a_truth(X1,X2)
| ~ says(X0,X1)
| says(X0,knight(X0)) ),
inference(resolution,[status(thm)],[f82,f19]) ).
fof(f105,plain,
! [X0,X1,X2,X3] :
( a_truth(X3,X2)
| ~ says(X0,X3)
| a_truth(X1,X2)
| says(X0,X1) ),
inference(resolution,[status(thm)],[f82,f19]) ).
fof(f113,plain,
! [X0,X1,X2,X3] :
( a_truth(X3,X1)
| says(X2,X3)
| says(X0,knave(X2))
| a_truth(knight(X0),X1) ),
inference(resolution,[status(thm)],[f82,f25]) ).
fof(f115,plain,
! [X0,X1,X2,X3] :
( a_truth(X3,X1)
| says(X0,and(X2,X3))
| a_truth(knight(X0),X1) ),
inference(resolution,[status(thm)],[f82,f29]) ).
fof(f116,plain,
! [X0,X1,X2,X3] :
( a_truth(X2,X1)
| says(X0,and(X2,X3))
| a_truth(knight(X0),X1) ),
inference(resolution,[status(thm)],[f82,f27]) ).
fof(f117,plain,
! [X0,X1] :
( ~ sQ1_spl
| a_truth(knight(me),X1)
| ~ a_truth(X0,X1) ),
inference(resolution,[status(thm)],[f101,f15]) ).
fof(f120,plain,
! [X0,X1,X2] :
( ~ sQ1_spl
| a_truth(X2,X1)
| ~ says(me,X2)
| ~ a_truth(X0,X1) ),
inference(resolution,[status(thm)],[f117,f19]) ).
fof(f122,plain,
! [X0,X1,X2] :
( ~ sQ1_spl
| a_truth(X2,X1)
| ~ a_truth(X0,X1) ),
inference(forward_subsumption_resolution,[status(thm)],[f120,f93]) ).
fof(f123,plain,
! [X0,X1] :
( ~ sQ1_spl
| a_truth(rich(X0),X1) ),
inference(backward_subsumption_resolution,[status(thm)],[f17,f122]) ).
fof(f129,plain,
! [X0,X1] :
( ~ sQ1_spl
| ~ a_truth(X0,X1) ),
inference(backward_subsumption_resolution,[status(thm)],[f101,f122]) ).
fof(f131,plain,
( ~ sQ1_spl
| $false ),
inference(forward_subsumption_resolution,[status(thm)],[f123,f129]) ).
fof(f132,plain,
~ sQ1_spl,
inference(contradiction_clause,[status(thm)],[f131]) ).
fof(f143,plain,
! [X0,X1] :
( says(me,X1)
| says(X0,knave(me))
| says(X0,knight(X0)) ),
inference(resolution,[status(thm)],[f102,f34]) ).
fof(f147,plain,
! [X0,X1] :
( says(me,X1)
| says(X0,rich(me))
| says(X0,knight(X0)) ),
inference(resolution,[status(thm)],[f102,f35]) ).
fof(f149,definition,
! [X0] :
( sQ6_spl
<=> ( says(X0,knave(me))
| says(X0,knight(X0)) ) ),
introduced(definition,[new_symbols(definition,[sQ6_spl])],[split_symbol_definition]) ).
fof(f150,plain,
! [X0] :
( ~ sQ6_spl
| says(X0,knave(me))
| says(X0,knight(X0)) ),
inference(component_clause,[status(thm)],[f149]) ).
fof(f152,plain,
( sQ5_spl
| sQ6_spl ),
inference(split_clause,[status(thm)],[f143,f149,f97]) ).
fof(f153,definition,
! [X0] :
( sQ7_spl
<=> ( says(X0,rich(me))
| says(X0,knight(X0)) ) ),
introduced(definition,[new_symbols(definition,[sQ7_spl])],[split_symbol_definition]) ).
fof(f154,plain,
! [X0] :
( ~ sQ7_spl
| says(X0,rich(me))
| says(X0,knight(X0)) ),
inference(component_clause,[status(thm)],[f153]) ).
fof(f156,plain,
( sQ5_spl
| sQ7_spl ),
inference(split_clause,[status(thm)],[f147,f153,f97]) ).
fof(f159,definition,
( sQ8_spl
<=> says(me,knight(me)) ),
introduced(definition,[new_symbols(definition,[sQ8_spl])],[split_symbol_definition]) ).
fof(f160,plain,
( ~ sQ8_spl
| says(me,knight(me)) ),
inference(component_clause,[status(thm)],[f159]) ).
fof(f162,definition,
! [X0,X1] :
( sQ9_spl
<=> a_truth(X0,X1) ),
introduced(definition,[new_symbols(definition,[sQ9_spl])],[split_symbol_definition]) ).
fof(f163,plain,
! [X0,X1] :
( ~ sQ9_spl
| a_truth(X0,X1) ),
inference(component_clause,[status(thm)],[f162]) ).
fof(f166,plain,
! [X0,X1] :
( ~ sQ9_spl
| ~ a_truth(poor(X0),X1) ),
inference(backward_subsumption_resolution,[status(thm)],[f16,f163]) ).
fof(f170,plain,
( ~ sQ9_spl
| $false ),
inference(forward_subsumption_resolution,[status(thm)],[f166,f163]) ).
fof(f171,plain,
~ sQ9_spl,
inference(contradiction_clause,[status(thm)],[f170]) ).
fof(f191,plain,
! [X0] :
( ~ sQ2_spl
| ~ says(me,X0)
| says(me,and(knave(me),rich(me)))
| says(me,X0) ),
inference(resolution,[status(thm)],[f62,f32]) ).
fof(f199,definition,
! [X0] :
( sQ10_spl
<=> ( ~ says(me,X0)
| says(me,X0) ) ),
introduced(definition,[new_symbols(definition,[sQ10_spl])],[split_symbol_definition]) ).
fof(f202,plain,
( ~ sQ2_spl
| sQ1_spl
| sQ10_spl ),
inference(split_clause,[status(thm)],[f191,f199,f54,f61]) ).
fof(f224,plain,
! [X0] :
( ~ says(me,X0)
| ~ a_truth(rich(me),X0)
| ~ a_truth(knave(me),X0) ),
inference(resolution,[status(thm)],[f31,f32]) ).
fof(f238,definition,
( sQ12_spl
<=> says(me,rich(me)) ),
introduced(definition,[new_symbols(definition,[sQ12_spl])],[split_symbol_definition]) ).
fof(f239,plain,
( ~ sQ12_spl
| says(me,rich(me)) ),
inference(component_clause,[status(thm)],[f238]) ).
fof(f242,definition,
( sQ13_spl
<=> a_truth(knave(me),rich(me)) ),
introduced(definition,[new_symbols(definition,[sQ13_spl])],[split_symbol_definition]) ).
fof(f243,plain,
( ~ sQ13_spl
| a_truth(knave(me),rich(me)) ),
inference(component_clause,[status(thm)],[f242]) ).
fof(f244,plain,
( sQ13_spl
| ~ a_truth(knave(me),rich(me)) ),
inference(component_clause,[status(thm)],[f242]) ).
fof(f248,plain,
! [X0,X1] :
( ~ sQ2_spl
| a_truth(X0,X0)
| a_truth(X0,X1)
| says(me,knight(me)) ),
inference(resolution,[status(thm)],[f104,f62]) ).
fof(f253,plain,
! [X0,X1] :
( ~ sQ7_spl
| says(X0,knight(X0))
| a_truth(rich(me),X1)
| says(X0,knight(X0)) ),
inference(resolution,[status(thm)],[f104,f154]) ).
fof(f254,plain,
! [X0,X1] :
( ~ sQ6_spl
| says(X0,knight(X0))
| a_truth(knave(me),X1)
| says(X0,knight(X0)) ),
inference(resolution,[status(thm)],[f104,f150]) ).
fof(f267,definition,
! [X0,X1] :
( sQ16_spl
<=> ( a_truth(X0,X0)
| a_truth(X0,X1) ) ),
introduced(definition,[new_symbols(definition,[sQ16_spl])],[split_symbol_definition]) ).
fof(f268,plain,
! [X0,X1] :
( ~ sQ16_spl
| a_truth(X0,X0)
| a_truth(X0,X1) ),
inference(component_clause,[status(thm)],[f267]) ).
fof(f270,plain,
( ~ sQ2_spl
| sQ16_spl
| sQ8_spl ),
inference(split_clause,[status(thm)],[f248,f159,f267,f61]) ).
fof(f281,definition,
! [X0] :
( sQ19_spl
<=> ( says(X0,knight(X0))
| says(X0,knight(X0)) ) ),
introduced(definition,[new_symbols(definition,[sQ19_spl])],[split_symbol_definition]) ).
fof(f282,plain,
! [X0] :
( ~ sQ19_spl
| says(X0,knight(X0))
| says(X0,knight(X0)) ),
inference(component_clause,[status(thm)],[f281]) ).
fof(f284,definition,
! [X1] :
( sQ20_spl
<=> a_truth(rich(me),X1) ),
introduced(definition,[new_symbols(definition,[sQ20_spl])],[split_symbol_definition]) ).
fof(f285,plain,
! [X0] :
( ~ sQ20_spl
| a_truth(rich(me),X0) ),
inference(component_clause,[status(thm)],[f284]) ).
fof(f287,plain,
( ~ sQ7_spl
| sQ20_spl
| sQ19_spl ),
inference(split_clause,[status(thm)],[f253,f281,f284,f153]) ).
fof(f288,definition,
! [X1] :
( sQ21_spl
<=> a_truth(knave(me),X1) ),
introduced(definition,[new_symbols(definition,[sQ21_spl])],[split_symbol_definition]) ).
fof(f289,plain,
! [X0] :
( ~ sQ21_spl
| a_truth(knave(me),X0) ),
inference(component_clause,[status(thm)],[f288]) ).
fof(f291,plain,
( ~ sQ6_spl
| sQ21_spl
| sQ19_spl ),
inference(split_clause,[status(thm)],[f254,f281,f288,f149]) ).
fof(f292,plain,
! [X0] :
( ~ sQ19_spl
| says(X0,knight(X0)) ),
inference(duplicate_literals_removal,[status(thm)],[f282]) ).
fof(f295,plain,
( sQ1_spl
| ~ sQ5_spl
| $false ),
inference(backward_subsumption_resolution,[status(thm)],[f56,f98]) ).
fof(f297,plain,
( sQ1_spl
| ~ sQ5_spl ),
inference(contradiction_clause,[status(thm)],[f295]) ).
fof(f310,plain,
! [X0,X1] :
( a_truth(X0,X1)
| a_truth(knight(me),X1)
| ~ a_truth(and(knave(me),rich(me)),X0) ),
inference(resolution,[status(thm)],[f32,f82]) ).
fof(f367,plain,
! [X0,X1] :
( says(me,X1)
| ~ a_truth(X0,X1)
| a_truth(X0,X0) ),
inference(resolution,[status(thm)],[f39,f34]) ).
fof(f370,plain,
! [X0] :
( ~ sQ0_spl
| says(me,knave(me))
| ~ a_truth(X0,knave(me))
| a_truth(X0,X0) ),
inference(resolution,[status(thm)],[f39,f52]) ).
fof(f375,definition,
( sQ23_spl
<=> says(me,knave(me)) ),
introduced(definition,[new_symbols(definition,[sQ23_spl])],[split_symbol_definition]) ).
fof(f376,plain,
( ~ sQ23_spl
| says(me,knave(me)) ),
inference(component_clause,[status(thm)],[f375]) ).
fof(f379,definition,
! [X0] :
( sQ24_spl
<=> ( ~ a_truth(X0,knave(me))
| a_truth(X0,X0) ) ),
introduced(definition,[new_symbols(definition,[sQ24_spl])],[split_symbol_definition]) ).
fof(f380,plain,
! [X0] :
( ~ sQ24_spl
| ~ a_truth(X0,knave(me))
| a_truth(X0,X0) ),
inference(component_clause,[status(thm)],[f379]) ).
fof(f382,plain,
( ~ sQ0_spl
| sQ23_spl
| sQ24_spl ),
inference(split_clause,[status(thm)],[f370,f379,f375,f51]) ).
fof(f385,plain,
! [X0,X1] :
( ~ sQ23_spl
| a_truth(knave(me),X1)
| a_truth(X0,X1)
| says(me,X0) ),
inference(resolution,[status(thm)],[f376,f105]) ).
fof(f386,plain,
! [X0,X1] :
( ~ sQ23_spl
| a_truth(X0,X1)
| says(me,X0) ),
inference(forward_subsumption_resolution,[status(thm)],[f385,f25]) ).
fof(f393,plain,
! [X0,X1,X2] :
( ~ sQ23_spl
| a_truth(X1,X2)
| says(me,and(X0,X1)) ),
inference(resolution,[status(thm)],[f386,f29]) ).
fof(f394,plain,
! [X0,X1,X2] :
( ~ sQ23_spl
| a_truth(X0,X2)
| says(me,and(X0,X1)) ),
inference(resolution,[status(thm)],[f386,f27]) ).
fof(f430,plain,
( ~ sQ24_spl
| says(me,knave(me))
| a_truth(rich(me),rich(me)) ),
inference(resolution,[status(thm)],[f380,f35]) ).
fof(f437,plain,
( ~ sQ24_spl
| says(me,knave(me))
| a_truth(knave(me),knave(me)) ),
inference(resolution,[status(thm)],[f380,f34]) ).
fof(f442,definition,
( sQ27_spl
<=> a_truth(rich(me),rich(me)) ),
introduced(definition,[new_symbols(definition,[sQ27_spl])],[split_symbol_definition]) ).
fof(f445,plain,
( ~ sQ24_spl
| sQ23_spl
| sQ27_spl ),
inference(split_clause,[status(thm)],[f430,f442,f375,f379]) ).
fof(f447,definition,
( sQ28_spl
<=> a_truth(knave(me),knave(me)) ),
introduced(definition,[new_symbols(definition,[sQ28_spl])],[split_symbol_definition]) ).
fof(f448,plain,
( ~ sQ28_spl
| a_truth(knave(me),knave(me)) ),
inference(component_clause,[status(thm)],[f447]) ).
fof(f450,plain,
( ~ sQ24_spl
| sQ23_spl
| sQ28_spl ),
inference(split_clause,[status(thm)],[f437,f447,f375,f379]) ).
fof(f482,plain,
! [X0] :
( sQ1_spl
| ~ sQ23_spl
| a_truth(rich(me),X0) ),
inference(resolution,[status(thm)],[f393,f56]) ).
fof(f507,plain,
! [X0] :
( sQ1_spl
| ~ sQ23_spl
| ~ says(me,X0)
| ~ a_truth(knave(me),X0) ),
inference(backward_subsumption_resolution,[status(thm)],[f224,f482]) ).
fof(f513,plain,
! [X0] :
( sQ1_spl
| ~ sQ23_spl
| a_truth(knave(me),X0) ),
inference(resolution,[status(thm)],[f394,f56]) ).
fof(f547,plain,
! [X0] :
( ~ sQ16_spl
| ~ a_truth(rich(X0),poor(X0)) ),
inference(resolution,[status(thm)],[f268,f16]) ).
fof(f580,plain,
( ~ sQ12_spl
| ~ a_truth(rich(me),rich(me))
| ~ a_truth(knave(me),rich(me)) ),
inference(resolution,[status(thm)],[f224,f239]) ).
fof(f582,plain,
( ~ sQ19_spl
| ~ a_truth(rich(me),knight(me))
| ~ a_truth(knave(me),knight(me)) ),
inference(resolution,[status(thm)],[f224,f292]) ).
fof(f584,plain,
( ~ sQ12_spl
| ~ sQ27_spl
| ~ sQ13_spl ),
inference(split_clause,[status(thm)],[f580,f242,f442,f238]) ).
fof(f585,definition,
( sQ32_spl
<=> a_truth(knave(me),knight(me)) ),
introduced(definition,[new_symbols(definition,[sQ32_spl])],[split_symbol_definition]) ).
fof(f586,plain,
( ~ sQ32_spl
| a_truth(knave(me),knight(me)) ),
inference(component_clause,[status(thm)],[f585]) ).
fof(f587,plain,
( sQ32_spl
| ~ a_truth(knave(me),knight(me)) ),
inference(component_clause,[status(thm)],[f585]) ).
fof(f588,definition,
( sQ33_spl
<=> a_truth(rich(me),knight(me)) ),
introduced(definition,[new_symbols(definition,[sQ33_spl])],[split_symbol_definition]) ).
fof(f590,plain,
( sQ33_spl
| ~ a_truth(rich(me),knight(me)) ),
inference(component_clause,[status(thm)],[f588]) ).
fof(f591,plain,
( ~ sQ19_spl
| ~ sQ33_spl
| ~ sQ32_spl ),
inference(split_clause,[status(thm)],[f582,f585,f588,f281]) ).
fof(f619,plain,
! [X0] :
( sQ1_spl
| ~ sQ23_spl
| ~ says(me,X0) ),
inference(backward_subsumption_resolution,[status(thm)],[f507,f513]) ).
fof(f625,plain,
( ~ sQ19_spl
| sQ1_spl
| ~ sQ23_spl
| $false ),
inference(resolution,[status(thm)],[f619,f292]) ).
fof(f627,plain,
( ~ sQ19_spl
| sQ1_spl
| ~ sQ23_spl ),
inference(contradiction_clause,[status(thm)],[f625]) ).
fof(f631,plain,
! [X0,X1] :
( ~ sQ21_spl
| a_truth(X0,X1)
| says(me,X0) ),
inference(resolution,[status(thm)],[f289,f25]) ).
fof(f634,plain,
( ~ sQ20_spl
| ~ sQ16_spl
| $false ),
inference(resolution,[status(thm)],[f547,f285]) ).
fof(f637,plain,
( ~ sQ20_spl
| ~ sQ16_spl ),
inference(contradiction_clause,[status(thm)],[f634]) ).
fof(f661,plain,
! [X0] :
( ~ sQ28_spl
| ~ a_truth(X0,knave(me))
| ~ says(me,X0) ),
inference(resolution,[status(thm)],[f448,f23]) ).
fof(f663,plain,
( sQ32_spl
| a_truth(knight(me),knight(me)) ),
inference(resolution,[status(thm)],[f587,f15]) ).
fof(f671,plain,
! [X0] :
( sQ32_spl
| a_truth(X0,knight(me))
| ~ says(me,X0) ),
inference(resolution,[status(thm)],[f663,f19]) ).
fof(f673,plain,
( sQ13_spl
| says(me,rich(me)) ),
inference(resolution,[status(thm)],[f34,f244]) ).
fof(f722,plain,
( sQ13_spl
| ~ sQ28_spl
| ~ a_truth(rich(me),knave(me)) ),
inference(resolution,[status(thm)],[f661,f673]) ).
fof(f726,plain,
( sQ13_spl
| ~ sQ28_spl
| says(me,knave(me)) ),
inference(resolution,[status(thm)],[f722,f35]) ).
fof(f729,plain,
( sQ13_spl
| ~ sQ28_spl
| sQ23_spl ),
inference(split_clause,[status(thm)],[f726,f375,f447,f242]) ).
fof(f759,plain,
! [X0] :
( ~ sQ13_spl
| ~ a_truth(X0,rich(me))
| ~ says(me,X0) ),
inference(resolution,[status(thm)],[f243,f23]) ).
fof(f834,plain,
( ~ sQ19_spl
| ~ sQ13_spl
| ~ a_truth(knight(me),rich(me)) ),
inference(resolution,[status(thm)],[f759,f292]) ).
fof(f951,plain,
! [X0] :
( ~ sQ19_spl
| ~ sQ13_spl
| says(me,and(X0,knight(me))) ),
inference(resolution,[status(thm)],[f115,f834]) ).
fof(f998,plain,
! [X0] :
( sQ32_spl
| ~ sQ19_spl
| ~ sQ13_spl
| a_truth(and(X0,knight(me)),knight(me)) ),
inference(resolution,[status(thm)],[f951,f671]) ).
fof(f1007,plain,
! [X0,X1,X2] :
( says(X0,and(X2,knight(X0)))
| says(me,X1)
| a_truth(knight(X0),knight(X0)) ),
inference(resolution,[status(thm)],[f367,f115]) ).
fof(f1009,plain,
! [X0,X1,X2] :
( says(X2,knight(X0))
| says(X0,knave(X2))
| says(me,X1)
| a_truth(knight(X0),knight(X0)) ),
inference(resolution,[status(thm)],[f367,f113]) ).
fof(f1012,plain,
! [X0,X1] :
( says(X0,knight(X0))
| says(me,X1)
| a_truth(knight(X0),knight(X0)) ),
inference(resolution,[status(thm)],[f367,f82]) ).
fof(f1040,definition,
! [X0,X2] :
( sQ39_spl
<=> ( says(X0,and(X2,knight(X0)))
| a_truth(knight(X0),knight(X0)) ) ),
introduced(definition,[new_symbols(definition,[sQ39_spl])],[split_symbol_definition]) ).
fof(f1043,plain,
( sQ5_spl
| sQ39_spl ),
inference(split_clause,[status(thm)],[f1007,f1040,f97]) ).
fof(f1044,definition,
! [X0,X2] :
( sQ40_spl
<=> ( says(X2,knight(X0))
| says(X0,knave(X2))
| a_truth(knight(X0),knight(X0)) ) ),
introduced(definition,[new_symbols(definition,[sQ40_spl])],[split_symbol_definition]) ).
fof(f1047,plain,
( sQ5_spl
| sQ40_spl ),
inference(split_clause,[status(thm)],[f1009,f1044,f97]) ).
fof(f1048,definition,
! [X0] :
( sQ41_spl
<=> ( says(X0,knight(X0))
| a_truth(knight(X0),knight(X0)) ) ),
introduced(definition,[new_symbols(definition,[sQ41_spl])],[split_symbol_definition]) ).
fof(f1051,plain,
( sQ5_spl
| sQ41_spl ),
inference(split_clause,[status(thm)],[f1012,f1048,f97]) ).
fof(f1076,plain,
! [X0] :
( ~ sQ0_spl
| says(me,and(knave(me),rich(me)))
| a_truth(and(knave(me),rich(me)),X0)
| a_truth(knight(me),X0) ),
inference(resolution,[status(thm)],[f310,f52]) ).
fof(f1087,definition,
! [X0] :
( sQ45_spl
<=> ( a_truth(and(knave(me),rich(me)),X0)
| a_truth(knight(me),X0) ) ),
introduced(definition,[new_symbols(definition,[sQ45_spl])],[split_symbol_definition]) ).
fof(f1094,plain,
( ~ sQ0_spl
| sQ1_spl
| sQ45_spl ),
inference(split_clause,[status(thm)],[f1076,f1087,f54,f51]) ).
fof(f1159,plain,
! [X0,X1,X2] :
( says(me,X2)
| a_truth(knight(X0),knight(X0))
| says(X0,and(knight(X0),X1)) ),
inference(resolution,[status(thm)],[f116,f367]) ).
fof(f1191,definition,
! [X0,X1] :
( sQ49_spl
<=> ( a_truth(knight(X0),knight(X0))
| says(X0,and(knight(X0),X1)) ) ),
introduced(definition,[new_symbols(definition,[sQ49_spl])],[split_symbol_definition]) ).
fof(f1194,plain,
( sQ5_spl
| sQ49_spl ),
inference(split_clause,[status(thm)],[f1159,f1191,f97]) ).
fof(f1289,plain,
! [X0] :
( sQ32_spl
| ~ sQ19_spl
| ~ sQ13_spl
| a_truth(X0,knight(me)) ),
inference(resolution,[status(thm)],[f998,f27]) ).
fof(f1298,plain,
( sQ32_spl
| ~ sQ19_spl
| ~ sQ13_spl
| $false ),
inference(backward_subsumption_resolution,[status(thm)],[f587,f1289]) ).
fof(f1315,plain,
( sQ32_spl
| ~ sQ19_spl
| ~ sQ13_spl ),
inference(contradiction_clause,[status(thm)],[f1298]) ).
fof(f1318,plain,
! [X0] :
( ~ sQ32_spl
| a_truth(X0,knight(me))
| says(me,X0) ),
inference(resolution,[status(thm)],[f586,f25]) ).
fof(f1329,plain,
( sQ33_spl
| ~ sQ32_spl
| says(me,rich(me)) ),
inference(resolution,[status(thm)],[f1318,f590]) ).
fof(f1345,plain,
( sQ33_spl
| ~ sQ32_spl
| sQ12_spl ),
inference(split_clause,[status(thm)],[f1329,f238,f585,f588]) ).
fof(f1387,plain,
! [X0] :
( ~ sQ21_spl
| ~ says(me,X0)
| says(me,and(knave(me),rich(me))) ),
inference(resolution,[status(thm)],[f631,f32]) ).
fof(f1389,definition,
! [X0] :
( sQ54_spl
<=> ~ says(me,X0) ),
introduced(definition,[new_symbols(definition,[sQ54_spl])],[split_symbol_definition]) ).
fof(f1390,plain,
! [X0] :
( ~ sQ54_spl
| ~ says(me,X0) ),
inference(component_clause,[status(thm)],[f1389]) ).
fof(f1392,plain,
( ~ sQ21_spl
| sQ54_spl
| sQ1_spl ),
inference(split_clause,[status(thm)],[f1387,f54,f1389,f288]) ).
fof(f1398,plain,
( ~ sQ8_spl
| ~ sQ54_spl
| $false ),
inference(forward_subsumption_resolution,[status(thm)],[f160,f1390]) ).
fof(f1399,plain,
( ~ sQ8_spl
| ~ sQ54_spl ),
inference(contradiction_clause,[status(thm)],[f1398]) ).
fof(f1400,plain,
$false,
inference(sat_refutation,[status(thm)],[f57,f64,f75,f79,f132,f152,f156,f171,f202,f270,f287,f291,f297,f382,f445,f450,f584,f591,f627,f637,f729,f1043,f1047,f1051,f1094,f1194,f1315,f1345,f1392,f1399]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.03 % Problem : PUZ021-1 : TPTP v9.3.1. Released v1.0.0.
% 0.00/0.04 % Command : drodi -timeout(300) /export/starexec/sandbox2/benchmark/theBenchmark.p
% 0.12/0.36 % Computer : n004.cluster.edu
% 0.12/0.36 % Model : x86_64 x86_64
% 0.12/0.36 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.36 % Memory : 8046.5625MB
% 0.12/0.36 % OS : Linux 6.8.0-71-generic
% 0.12/0.36 % CPULimit : 300
% 0.12/0.36 % WCLimit : 300
% 0.12/0.36 % DateTime : Mon Sep 21 03:45:05 UTC 2026
% 0.12/0.36 % CPUTime :
% 0.12/0.37 % Drodi V4.1.1
% 0.12/0.55 % Refutation found
% 0.12/0.55 % SZS status Unsatisfiable for theBenchmark: Theory is unsatisfiable
% 0.12/0.55 % SZS output start CNFRefutation for theBenchmark
% See solution above
% 1.18/0.56 % Elapsed time: 0.196865 seconds
% 1.18/0.56 % CPU time: 1.431510 seconds
% 1.18/0.56 % Total memory used: 30.992 MB
% 1.18/0.56 % Net memory used: 27.126 MB
%------------------------------------------------------------------------------