TSTP Solution File: PUZ035-2 by Otter---3.3

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Otter---3.3
% Problem  : PUZ035-2 : TPTP v8.1.0. Released v2.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : otter-tptp-script %s

% Computer : n014.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  : 300s
% DateTime : Wed Jul 27 13:11:26 EDT 2022

% Result   : Unsatisfiable 1.64s 1.82s
% Output   : Refutation 1.64s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :    8
%            Number of leaves      :   10
% Syntax   : Number of clauses     :   22 (   6 unt;  11 nHn;  22 RR)
%            Number of literals    :   44 (   0 equ;  12 neg)
%            Maximal clause size   :    4 (   2 avg)
%            Maximal term depth    :    1 (   1 avg)
%            Number of predicates  :    6 (   5 usr;   1 prp; 0-2 aty)
%            Number of functors    :    6 (   6 usr;   6 con; 0-0 aty)
%            Number of variables   :    8 (   4 sgn)

% Comments : 
%------------------------------------------------------------------------------
cnf(1,axiom,
    ( ~ person(A)
    | isa(A,knight)
    | isa(A,knave) ),
    file('PUZ035-2.p',unknown),
    [] ).

cnf(2,axiom,
    ( ~ isa(A,knight)
    | ~ isa(A,knave) ),
    file('PUZ035-2.p',unknown),
    [] ).

cnf(3,axiom,
    ( ~ isa(A,knight)
    | tell_the_truth(A) ),
    file('PUZ035-2.p',unknown),
    [] ).

cnf(4,axiom,
    ( ~ isa(A,knave)
    | lies(A) ),
    file('PUZ035-2.p',unknown),
    [] ).

cnf(8,axiom,
    ( isa(asked,knight)
    | isa(other,knight)
    | ~ response(no)
    | ~ lies(asked) ),
    file('PUZ035-2.p',unknown),
    [] ).

cnf(11,axiom,
    ( response(yes)
    | ~ tell_the_truth(asked)
    | ~ isa(A,knight) ),
    file('PUZ035-2.p',unknown),
    [] ).

cnf(13,axiom,
    ( ~ response(A)
    | ~ isa(asked,B)
    | ~ isa(other,C) ),
    file('PUZ035-2.p',unknown),
    [] ).

cnf(14,axiom,
    ( response(yes)
    | response(no) ),
    file('PUZ035-2.p',unknown),
    [] ).

cnf(15,axiom,
    person(asked),
    file('PUZ035-2.p',unknown),
    [] ).

cnf(16,axiom,
    person(other),
    file('PUZ035-2.p',unknown),
    [] ).

cnf(18,plain,
    ( isa(asked,knight)
    | isa(asked,knave) ),
    inference(hyper,[status(thm)],[15,1]),
    [iquote('hyper,15,1')] ).

cnf(20,plain,
    ( isa(other,knight)
    | isa(other,knave) ),
    inference(hyper,[status(thm)],[16,1]),
    [iquote('hyper,16,1')] ).

cnf(23,plain,
    ( isa(asked,knave)
    | tell_the_truth(asked) ),
    inference(hyper,[status(thm)],[18,3]),
    [iquote('hyper,18,3')] ).

cnf(24,plain,
    ( isa(asked,knight)
    | lies(asked) ),
    inference(hyper,[status(thm)],[18,4]),
    [iquote('hyper,18,4')] ).

cnf(25,plain,
    ( isa(asked,knave)
    | response(yes) ),
    inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[23,11,18])]),
    [iquote('hyper,23,11,18,factor_simp')] ).

cnf(26,plain,
    ( isa(asked,knight)
    | isa(other,knight)
    | response(yes) ),
    inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[24,8,14])]),
    [iquote('hyper,24,8,14,factor_simp')] ).

cnf(27,plain,
    ( isa(other,knave)
    | isa(asked,knave) ),
    inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[20,13,25,18])]),
    [iquote('hyper,20,13,25,18,factor_simp')] ).

cnf(35,plain,
    ( isa(asked,knight)
    | isa(other,knight) ),
    inference(factor_simp,[status(thm)],[inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[26,13,18,20])])]),
    [iquote('hyper,26,13,18,20,factor_simp,factor_simp')] ).

cnf(36,plain,
    isa(asked,knave),
    inference(factor_simp,[status(thm)],[inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[27,13,25,18])])]),
    [iquote('hyper,27,13,25,18,factor_simp,factor_simp')] ).

cnf(44,plain,
    isa(other,knight),
    inference(hyper,[status(thm)],[35,2,36]),
    [iquote('hyper,35,2,36')] ).

cnf(48,plain,
    response(yes),
    inference(hyper,[status(thm)],[44,13,14,36]),
    [iquote('hyper,44,13,14,36')] ).

cnf(51,plain,
    $false,
    inference(hyper,[status(thm)],[48,13,36,44]),
    [iquote('hyper,48,13,36,44')] ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : PUZ035-2 : TPTP v8.1.0. Released v2.0.0.
% 0.12/0.13  % Command  : otter-tptp-script %s
% 0.12/0.34  % Computer : n014.cluster.edu
% 0.12/0.34  % Model    : x86_64 x86_64
% 0.12/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.34  % Memory   : 8042.1875MB
% 0.12/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.34  % CPULimit : 300
% 0.12/0.34  % WCLimit  : 300
% 0.12/0.34  % DateTime : Wed Jul 27 01:48:39 EDT 2022
% 0.12/0.34  % CPUTime  : 
% 1.64/1.82  ----- Otter 3.3f, August 2004 -----
% 1.64/1.82  The process was started by sandbox2 on n014.cluster.edu,
% 1.64/1.82  Wed Jul 27 01:48:39 2022
% 1.64/1.82  The command was "./otter".  The process ID is 23626.
% 1.64/1.82  
% 1.64/1.82  set(prolog_style_variables).
% 1.64/1.82  set(auto).
% 1.64/1.82     dependent: set(auto1).
% 1.64/1.82     dependent: set(process_input).
% 1.64/1.82     dependent: clear(print_kept).
% 1.64/1.82     dependent: clear(print_new_demod).
% 1.64/1.82     dependent: clear(print_back_demod).
% 1.64/1.82     dependent: clear(print_back_sub).
% 1.64/1.82     dependent: set(control_memory).
% 1.64/1.82     dependent: assign(max_mem, 12000).
% 1.64/1.82     dependent: assign(pick_given_ratio, 4).
% 1.64/1.82     dependent: assign(stats_level, 1).
% 1.64/1.82     dependent: assign(max_seconds, 10800).
% 1.64/1.82  clear(print_given).
% 1.64/1.82  
% 1.64/1.82  list(usable).
% 1.64/1.82  0 [] -person(X)|isa(X,knight)|isa(X,knave).
% 1.64/1.82  0 [] -isa(X,knight)| -isa(X,knave).
% 1.64/1.82  0 [] -isa(X,knight)|tell_the_truth(X).
% 1.64/1.82  0 [] -isa(X,knave)|lies(X).
% 1.64/1.82  0 [] -tell_the_truth(X)| -lies(X).
% 1.64/1.82  0 [] -person(X)|tell_the_truth(X)|lies(X).
% 1.64/1.82  0 [] isa(asked,knight)|isa(other,knight)| -response(yes)| -tell_the_truth(asked).
% 1.64/1.82  0 [] isa(asked,knight)|isa(other,knight)| -response(no)| -lies(asked).
% 1.64/1.82  0 [] -response(yes)| -lies(asked)| -isa(Anyone,knight).
% 1.64/1.82  0 [] -response(no)| -tell_the_truth(asked)| -isa(Anyone,knight).
% 1.64/1.82  0 [] response(yes)| -tell_the_truth(asked)| -isa(Anyone,knight).
% 1.64/1.82  0 [] response(no)|isa(asked,knight)|isa(other,knight)| -tell_the_truth(asked).
% 1.64/1.82  0 [] response(yes)|response(no).
% 1.64/1.82  0 [] person(asked).
% 1.64/1.82  0 [] person(other).
% 1.64/1.82  0 [] -response(A)| -isa(asked,X)| -isa(other,Y).
% 1.64/1.82  end_of_list.
% 1.64/1.82  
% 1.64/1.82  SCAN INPUT: prop=0, horn=0, equality=0, symmetry=0, max_lits=4.
% 1.64/1.82  
% 1.64/1.82  This is a non-Horn set without equality.  The strategy will
% 1.64/1.82  be ordered hyper_res, unit deletion, and factoring, with
% 1.64/1.82  satellites in sos and with nuclei in usable.
% 1.64/1.82  
% 1.64/1.82     dependent: set(hyper_res).
% 1.64/1.82     dependent: set(factor).
% 1.64/1.82     dependent: set(unit_deletion).
% 1.64/1.82  
% 1.64/1.82  ------------> process usable:
% 1.64/1.82  ** KEPT (pick-wt=8): 1 [] -person(A)|isa(A,knight)|isa(A,knave).
% 1.64/1.82  ** KEPT (pick-wt=6): 2 [] -isa(A,knight)| -isa(A,knave).
% 1.64/1.82  ** KEPT (pick-wt=5): 3 [] -isa(A,knight)|tell_the_truth(A).
% 1.64/1.82  ** KEPT (pick-wt=5): 4 [] -isa(A,knave)|lies(A).
% 1.64/1.82  ** KEPT (pick-wt=4): 5 [] -tell_the_truth(A)| -lies(A).
% 1.64/1.82  ** KEPT (pick-wt=6): 6 [] -person(A)|tell_the_truth(A)|lies(A).
% 1.64/1.82  ** KEPT (pick-wt=10): 7 [] isa(asked,knight)|isa(other,knight)| -response(yes)| -tell_the_truth(asked).
% 1.64/1.82  ** KEPT (pick-wt=10): 8 [] isa(asked,knight)|isa(other,knight)| -response(no)| -lies(asked).
% 1.64/1.82  ** KEPT (pick-wt=7): 9 [] -response(yes)| -lies(asked)| -isa(A,knight).
% 1.64/1.82  ** KEPT (pick-wt=7): 10 [] -response(no)| -tell_the_truth(asked)| -isa(A,knight).
% 1.64/1.82  ** KEPT (pick-wt=7): 11 [] response(yes)| -tell_the_truth(asked)| -isa(A,knight).
% 1.64/1.82  ** KEPT (pick-wt=10): 12 [] response(no)|isa(asked,knight)|isa(other,knight)| -tell_the_truth(asked).
% 1.64/1.82  ** KEPT (pick-wt=8): 13 [] -response(A)| -isa(asked,B)| -isa(other,C).
% 1.64/1.82  
% 1.64/1.82  ------------> process sos:
% 1.64/1.82  ** KEPT (pick-wt=4): 14 [] response(yes)|response(no).
% 1.64/1.82  ** KEPT (pick-wt=2): 15 [] person(asked).
% 1.64/1.82  ** KEPT (pick-wt=2): 16 [] person(other).
% 1.64/1.82  
% 1.64/1.82  ======= end of input processing =======
% 1.64/1.82  
% 1.64/1.82  =========== start of search ===========
% 1.64/1.82  
% 1.64/1.82  -------- PROOF -------- 
% 1.64/1.82  
% 1.64/1.82  -----> EMPTY CLAUSE at   0.00 sec ----> 51 [hyper,48,13,36,44] $F.
% 1.64/1.82  
% 1.64/1.82  Length of proof is 11.  Level of proof is 7.
% 1.64/1.82  
% 1.64/1.82  ---------------- PROOF ----------------
% 1.64/1.82  % SZS status Unsatisfiable
% 1.64/1.82  % SZS output start Refutation
% See solution above
% 1.64/1.82  ------------ end of proof -------------
% 1.64/1.82  
% 1.64/1.82  
% 1.64/1.82  Search stopped by max_proofs option.
% 1.64/1.82  
% 1.64/1.82  
% 1.64/1.82  Search stopped by max_proofs option.
% 1.64/1.82  
% 1.64/1.82  ============ end of search ============
% 1.64/1.82  
% 1.64/1.82  -------------- statistics -------------
% 1.64/1.82  clauses given                 19
% 1.64/1.82  clauses generated            101
% 1.64/1.82  clauses kept                  50
% 1.64/1.82  clauses forward subsumed      66
% 1.64/1.82  clauses back subsumed         33
% 1.64/1.82  Kbytes malloced              976
% 1.64/1.82  
% 1.64/1.82  ----------- times (seconds) -----------
% 1.64/1.82  user CPU time          0.00          (0 hr, 0 min, 0 sec)
% 1.64/1.82  system CPU time        0.00          (0 hr, 0 min, 0 sec)
% 1.64/1.82  wall-clock time        2             (0 hr, 0 min, 2 sec)
% 1.64/1.82  
% 1.64/1.82  That finishes the proof of the theorem.
% 1.64/1.82  
% 1.64/1.82  Process 23626 finished Wed Jul 27 01:48:41 2022
% 1.64/1.82  Otter interrupted
% 1.64/1.82  PROOF FOUND
%------------------------------------------------------------------------------