TSTP Solution File: PUZ025-1 by Metis---2.4

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Metis---2.4
% Problem  : PUZ025-1 : TPTP v8.1.0. Released v1.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : metis --show proof --show saturation %s

% Computer : n032.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 600s
% DateTime : Mon Jul 18 18:20:38 EDT 2022

% Result   : Unsatisfiable 0.15s 0.32s
% Output   : CNFRefutation 0.15s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :    9
%            Number of leaves      :    7
% Syntax   : Number of clauses     :   28 (   8 unt;   5 nHn;  27 RR)
%            Number of literals    :   64 (   0 equ;  41 neg)
%            Maximal clause size   :    4 (   2 avg)
%            Maximal term depth    :    2 (   1 avg)
%            Number of predicates  :    4 (   3 usr;   1 prp; 0-2 aty)
%            Number of functors    :    8 (   8 usr;   5 con; 0-2 aty)
%            Number of variables   :   18 (   1 sgn)

% Comments : 
%------------------------------------------------------------------------------
cnf(truthteller_or_liar,axiom,
    ( a_truth(truthteller(X))
    | a_truth(liar(X)) ) ).

cnf(truthteller_identifies_truths,axiom,
    ( ~ ask_1_if_2(X,Y)
    | ~ a_truth(truthteller(X))
    | ~ a_truth(Y)
    | answer(yes) ) ).

cnf(truthteller_denies_lies,axiom,
    ( ~ ask_1_if_2(X,Y)
    | ~ a_truth(truthteller(X))
    | a_truth(Y)
    | answer(no) ) ).

cnf(liar_denies_truths,axiom,
    ( ~ ask_1_if_2(X,Y)
    | ~ a_truth(liar(X))
    | ~ a_truth(Y)
    | answer(no) ) ).

cnf(liar_supports_lies,axiom,
    ( ~ ask_1_if_2(X,Y)
    | ~ a_truth(liar(X))
    | a_truth(Y)
    | answer(yes) ) ).

cnf(ask_c_if_a_and_b_equal,hypothesis,
    ask_1_if_2(c,equal_type(a,b)) ).

cnf(prove_there_is_an_answer,negated_conjecture,
    ~ answer(Answer) ).

cnf(refute_0_0,plain,
    ~ answer(yes),
    inference(subst,[],[prove_there_is_an_answer:[bind(Answer,$fot(yes))]]) ).

cnf(refute_0_1,plain,
    ( ~ a_truth(liar(X))
    | ~ ask_1_if_2(X,Y)
    | a_truth(Y) ),
    inference(resolve,[$cnf( answer(yes) )],[liar_supports_lies,refute_0_0]) ).

cnf(refute_0_2,plain,
    ( ~ a_truth(liar(c))
    | ~ ask_1_if_2(c,equal_type(a,b))
    | a_truth(equal_type(a,b)) ),
    inference(subst,[],[refute_0_1:[bind(X,$fot(c)),bind(Y,$fot(equal_type(a,b)))]]) ).

cnf(refute_0_3,plain,
    ( ~ a_truth(liar(c))
    | a_truth(equal_type(a,b)) ),
    inference(resolve,[$cnf( ask_1_if_2(c,equal_type(a,b)) )],[ask_c_if_a_and_b_equal,refute_0_2]) ).

cnf(refute_0_4,plain,
    ( a_truth(liar(c))
    | a_truth(truthteller(c)) ),
    inference(subst,[],[truthteller_or_liar:[bind(X,$fot(c))]]) ).

cnf(refute_0_5,plain,
    ( ~ a_truth(Y)
    | ~ a_truth(truthteller(X))
    | ~ ask_1_if_2(X,Y) ),
    inference(resolve,[$cnf( answer(yes) )],[truthteller_identifies_truths,refute_0_0]) ).

cnf(refute_0_6,plain,
    ( ~ a_truth(equal_type(a,b))
    | ~ a_truth(truthteller(c))
    | ~ ask_1_if_2(c,equal_type(a,b)) ),
    inference(subst,[],[refute_0_5:[bind(X,$fot(c)),bind(Y,$fot(equal_type(a,b)))]]) ).

cnf(refute_0_7,plain,
    ( ~ a_truth(equal_type(a,b))
    | ~ a_truth(truthteller(c)) ),
    inference(resolve,[$cnf( ask_1_if_2(c,equal_type(a,b)) )],[ask_c_if_a_and_b_equal,refute_0_6]) ).

cnf(refute_0_8,plain,
    ~ answer(no),
    inference(subst,[],[prove_there_is_an_answer:[bind(Answer,$fot(no))]]) ).

cnf(refute_0_9,plain,
    ( ~ a_truth(truthteller(X))
    | ~ ask_1_if_2(X,Y)
    | a_truth(Y) ),
    inference(resolve,[$cnf( answer(no) )],[truthteller_denies_lies,refute_0_8]) ).

cnf(refute_0_10,plain,
    ( ~ a_truth(truthteller(c))
    | ~ ask_1_if_2(c,equal_type(a,b))
    | a_truth(equal_type(a,b)) ),
    inference(subst,[],[refute_0_9:[bind(X,$fot(c)),bind(Y,$fot(equal_type(a,b)))]]) ).

cnf(refute_0_11,plain,
    ( ~ a_truth(truthteller(c))
    | a_truth(equal_type(a,b)) ),
    inference(resolve,[$cnf( ask_1_if_2(c,equal_type(a,b)) )],[ask_c_if_a_and_b_equal,refute_0_10]) ).

cnf(refute_0_12,plain,
    ( a_truth(equal_type(a,b))
    | a_truth(liar(c)) ),
    inference(resolve,[$cnf( a_truth(truthteller(c)) )],[refute_0_4,refute_0_11]) ).

cnf(refute_0_13,plain,
    ( ~ a_truth(truthteller(c))
    | a_truth(liar(c)) ),
    inference(resolve,[$cnf( a_truth(equal_type(a,b)) )],[refute_0_12,refute_0_7]) ).

cnf(refute_0_14,plain,
    a_truth(liar(c)),
    inference(resolve,[$cnf( a_truth(truthteller(c)) )],[refute_0_4,refute_0_13]) ).

cnf(refute_0_15,plain,
    a_truth(equal_type(a,b)),
    inference(resolve,[$cnf( a_truth(liar(c)) )],[refute_0_14,refute_0_3]) ).

cnf(refute_0_16,plain,
    ( ~ a_truth(Y)
    | ~ a_truth(liar(X))
    | ~ ask_1_if_2(X,Y) ),
    inference(resolve,[$cnf( answer(no) )],[liar_denies_truths,refute_0_8]) ).

cnf(refute_0_17,plain,
    ( ~ a_truth(equal_type(a,b))
    | ~ a_truth(liar(c))
    | ~ ask_1_if_2(c,equal_type(a,b)) ),
    inference(subst,[],[refute_0_16:[bind(X,$fot(c)),bind(Y,$fot(equal_type(a,b)))]]) ).

cnf(refute_0_18,plain,
    ( ~ a_truth(equal_type(a,b))
    | ~ a_truth(liar(c)) ),
    inference(resolve,[$cnf( ask_1_if_2(c,equal_type(a,b)) )],[ask_c_if_a_and_b_equal,refute_0_17]) ).

cnf(refute_0_19,plain,
    ~ a_truth(equal_type(a,b)),
    inference(resolve,[$cnf( a_truth(liar(c)) )],[refute_0_14,refute_0_18]) ).

cnf(refute_0_20,plain,
    $false,
    inference(resolve,[$cnf( a_truth(equal_type(a,b)) )],[refute_0_15,refute_0_19]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.10  % Problem  : PUZ025-1 : TPTP v8.1.0. Released v1.0.0.
% 0.10/0.11  % Command  : metis --show proof --show saturation %s
% 0.10/0.30  % Computer : n032.cluster.edu
% 0.10/0.30  % Model    : x86_64 x86_64
% 0.10/0.30  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.10/0.30  % Memory   : 8042.1875MB
% 0.10/0.30  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.10/0.30  % CPULimit : 300
% 0.10/0.30  % WCLimit  : 600
% 0.10/0.30  % DateTime : Sat May 28 23:01:26 EDT 2022
% 0.10/0.30  % CPUTime  : 
% 0.10/0.30  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 0.15/0.32  % SZS status Unsatisfiable for /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.15/0.32  
% 0.15/0.32  % SZS output start CNFRefutation for /export/starexec/sandbox/benchmark/theBenchmark.p
% See solution above
% 0.15/0.32  
%------------------------------------------------------------------------------