%------------------------------------------------------------------------------
% File : Prover9---2026-6A
% Problem : PUZ035-4 : TPTP v9.3.1. Released v2.0.0.
% Transfm : none
% Format : tptp:raw
% Command : prover9 -casc 300 -f /export/starexec/sandbox2/benchmark/theBenchmark.p
% Computer : n008.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 : Sun Sep 27 08:23:11 AM UTC 2026
% Result : Unsatisfiable 0.02s 0.38s
% Output : CNFRefutation 0.02s
% Verified :
% SZS Type : Refutation
% Derivation depth : 21
% Number of leaves : 7
% Syntax : Number of formulae : 39 ( 10 unt; 0 def)
% Number of atoms : 87 ( 0 equ)
% Maximal formula atoms : 4 ( 2 avg)
% Number of connectives : 80 ( 32 ~; 48 |; 0 &)
% ( 0 <=>; 0 =>; 0 <=; 0 <~>)
% Maximal formula depth : 7 ( 3 avg)
% Maximal term depth : 4 ( 1 avg)
% Number of predicates : 4 ( 3 usr; 1 prp; 0-2 aty)
% Number of functors : 7 ( 7 usr; 4 con; 0-2 aty)
% Number of variables : 31 ( 19 sgn 8 !; 0 ?)
% Comments :
%------------------------------------------------------------------------------
fof(asked_person,axiom,
person(asked),
file('theBenchmark.p',asked_person) ).
cnf(c_1,plain,
person(asked),
inference(clausify,[status(thm)],[asked_person]) ).
fof(everyone_a_knight_or_knave,axiom,
! [VAR_0] :
( truth(isa(VAR_0,knave))
| truth(isa(VAR_0,knight))
| ~ person(VAR_0) ),
file('theBenchmark.p',everyone_a_knight_or_knave) ).
cnf(c_2,plain,
( truth(isa(A,knave))
| truth(isa(A,knight))
| ~ person(A) ),
inference(clausify,[status(thm)],[everyone_a_knight_or_knave]) ).
fof(other_person,axiom,
person(other),
file('theBenchmark.p',other_person) ).
cnf(c_3,plain,
person(other),
inference(clausify,[status(thm)],[other_person]) ).
cnf(c_4,plain,
( truth(isa(other,knave))
| truth(isa(other,knight)) ),
inference(resolve,[status(thm)],[c_3,c_2]) ).
cnf(c_5,plain,
( truth(isa(asked,knave))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_1,c_2]) ).
fof(prove_answer,axiom,
! [VAR_0,VAR_1,VAR_2] :
( ~ says(asked,VAR_2)
| ~ truth(isa(other,VAR_1))
| ~ truth(isa(asked,VAR_0)) ),
file('theBenchmark.p',prove_answer) ).
cnf(c_6,plain,
( ~ says(asked,C)
| ~ truth(isa(other,B))
| ~ truth(isa(asked,A)) ),
inference(clausify,[status(thm)],[prove_answer]) ).
fof(not1,axiom,
! [VAR_0,VAR_1] :
( ~ truth(not(or(VAR_0,VAR_1)))
| ~ truth(VAR_0) ),
file('theBenchmark.p',not1) ).
cnf(c_8,plain,
( ~ truth(not(or(A,B)))
| ~ truth(A) ),
inference(clausify,[status(thm)],[not1]) ).
fof(one_is_knight_answer,axiom,
( says(asked,not(or(isa(asked,knight),isa(other,knight))))
| says(asked,or(isa(asked,knight),isa(other,knight))) ),
file('theBenchmark.p',one_is_knight_answer) ).
cnf(c_13,plain,
( says(asked,not(or(isa(asked,knight),isa(other,knight))))
| says(asked,or(isa(asked,knight),isa(other,knight))) ),
inference(clausify,[status(thm)],[one_is_knight_answer]) ).
fof(knights_make_true_statements1,axiom,
! [VAR_0,VAR_1] :
( ~ truth(isa(VAR_1,knight))
| ~ says(VAR_1,VAR_0)
| truth(VAR_0) ),
file('theBenchmark.p',knights_make_true_statements1) ).
cnf(c_15,plain,
( ~ truth(isa(B,knight))
| ~ says(B,A)
| truth(A) ),
inference(clausify,[status(thm)],[knights_make_true_statements1]) ).
cnf(c_20,plain,
( ~ truth(isa(other,B))
| ~ truth(isa(asked,A))
| says(asked,or(isa(asked,knight),isa(other,knight))) ),
inference(resolve,[status(thm)],[c_13,c_6]) ).
cnf(c_22,plain,
( says(asked,or(isa(asked,knight),isa(other,knight)))
| ~ truth(isa(asked,knight))
| truth(not(or(isa(asked,knight),isa(other,knight)))) ),
inference(resolve,[status(thm)],[c_15,c_13]) ).
cnf(c_27,plain,
( truth(isa(asked,knight))
| ~ truth(isa(other,A))
| says(asked,or(isa(asked,knight),isa(other,knight))) ),
inference(resolve,[status(thm)],[c_20,c_5]) ).
cnf(c_29,plain,
( truth(isa(other,knight))
| truth(isa(asked,knight))
| says(asked,or(isa(asked,knight),isa(other,knight))) ),
inference(resolve,[status(thm)],[c_27,c_4]) ).
cnf(c_31,plain,
( ~ truth(isa(other,B))
| ~ truth(isa(asked,A))
| truth(isa(other,knight))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_29,c_6]) ).
cnf(c_71,plain,
( truth(isa(asked,knight))
| ~ truth(isa(other,A))
| truth(isa(other,knight))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_31,c_5]) ).
cnf(c_34,plain,
( ~ truth(isa(other,A))
| truth(isa(other,knight))
| truth(isa(asked,knight)) ),
inference(copy,[status(thm)],[c_71]) ).
cnf(c_72,plain,
( truth(isa(other,knight))
| truth(isa(other,knight))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_34,c_4]) ).
cnf(c_36,plain,
( truth(isa(other,knight))
| truth(isa(asked,knight)) ),
inference(copy,[status(thm)],[c_72]) ).
cnf(c_73,plain,
( truth(isa(asked,knight))
| says(asked,or(isa(asked,knight),isa(other,knight)))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_36,c_27]) ).
cnf(c_37,plain,
( says(asked,or(isa(asked,knight),isa(other,knight)))
| truth(isa(asked,knight)) ),
inference(copy,[status(thm)],[c_73]) ).
cnf(c_39,plain,
( ~ truth(isa(other,B))
| ~ truth(isa(asked,A))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_37,c_6]) ).
cnf(c_74,plain,
( truth(isa(asked,knight))
| ~ truth(isa(other,A))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_39,c_5]) ).
cnf(c_40,plain,
( ~ truth(isa(other,A))
| truth(isa(asked,knight)) ),
inference(copy,[status(thm)],[c_74]) ).
cnf(c_75,plain,
( truth(isa(asked,knight))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_40,c_36]) ).
cnf(c_42,plain,
truth(isa(asked,knight)),
inference(copy,[status(thm)],[c_75]) ).
cnf(c_43,plain,
( says(asked,or(isa(asked,knight),isa(other,knight)))
| truth(not(or(isa(asked,knight),isa(other,knight)))) ),
inference(resolve,[status(thm)],[c_42,c_22]) ).
cnf(c_48,plain,
~ truth(not(or(isa(asked,knight),A))),
inference(resolve,[status(thm)],[c_8,c_42]) ).
cnf(c_50,plain,
says(asked,or(isa(asked,knight),isa(other,knight))),
inference(resolve,[status(thm)],[c_48,c_43]) ).
cnf(c_76,plain,
( ~ says(asked,B)
| ~ truth(isa(other,A)) ),
inference(resolve,[status(thm)],[c_6,c_42]) ).
cnf(c_69,plain,
~ truth(isa(other,A)),
inference(resolve,[status(thm)],[c_76,c_50]) ).
cnf(c_77,plain,
truth(isa(other,knave)),
inference(resolve,[status(thm)],[c_69,c_4]) ).
cnf(c_70,plain,
$false,
inference(resolve,[status(thm)],[c_69,c_77]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.03 % Problem : PUZ035-4 : TPTP v9.3.1. Released v2.0.0.
% 0.00/0.04 % Command : prover9 -casc 300 -f /export/starexec/sandbox2/benchmark/theBenchmark.p
% 0.09/0.36 % Computer : n008.cluster.edu
% 0.09/0.36 % Model : x86_64 x86_64
% 0.09/0.36 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.09/0.36 % Memory : 8046.5625MB
% 0.09/0.36 % OS : Linux 6.8.0-71-generic
% 0.02/0.36 % CPULimit : 300
% 0.02/0.36 % WCLimit : 300
% 0.02/0.36 % DateTime : Sat Sep 26 05:07:40 UTC 2026
% 0.02/0.36 % CPUTime :
% 0.02/0.36 % Prover9 (64) version 2026-6A, July 2026, CASC-J13.
% 0.02/0.36 % Process 2830616 was started by sandbox2 on n008,
% 0.02/0.36 % Sat Sep 26 05:07:40 2026
% 0.02/0.36 % The command was "/export/starexec/sandbox2/solver/bin/prover9 -casc 300 -f /export/starexec/sandbox2/benchmark/theBenchmark.p".
% 0.02/0.36
% 0.02/0.36 % From the command line: assign(max_seconds, 300).
% 0.02/0.38
% 0.02/0.38 % SZS status Unsatisfiable for theBenchmark
% 0.02/0.38
% 0.02/0.38 % Proof 1 at 0.00 (+ 0.00) seconds.
% 0.02/0.38 % Length of proof is 25.
% 0.02/0.38 % Level of proof is 14.
% 0.02/0.38 % Maximum clause weight is 22.000.
% 0.02/0.38 % Given clauses 36.
% 0.02/0.38
% 0.02/0.38 % SZS output start CNFRefutation for theBenchmark
% See solution above
%------------------------------------------------------------------------------