↑ Up

Drodi---4.1.1.UNS-CRf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% 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
%------------------------------------------------------------------------------