%------------------------------------------------------------------------------
% File : Prover9---2026-6A
% Problem : PUZ035-3 : TPTP v9.3.1. Released v2.0.0.
% Transfm : none
% Format : tptp:raw
% Command : prover9 -casc 300 -f /export/starexec/sandbox/benchmark/theBenchmark.p
% Computer : n009.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:10 AM UTC 2026
% Result : Unsatisfiable 0.09s 0.39s
% Output : CNFRefutation 0.09s
% 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_17,plain,
( ~ truth(isa(B,knight))
| ~ says(B,A)
| truth(A) ),
inference(clausify,[status(thm)],[knights_make_true_statements1]) ).
cnf(c_22,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_26,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_17,c_13]) ).
cnf(c_32,plain,
( truth(isa(asked,knight))
| ~ truth(isa(other,A))
| says(asked,or(isa(asked,knight),isa(other,knight))) ),
inference(resolve,[status(thm)],[c_22,c_5]) ).
cnf(c_34,plain,
( truth(isa(other,knight))
| truth(isa(asked,knight))
| says(asked,or(isa(asked,knight),isa(other,knight))) ),
inference(resolve,[status(thm)],[c_32,c_4]) ).
cnf(c_37,plain,
( ~ truth(isa(other,B))
| ~ truth(isa(asked,A))
| truth(isa(other,knight))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_34,c_6]) ).
cnf(c_80,plain,
( truth(isa(asked,knight))
| ~ truth(isa(other,A))
| truth(isa(other,knight))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_37,c_5]) ).
cnf(c_41,plain,
( ~ truth(isa(other,A))
| truth(isa(other,knight))
| truth(isa(asked,knight)) ),
inference(copy,[status(thm)],[c_80]) ).
cnf(c_81,plain,
( truth(isa(other,knight))
| truth(isa(other,knight))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_41,c_4]) ).
cnf(c_43,plain,
( truth(isa(other,knight))
| truth(isa(asked,knight)) ),
inference(copy,[status(thm)],[c_81]) ).
cnf(c_82,plain,
( truth(isa(asked,knight))
| says(asked,or(isa(asked,knight),isa(other,knight)))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_43,c_32]) ).
cnf(c_44,plain,
( says(asked,or(isa(asked,knight),isa(other,knight)))
| truth(isa(asked,knight)) ),
inference(copy,[status(thm)],[c_82]) ).
cnf(c_47,plain,
( ~ truth(isa(other,B))
| ~ truth(isa(asked,A))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_44,c_6]) ).
cnf(c_83,plain,
( truth(isa(asked,knight))
| ~ truth(isa(other,A))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_47,c_5]) ).
cnf(c_48,plain,
( ~ truth(isa(other,A))
| truth(isa(asked,knight)) ),
inference(copy,[status(thm)],[c_83]) ).
cnf(c_84,plain,
( truth(isa(asked,knight))
| truth(isa(asked,knight)) ),
inference(resolve,[status(thm)],[c_48,c_43]) ).
cnf(c_50,plain,
truth(isa(asked,knight)),
inference(copy,[status(thm)],[c_84]) ).
cnf(c_51,plain,
( says(asked,or(isa(asked,knight),isa(other,knight)))
| truth(not(or(isa(asked,knight),isa(other,knight)))) ),
inference(resolve,[status(thm)],[c_50,c_26]) ).
cnf(c_56,plain,
~ truth(not(or(isa(asked,knight),A))),
inference(resolve,[status(thm)],[c_8,c_50]) ).
cnf(c_59,plain,
says(asked,or(isa(asked,knight),isa(other,knight))),
inference(resolve,[status(thm)],[c_56,c_51]) ).
cnf(c_85,plain,
( ~ says(asked,B)
| ~ truth(isa(other,A)) ),
inference(resolve,[status(thm)],[c_6,c_50]) ).
cnf(c_78,plain,
~ truth(isa(other,A)),
inference(resolve,[status(thm)],[c_85,c_59]) ).
cnf(c_86,plain,
truth(isa(other,knave)),
inference(resolve,[status(thm)],[c_78,c_4]) ).
cnf(c_79,plain,
$false,
inference(resolve,[status(thm)],[c_78,c_86]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.03 % Problem : PUZ035-3 : TPTP v9.3.1. Released v2.0.0.
% 0.00/0.04 % Command : prover9 -casc 300 -f /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.09/0.37 % Computer : n009.cluster.edu
% 0.09/0.37 % Model : x86_64 x86_64
% 0.09/0.37 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.09/0.37 % Memory : 8046.5625MB
% 0.09/0.37 % OS : Linux 6.8.0-71-generic
% 0.09/0.37 % CPULimit : 300
% 0.09/0.37 % WCLimit : 300
% 0.09/0.37 % DateTime : Sat Sep 26 05:06:44 UTC 2026
% 0.09/0.37 % CPUTime :
% 0.09/0.38 % Prover9 (64) version 2026-6A, July 2026, CASC-J13.
% 0.09/0.38 % Process 3404805 was started by sandbox on n009,
% 0.09/0.38 % Sat Sep 26 05:06:44 2026
% 0.09/0.38 % The command was "/export/starexec/sandbox/solver/bin/prover9 -casc 300 -f /export/starexec/sandbox/benchmark/theBenchmark.p".
% 0.09/0.38
% 0.09/0.38 % From the command line: assign(max_seconds, 300).
% 0.09/0.39
% 0.09/0.39 % SZS status Unsatisfiable for theBenchmark
% 0.09/0.39
% 0.09/0.39 % Proof 1 at 0.01 (+ 0.00) seconds.
% 0.09/0.39 % Length of proof is 25.
% 0.09/0.39 % Level of proof is 14.
% 0.09/0.39 % Maximum clause weight is 22.000.
% 0.09/0.39 % Given clauses 38.
% 0.09/0.39
% 0.09/0.39 % SZS output start CNFRefutation for theBenchmark
% See solution above
%------------------------------------------------------------------------------