%------------------------------------------------------------------------------
% File : ConnectPP---0.7.2
% Problem : PUZ023-1 : TPTP v9.3.1. Released v1.0.0.
% Transfm : none
% Format : tptp:raw
% Command : /export/starexec/sandbox/solver/bin/connect++ --verbosity 1 --no-colour --tptp-proof --schedule default --timeout 300 /export/starexec/sandbox/benchmark/theBenchmark.p
% Computer : n002.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 08:54:19 AM UTC 2026
% Result : Unsatisfiable 0.11s 0.39s
% Output : Proof 0.11s
% Verified :
% SZS Type : ERROR: Analysing output (MakeTreeStats fails)
% Comments :
%------------------------------------------------------------------------------
cnf(truthteller_or_liar,axiom,
( a_truth(liar(X))
| a_truth(truthteller(X)) ),
file('PUZ002-0.ax',truthteller_or_liar) ).
cnf(not_both,axiom,
( ~ a_truth(liar(X))
| ~ a_truth(truthteller(X)) ),
file('PUZ002-0.ax',not_both) ).
cnf(truthtellers_tell_truth,axiom,
( a_truth(Statement)
| ~ a_truth(says(Truthteller,Statement))
| ~ a_truth(truthteller(Truthteller)) ),
file('PUZ002-0.ax',truthtellers_tell_truth) ).
cnf(liars_lie,axiom,
( ~ a_truth(Statement)
| ~ a_truth(says(Liar,Statement))
| ~ a_truth(liar(Liar)) ),
file('PUZ002-0.ax',liars_lie) ).
cnf(truths_are_told_by_truthtellers,axiom,
( a_truth(truthteller(Truthteller))
| ~ a_truth(says(Truthteller,Statement))
| ~ a_truth(Statement) ),
file('PUZ002-0.ax',truths_are_told_by_truthtellers) ).
cnf(liars_are_told_by_liars,axiom,
( a_truth(liar(Liar))
| ~ a_truth(says(Liar,Statement))
| a_truth(Statement) ),
file('PUZ002-0.ax',liars_are_told_by_liars) ).
cnf(one_is_the_truthteller,axiom,
( a_truth(truthteller(Z))
| a_truth(truthteller(Y))
| a_truth(truthteller(X))
| ~ a_truth(one_truthteller)
| ~ people(X,Y,Z) ),
file('theBenchmark.p',one_is_the_truthteller) ).
cnf(two_truthtellers1,axiom,
( ~ a_truth(one_truthteller)
| ~ a_truth(truthteller(Y))
| ~ a_truth(truthteller(X))
| ~ people(X,Y,Z) ),
file('theBenchmark.p',two_truthtellers1) ).
cnf(two_truthtellers2,axiom,
( ~ a_truth(one_truthteller)
| ~ a_truth(truthteller(Z))
| ~ a_truth(truthteller(X))
| ~ people(X,Y,Z) ),
file('theBenchmark.p',two_truthtellers2) ).
cnf(two_truthtellers3,axiom,
( ~ a_truth(one_truthteller)
| ~ a_truth(truthteller(Z))
| ~ a_truth(truthteller(Y))
| ~ people(X,Y,Z) ),
file('theBenchmark.p',two_truthtellers3) ).
cnf(identify_one_truthteller1,axiom,
( a_truth(truthteller(Z))
| a_truth(truthteller(Y))
| ~ a_truth(truthteller(X))
| a_truth(one_truthteller)
| ~ people(X,Y,Z) ),
file('theBenchmark.p',identify_one_truthteller1) ).
cnf(identify_one_truthteller2,axiom,
( a_truth(truthteller(Z))
| a_truth(truthteller(X))
| ~ a_truth(truthteller(Y))
| a_truth(one_truthteller)
| ~ people(X,Y,Z) ),
file('theBenchmark.p',identify_one_truthteller2) ).
cnf(identify_one_truthteller3,axiom,
( a_truth(truthteller(X))
| a_truth(truthteller(Y))
| ~ a_truth(truthteller(Z))
| a_truth(one_truthteller)
| ~ people(X,Y,Z) ),
file('theBenchmark.p',identify_one_truthteller3) ).
cnf(a_b_and_c_are_people,hypothesis,
people(a,b,c),
file('theBenchmark.p',a_b_and_c_are_people) ).
cnf(a_says_garbage,hypothesis,
a_truth(says(a,garbage)),
file('theBenchmark.p',a_says_garbage) ).
cnf(b_says_a_says_one_truthteller,hypothesis,
a_truth(says(b,says(a,one_truthteller))),
file('theBenchmark.p',b_says_a_says_one_truthteller) ).
cnf(c_says_b_lies,hypothesis,
a_truth(says(c,liar(b))),
file('theBenchmark.p',c_says_b_lies) ).
cnf(b_and_c_liars,hypothesis,
( an_answer(b_and_c_liars)
| ~ a_truth(liar(c))
| ~ a_truth(liar(b)) ),
file('theBenchmark.p',b_and_c_liars) ).
cnf(b_liar_and_c_truthteller,hypothesis,
( an_answer(b_liar_and_c_truthteller)
| ~ a_truth(truthteller(c))
| ~ a_truth(liar(b)) ),
file('theBenchmark.p',b_liar_and_c_truthteller) ).
cnf(b_truthteller_and_c_liar,hypothesis,
( an_answer(b_truthteller_and_c_liar)
| ~ a_truth(liar(c))
| ~ a_truth(truthteller(b)) ),
file('theBenchmark.p',b_truthteller_and_c_liar) ).
cnf(b_and_c_truthtellers,hypothesis,
( an_answer(b_and_c_truthtellers)
| ~ a_truth(truthteller(c))
| ~ a_truth(truthteller(b)) ),
file('theBenchmark.p',b_and_c_truthtellers) ).
cnf(prove_there_is_an_answer,negated_conjecture,
~ an_answer(X),
file('theBenchmark.p',prove_there_is_an_answer) ).
cnf(sat_proved,plain,
$false,
inference(cadical,[status(thm)],[]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.03 % Problem : PUZ023-1 : TPTP v9.3.1. Released v1.0.0.
% 0.00/0.03 This is a CNF_UNS_RFO_NEQ_NHN problem
% 0.00/0.04 % Command : /export/starexec/sandbox/solver/bin/connect++ --verbosity 1 --no-colour --tptp-proof --schedule default --timeout 300 /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.11/0.36 % Computer : n002.cluster.edu
% 0.11/0.36 % Model : x86_64 x86_64
% 0.11/0.36 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.11/0.36 % Memory : 8046.5625MB
% 0.11/0.36 % OS : Linux 6.8.0-71-generic
% 0.11/0.37 % CPULimit : 300
% 0.11/0.37 % WCLimit : 300
% 0.11/0.37 % DateTime : Sat Sep 19 19:58:30 UTC 2026
% 0.11/0.37 % CPUTime :
% 0.11/0.39 % SZS status Unsatisfiable for theBenchmark
% 0.11/0.39 % SZS output start Proof for theBenchmark
% See solution above
%------------------------------------------------------------------------------