TSTP Solution File: PUZ021-1 by Otter---3.3

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Otter---3.3
% Problem  : PUZ021-1 : TPTP v8.1.0. Released v1.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : otter-tptp-script %s

% Computer : n009.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:23 EDT 2022

% Result   : Unsatisfiable 8.10s 8.27s
% Output   : Refutation 8.10s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   10
%            Number of leaves      :    9
% Syntax   : Number of clauses     :   28 (   7 unt;  13 nHn;  11 RR)
%            Number of literals    :   56 (   0 equ;  15 neg)
%            Maximal clause size   :    3 (   2 avg)
%            Maximal term depth    :    3 (   1 avg)
%            Number of predicates  :    3 (   2 usr;   1 prp; 0-2 aty)
%            Number of functors    :    5 (   5 usr;   1 con; 0-2 aty)
%            Number of variables   :   47 (   9 sgn)

% Comments : 
%------------------------------------------------------------------------------
cnf(3,axiom,
    ( ~ a_truth(knight(A),B)
    | ~ says(A,C)
    | a_truth(C,B) ),
    file('PUZ021-1.p',unknown),
    [] ).

cnf(4,axiom,
    ( ~ a_truth(knight(A),B)
    | says(A,C)
    | ~ a_truth(C,B) ),
    file('PUZ021-1.p',unknown),
    [] ).

cnf(5,axiom,
    ( ~ a_truth(knave(A),B)
    | ~ says(A,C)
    | ~ a_truth(C,B) ),
    file('PUZ021-1.p',unknown),
    [] ).

cnf(6,axiom,
    ( ~ a_truth(knave(A),B)
    | says(A,C)
    | a_truth(C,B) ),
    file('PUZ021-1.p',unknown),
    [] ).

cnf(7,axiom,
    ( ~ a_truth(and(A,B),C)
    | a_truth(A,C) ),
    file('PUZ021-1.p',unknown),
    [] ).

cnf(8,axiom,
    ( ~ a_truth(and(A,B),C)
    | a_truth(B,C) ),
    file('PUZ021-1.p',unknown),
    [] ).

cnf(10,axiom,
    ( ~ says(me,A)
    | ~ a_truth(and(knave(me),rich(me)),A) ),
    file('PUZ021-1.p',unknown),
    [] ).

cnf(11,plain,
    ( ~ a_truth(knight(A),B)
    | says(A,knight(A)) ),
    inference(factor,[status(thm)],[4]),
    [iquote('factor,4.1.3')] ).

cnf(12,plain,
    ( ~ a_truth(knave(A),B)
    | ~ says(A,knave(A)) ),
    inference(factor,[status(thm)],[5]),
    [iquote('factor,5.1.3')] ).

cnf(14,axiom,
    ( a_truth(knight(A),B)
    | a_truth(knave(A),B) ),
    file('PUZ021-1.p',unknown),
    [] ).

cnf(16,axiom,
    ( says(me,A)
    | a_truth(and(knave(me),rich(me)),A) ),
    file('PUZ021-1.p',unknown),
    [] ).

cnf(26,plain,
    ( a_truth(knight(A),B)
    | says(A,C)
    | a_truth(C,B) ),
    inference(hyper,[status(thm)],[14,6]),
    [iquote('hyper,14,6')] ).

cnf(27,plain,
    ( a_truth(knight(A),B)
    | says(A,knight(A)) ),
    inference(factor,[status(thm)],[26]),
    [iquote('factor,26.1.3')] ).

cnf(44,plain,
    ( a_truth(and(knave(me),rich(me)),knave(me))
    | a_truth(knight(me),A) ),
    inference(hyper,[status(thm)],[16,12,14]),
    [iquote('hyper,16,12,14')] ).

cnf(834,plain,
    ( a_truth(knight(me),A)
    | a_truth(knave(me),knave(me)) ),
    inference(hyper,[status(thm)],[44,7]),
    [iquote('hyper,44,7')] ).

cnf(1607,plain,
    ( a_truth(knight(me),A)
    | a_truth(and(knave(me),rich(me)),A) ),
    inference(factor_simp,[status(thm)],[inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[834,5,26,44])])]),
    [iquote('hyper,834,5,26,44,factor_simp,factor_simp')] ).

cnf(2765,plain,
    ( a_truth(and(knave(me),rich(me)),A)
    | a_truth(B,A)
    | a_truth(and(knave(me),rich(me)),B) ),
    inference(hyper,[status(thm)],[1607,3,16]),
    [iquote('hyper,1607,3,16')] ).

cnf(2774,plain,
    a_truth(knight(me),knight(me)),
    inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[1607,10,27])]),
    [iquote('hyper,1607,10,27,factor_simp')] ).

cnf(2775,plain,
    ( a_truth(knight(me),A)
    | a_truth(knight(me),B)
    | a_truth(A,B) ),
    inference(hyper,[status(thm)],[1607,10,26]),
    [iquote('hyper,1607,10,26')] ).

cnf(2840,plain,
    ( a_truth(and(knave(me),rich(me)),A)
    | a_truth(A,A) ),
    inference(factor,[status(thm)],[2765]),
    [iquote('factor,2765.1.3')] ).

cnf(2841,plain,
    ( a_truth(knight(me),A)
    | a_truth(A,A) ),
    inference(factor,[status(thm)],[2775]),
    [iquote('factor,2775.1.2')] ).

cnf(2867,plain,
    says(me,knight(me)),
    inference(hyper,[status(thm)],[2774,11]),
    [iquote('hyper,2774,11')] ).

cnf(7246,plain,
    ( a_truth(A,A)
    | a_truth(knave(me),A) ),
    inference(hyper,[status(thm)],[2840,7]),
    [iquote('hyper,2840,7')] ).

cnf(7534,plain,
    a_truth(A,A),
    inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[7246,5,2867,2841])]),
    [iquote('hyper,7246,5,2867,2841,factor_simp')] ).

cnf(7543,plain,
    says(A,knight(A)),
    inference(hyper,[status(thm)],[7534,11]),
    [iquote('hyper,7534,11')] ).

cnf(7574,plain,
    a_truth(A,and(B,A)),
    inference(hyper,[status(thm)],[7534,8]),
    [iquote('hyper,7534,8')] ).

cnf(7575,plain,
    a_truth(A,and(A,B)),
    inference(hyper,[status(thm)],[7534,7]),
    [iquote('hyper,7534,7')] ).

cnf(7717,plain,
    $false,
    inference(hyper,[status(thm)],[7575,5,7574,7543]),
    [iquote('hyper,7575,5,7574,7543')] ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem  : PUZ021-1 : TPTP v8.1.0. Released v1.0.0.
% 0.07/0.13  % Command  : otter-tptp-script %s
% 0.13/0.34  % Computer : n009.cluster.edu
% 0.13/0.34  % Model    : x86_64 x86_64
% 0.13/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.34  % Memory   : 8042.1875MB
% 0.13/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.13/0.34  % CPULimit : 300
% 0.13/0.34  % WCLimit  : 300
% 0.13/0.34  % DateTime : Wed Jul 27 01:45:36 EDT 2022
% 0.13/0.34  % CPUTime  : 
% 8.10/8.27  ----- Otter 3.3f, August 2004 -----
% 8.10/8.27  The process was started by sandbox2 on n009.cluster.edu,
% 8.10/8.27  Wed Jul 27 01:45:36 2022
% 8.10/8.27  The command was "./otter".  The process ID is 24750.
% 8.10/8.27  
% 8.10/8.27  set(prolog_style_variables).
% 8.10/8.27  set(auto).
% 8.10/8.27     dependent: set(auto1).
% 8.10/8.27     dependent: set(process_input).
% 8.10/8.27     dependent: clear(print_kept).
% 8.10/8.27     dependent: clear(print_new_demod).
% 8.10/8.27     dependent: clear(print_back_demod).
% 8.10/8.27     dependent: clear(print_back_sub).
% 8.10/8.27     dependent: set(control_memory).
% 8.10/8.27     dependent: assign(max_mem, 12000).
% 8.10/8.27     dependent: assign(pick_given_ratio, 4).
% 8.10/8.27     dependent: assign(stats_level, 1).
% 8.10/8.27     dependent: assign(max_seconds, 10800).
% 8.10/8.27  clear(print_given).
% 8.10/8.27  
% 8.10/8.27  list(usable).
% 8.10/8.27  0 [] -a_truth(knight(X),Y)| -a_truth(knave(X),Y).
% 8.10/8.27  0 [] a_truth(knight(X),Y)|a_truth(knave(X),Y).
% 8.10/8.27  0 [] -a_truth(rich(X),Y)| -a_truth(poor(X),Y).
% 8.10/8.27  0 [] a_truth(rich(X),Y)|a_truth(poor(X),Y).
% 8.10/8.27  0 [] -a_truth(knight(X),Z)| -says(X,Y)|a_truth(Y,Z).
% 8.10/8.27  0 [] -a_truth(knight(X),Z)|says(X,Y)| -a_truth(Y,Z).
% 8.10/8.27  0 [] -a_truth(knave(X),Z)| -says(X,Y)| -a_truth(Y,Z).
% 8.10/8.27  0 [] -a_truth(knave(X),Z)|says(X,Y)|a_truth(Y,Z).
% 8.10/8.27  0 [] -a_truth(and(X,Y),Z)|a_truth(X,Z).
% 8.10/8.27  0 [] -a_truth(and(X,Y),Z)|a_truth(Y,Z).
% 8.10/8.27  0 [] a_truth(and(X,Y),Z)| -a_truth(X,Z)| -a_truth(Y,Z).
% 8.10/8.27  0 [] -says(me,X)| -a_truth(and(knave(me),rich(me)),X).
% 8.10/8.27  0 [] says(me,X)|a_truth(and(knave(me),rich(me)),X).
% 8.10/8.27  end_of_list.
% 8.10/8.27  
% 8.10/8.27  SCAN INPUT: prop=0, horn=0, equality=0, symmetry=0, max_lits=3.
% 8.10/8.27  
% 8.10/8.27  This is a non-Horn set without equality.  The strategy will
% 8.10/8.27  be ordered hyper_res, unit deletion, and factoring, with
% 8.10/8.27  satellites in sos and with nuclei in usable.
% 8.10/8.27  
% 8.10/8.27     dependent: set(hyper_res).
% 8.10/8.27     dependent: set(factor).
% 8.10/8.27     dependent: set(unit_deletion).
% 8.10/8.27  
% 8.10/8.27  ------------> process usable:
% 8.10/8.27  ** KEPT (pick-wt=8): 1 [] -a_truth(knight(A),B)| -a_truth(knave(A),B).
% 8.10/8.27  ** KEPT (pick-wt=8): 2 [] -a_truth(rich(A),B)| -a_truth(poor(A),B).
% 8.10/8.27  ** KEPT (pick-wt=10): 3 [] -a_truth(knight(A),B)| -says(A,C)|a_truth(C,B).
% 8.10/8.27  ** KEPT (pick-wt=10): 4 [] -a_truth(knight(A),B)|says(A,C)| -a_truth(C,B).
% 8.10/8.27  ** KEPT (pick-wt=10): 5 [] -a_truth(knave(A),B)| -says(A,C)| -a_truth(C,B).
% 8.10/8.27  ** KEPT (pick-wt=10): 6 [] -a_truth(knave(A),B)|says(A,C)|a_truth(C,B).
% 8.10/8.27  ** KEPT (pick-wt=8): 7 [] -a_truth(and(A,B),C)|a_truth(A,C).
% 8.10/8.27  ** KEPT (pick-wt=8): 8 [] -a_truth(and(A,B),C)|a_truth(B,C).
% 8.10/8.27  ** KEPT (pick-wt=11): 9 [] a_truth(and(A,B),C)| -a_truth(A,C)| -a_truth(B,C).
% 8.10/8.27  ** KEPT (pick-wt=10): 10 [] -says(me,A)| -a_truth(and(knave(me),rich(me)),A).
% 8.10/8.27  
% 8.10/8.27  ------------> process sos:
% 8.10/8.27  ** KEPT (pick-wt=8): 14 [] a_truth(knight(A),B)|a_truth(knave(A),B).
% 8.10/8.27  ** KEPT (pick-wt=8): 15 [] a_truth(rich(A),B)|a_truth(poor(A),B).
% 8.10/8.27  ** KEPT (pick-wt=10): 16 [] says(me,A)|a_truth(and(knave(me),rich(me)),A).
% 8.10/8.27  
% 8.10/8.27  ======= end of input processing =======
% 8.10/8.27  
% 8.10/8.27  =========== start of search ===========
% 8.10/8.27  
% 8.10/8.27  
% 8.10/8.27  Resetting weight limit to 15.
% 8.10/8.27  
% 8.10/8.27  
% 8.10/8.27  Resetting weight limit to 15.
% 8.10/8.27  
% 8.10/8.27  sos_size=6707
% 8.10/8.27  
% 8.10/8.27  
% 8.10/8.27  Resetting weight limit to 14.
% 8.10/8.27  
% 8.10/8.27  
% 8.10/8.27  Resetting weight limit to 14.
% 8.10/8.27  
% 8.10/8.27  sos_size=6836
% 8.10/8.27  
% 8.10/8.27  
% 8.10/8.27  Resetting weight limit to 13.
% 8.10/8.27  
% 8.10/8.27  
% 8.10/8.27  Resetting weight limit to 13.
% 8.10/8.27  
% 8.10/8.27  sos_size=5785
% 8.10/8.27  
% 8.10/8.27  -------- PROOF -------- 
% 8.10/8.27  
% 8.10/8.27  -----> EMPTY CLAUSE at   6.42 sec ----> 7717 [hyper,7575,5,7574,7543] $F.
% 8.10/8.27  
% 8.10/8.27  Length of proof is 18.  Level of proof is 9.
% 8.10/8.27  
% 8.10/8.27  ---------------- PROOF ----------------
% 8.10/8.27  % SZS status Unsatisfiable
% 8.10/8.27  % SZS output start Refutation
% See solution above
% 8.10/8.27  ------------ end of proof -------------
% 8.10/8.27  
% 8.10/8.27  
% 8.10/8.27  Search stopped by max_proofs option.
% 8.10/8.27  
% 8.10/8.27  
% 8.10/8.27  Search stopped by max_proofs option.
% 8.10/8.27  
% 8.10/8.27  ============ end of search ============
% 8.10/8.27  
% 8.10/8.27  -------------- statistics -------------
% 8.10/8.27  clauses given                 90
% 8.10/8.27  clauses generated          37775
% 8.10/8.27  clauses kept                7716
% 8.10/8.27  clauses forward subsumed    9993
% 8.10/8.27  clauses back subsumed       2659
% 8.10/8.27  Kbytes malloced             4882
% 8.10/8.27  
% 8.10/8.27  ----------- times (seconds) -----------
% 8.10/8.27  user CPU time          6.42          (0 hr, 0 min, 6 sec)
% 8.10/8.27  system CPU time        0.00          (0 hr, 0 min, 0 sec)
% 8.10/8.27  wall-clock time        8             (0 hr, 0 min, 8 sec)
% 8.10/8.27  
% 8.10/8.27  That finishes the proof of the theorem.
% 8.10/8.27  
% 8.10/8.27  Process 24750 finished Wed Jul 27 01:45:44 2022
% 8.10/8.27  Otter interrupted
% 8.10/8.27  PROOF FOUND
%------------------------------------------------------------------------------