TSTP Solution File: PUZ035-4 by Otter---3.3
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Otter---3.3
% Problem : PUZ035-4 : TPTP v8.1.0. Released v2.0.0.
% Transfm : none
% Format : tptp:raw
% Command : otter-tptp-script %s
% Computer : n015.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.96s 2.15s
% Output : Refutation 1.96s
% Verified :
% SZS Type : Refutation
% Derivation depth : 7
% Number of leaves : 5
% Syntax : Number of clauses : 15 ( 6 unt; 8 nHn; 15 RR)
% Number of literals : 27 ( 0 equ; 4 neg)
% Maximal clause size : 3 ( 1 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 : 4 ( 3 sgn)
% Comments :
%------------------------------------------------------------------------------
cnf(1,axiom,
( ~ person(A)
| truth(isa(A,knight))
| truth(isa(A,knave)) ),
file('PUZ035-4.p',unknown),
[] ).
cnf(11,axiom,
( ~ truth(isa(asked,A))
| ~ truth(isa(other,B))
| ~ says(asked,C) ),
file('PUZ035-4.p',unknown),
[] ).
cnf(13,axiom,
( says(asked,or(isa(asked,knight),isa(other,knight)))
| says(asked,not(or(isa(asked,knight),isa(other,knight)))) ),
file('PUZ035-4.p',unknown),
[] ).
cnf(14,axiom,
person(asked),
file('PUZ035-4.p',unknown),
[] ).
cnf(15,axiom,
person(other),
file('PUZ035-4.p',unknown),
[] ).
cnf(19,plain,
( truth(isa(asked,knight))
| truth(isa(asked,knave)) ),
inference(hyper,[status(thm)],[14,1]),
[iquote('hyper,14,1')] ).
cnf(20,plain,
( truth(isa(other,knight))
| truth(isa(other,knave)) ),
inference(hyper,[status(thm)],[15,1]),
[iquote('hyper,15,1')] ).
cnf(23,plain,
( truth(isa(other,knave))
| truth(isa(asked,knight))
| says(asked,or(isa(asked,knight),isa(other,knight))) ),
inference(hyper,[status(thm)],[20,11,19,13]),
[iquote('hyper,20,11,19,13')] ).
cnf(33,plain,
( truth(isa(asked,knight))
| says(asked,or(isa(asked,knight),isa(other,knight))) ),
inference(factor_simp,[status(thm)],[inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[23,11,19,13])])]),
[iquote('hyper,23,11,19,13,factor_simp,factor_simp')] ).
cnf(34,plain,
( truth(isa(other,knave))
| says(asked,or(isa(asked,knight),isa(other,knight))) ),
inference(factor_simp,[status(thm)],[inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[23,11,20,13])])]),
[iquote('hyper,23,11,20,13,factor_simp,factor_simp')] ).
cnf(37,plain,
says(asked,or(isa(asked,knight),isa(other,knight))),
inference(factor_simp,[status(thm)],[inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[34,11,33,13])])]),
[iquote('hyper,34,11,33,13,factor_simp,factor_simp')] ).
cnf(38,plain,
( truth(isa(asked,knight))
| truth(isa(other,knight)) ),
inference(hyper,[status(thm)],[37,11,19,20]),
[iquote('hyper,37,11,19,20')] ).
cnf(46,plain,
truth(isa(other,knight)),
inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[38,11,20,37])]),
[iquote('hyper,38,11,20,37,factor_simp')] ).
cnf(47,plain,
truth(isa(asked,knight)),
inference(factor_simp,[status(thm)],[inference(hyper,[status(thm)],[38,11,19,37])]),
[iquote('hyper,38,11,19,37,factor_simp')] ).
cnf(48,plain,
$false,
inference(hyper,[status(thm)],[47,11,46,37]),
[iquote('hyper,47,11,46,37')] ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.03/0.11 % Problem : PUZ035-4 : TPTP v8.1.0. Released v2.0.0.
% 0.03/0.12 % Command : otter-tptp-script %s
% 0.12/0.33 % Computer : n015.cluster.edu
% 0.12/0.33 % Model : x86_64 x86_64
% 0.12/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.33 % Memory : 8042.1875MB
% 0.12/0.33 % OS : Linux 3.10.0-693.el7.x86_64
% 0.12/0.33 % CPULimit : 300
% 0.12/0.33 % WCLimit : 300
% 0.12/0.33 % DateTime : Wed Jul 27 01:58:56 EDT 2022
% 0.12/0.33 % CPUTime :
% 1.96/2.15 ----- Otter 3.3f, August 2004 -----
% 1.96/2.15 The process was started by sandbox2 on n015.cluster.edu,
% 1.96/2.15 Wed Jul 27 01:58:56 2022
% 1.96/2.15 The command was "./otter". The process ID is 29328.
% 1.96/2.15
% 1.96/2.15 set(prolog_style_variables).
% 1.96/2.15 set(auto).
% 1.96/2.15 dependent: set(auto1).
% 1.96/2.15 dependent: set(process_input).
% 1.96/2.15 dependent: clear(print_kept).
% 1.96/2.15 dependent: clear(print_new_demod).
% 1.96/2.15 dependent: clear(print_back_demod).
% 1.96/2.15 dependent: clear(print_back_sub).
% 1.96/2.15 dependent: set(control_memory).
% 1.96/2.15 dependent: assign(max_mem, 12000).
% 1.96/2.15 dependent: assign(pick_given_ratio, 4).
% 1.96/2.15 dependent: assign(stats_level, 1).
% 1.96/2.15 dependent: assign(max_seconds, 10800).
% 1.96/2.15 clear(print_given).
% 1.96/2.15
% 1.96/2.15 list(usable).
% 1.96/2.15 0 [] -person(P)|truth(isa(P,knight))|truth(isa(P,knave)).
% 1.96/2.15 0 [] -truth(isa(P,knight))| -truth(isa(P,knave)).
% 1.96/2.15 0 [] truth(S)| -says(P,S)| -truth(isa(P,knight)).
% 1.96/2.15 0 [] truth(isa(P,knight))| -says(P,S)| -truth(S).
% 1.96/2.15 0 [] says(asked,or(isa(asked,knight),isa(other,knight)))|says(asked,not(or(isa(asked,knight),isa(other,knight)))).
% 1.96/2.15 0 [] truth(S)|truth(not(S))| -says(Anyone,S).
% 1.96/2.15 0 [] truth(S)|truth(not(S))| -says(Anyone,not(S)).
% 1.96/2.15 0 [] -truth(S)| -truth(not(S)).
% 1.96/2.15 0 [] truth(S1)|truth(S2)| -truth(or(S1,S2)).
% 1.96/2.15 0 [] -truth(S1)| -truth(not(or(S1,Anything))).
% 1.96/2.15 0 [] -truth(S2)| -truth(not(or(Anything,S2))).
% 1.96/2.15 0 [] person(asked).
% 1.96/2.15 0 [] person(other).
% 1.96/2.15 0 [] -truth(isa(asked,P1))| -truth(isa(other,P2))| -says(asked,S).
% 1.96/2.15 end_of_list.
% 1.96/2.15
% 1.96/2.15 SCAN INPUT: prop=0, horn=0, equality=0, symmetry=0, max_lits=3.
% 1.96/2.15
% 1.96/2.15 This is a non-Horn set without equality. The strategy will
% 1.96/2.15 be ordered hyper_res, unit deletion, and factoring, with
% 1.96/2.15 satellites in sos and with nuclei in usable.
% 1.96/2.15
% 1.96/2.15 dependent: set(hyper_res).
% 1.96/2.15 dependent: set(factor).
% 1.96/2.15 dependent: set(unit_deletion).
% 1.96/2.15
% 1.96/2.15 ------------> process usable:
% 1.96/2.15 ** KEPT (pick-wt=10): 1 [] -person(A)|truth(isa(A,knight))|truth(isa(A,knave)).
% 1.96/2.15 ** KEPT (pick-wt=8): 2 [] -truth(isa(A,knight))| -truth(isa(A,knave)).
% 1.96/2.15 ** KEPT (pick-wt=9): 3 [] truth(A)| -says(B,A)| -truth(isa(B,knight)).
% 1.96/2.15 ** KEPT (pick-wt=9): 4 [] truth(isa(A,knight))| -says(A,B)| -truth(B).
% 1.96/2.15 ** KEPT (pick-wt=8): 5 [] truth(A)|truth(not(A))| -says(B,A).
% 1.96/2.15 ** KEPT (pick-wt=9): 6 [] truth(A)|truth(not(A))| -says(B,not(A)).
% 1.96/2.15 ** KEPT (pick-wt=5): 7 [] -truth(A)| -truth(not(A)).
% 1.96/2.15 ** KEPT (pick-wt=8): 8 [] truth(A)|truth(B)| -truth(or(A,B)).
% 1.96/2.15 ** KEPT (pick-wt=7): 9 [] -truth(A)| -truth(not(or(A,B))).
% 1.96/2.15 ** KEPT (pick-wt=7): 10 [] -truth(A)| -truth(not(or(B,A))).
% 1.96/2.15 ** KEPT (pick-wt=11): 11 [] -truth(isa(asked,A))| -truth(isa(other,B))| -says(asked,C).
% 1.96/2.15
% 1.96/2.15 ------------> process sos:
% 1.96/2.15 ** KEPT (pick-wt=19): 13 [] says(asked,or(isa(asked,knight),isa(other,knight)))|says(asked,not(or(isa(asked,knight),isa(other,knight)))).
% 1.96/2.15 ** KEPT (pick-wt=2): 14 [] person(asked).
% 1.96/2.15 ** KEPT (pick-wt=2): 15 [] person(other).
% 1.96/2.15
% 1.96/2.15 ======= end of input processing =======
% 1.96/2.15
% 1.96/2.15 =========== start of search ===========
% 1.96/2.15
% 1.96/2.15 -------- PROOF --------
% 1.96/2.15
% 1.96/2.15 -----> EMPTY CLAUSE at 0.00 sec ----> 48 [hyper,47,11,46,37] $F.
% 1.96/2.15
% 1.96/2.15 Length of proof is 9. Level of proof is 6.
% 1.96/2.15
% 1.96/2.15 ---------------- PROOF ----------------
% 1.96/2.15 % SZS status Unsatisfiable
% 1.96/2.15 % SZS output start Refutation
% See solution above
% 1.96/2.15 ------------ end of proof -------------
% 1.96/2.15
% 1.96/2.15
% 1.96/2.15 Search stopped by max_proofs option.
% 1.96/2.15
% 1.96/2.15
% 1.96/2.15 Search stopped by max_proofs option.
% 1.96/2.15
% 1.96/2.15 ============ end of search ============
% 1.96/2.15
% 1.96/2.15 -------------- statistics -------------
% 1.96/2.15 clauses given 14
% 1.96/2.15 clauses generated 87
% 1.96/2.15 clauses kept 47
% 1.96/2.15 clauses forward subsumed 53
% 1.96/2.15 clauses back subsumed 25
% 1.96/2.15 Kbytes malloced 976
% 1.96/2.15
% 1.96/2.15 ----------- times (seconds) -----------
% 1.96/2.15 user CPU time 0.00 (0 hr, 0 min, 0 sec)
% 1.96/2.15 system CPU time 0.00 (0 hr, 0 min, 0 sec)
% 1.96/2.15 wall-clock time 2 (0 hr, 0 min, 2 sec)
% 1.96/2.15
% 1.96/2.15 That finishes the proof of the theorem.
% 1.96/2.15
% 1.96/2.15 Process 29328 finished Wed Jul 27 01:58:58 2022
% 1.96/2.15 Otter interrupted
% 1.96/2.15 PROOF FOUND
%------------------------------------------------------------------------------