TSTP Solution File: PUZ031+3 by Otter---3.3
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Otter---3.3
% Problem : PUZ031+3 : TPTP v8.1.0. Released v4.1.0.
% Transfm : none
% Format : tptp:raw
% Command : otter-tptp-script %s
% Computer : n023.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:25 EDT 2022
% Result : Theorem 1.97s 2.16s
% Output : Refutation 1.97s
% Verified :
% SZS Type : Refutation
% Derivation depth : 8
% Number of leaves : 19
% Syntax : Number of clauses : 37 ( 19 unt; 5 nHn; 37 RR)
% Number of literals : 74 ( 0 equ; 35 neg)
% Maximal clause size : 8 ( 2 avg)
% Maximal term depth : 2 ( 1 avg)
% Number of predicates : 10 ( 9 usr; 1 prp; 0-2 aty)
% Number of functors : 6 ( 6 usr; 5 con; 0-1 aty)
% Number of variables : 27 ( 0 sgn)
% Comments :
%------------------------------------------------------------------------------
cnf(2,axiom,
( ~ wolf(A)
| animal(A) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(3,axiom,
( ~ fox(A)
| animal(A) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(4,axiom,
( ~ bird(A)
| animal(A) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(6,axiom,
( ~ snail(A)
| animal(A) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(8,axiom,
( ~ grain(A)
| plant(A) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(9,axiom,
( ~ animal(A)
| ~ plant(B)
| eats(A,B)
| ~ animal(C)
| ~ much_smaller(C,A)
| ~ plant(D)
| ~ eats(C,D)
| eats(A,C) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(10,axiom,
( ~ bird(A)
| ~ snail(B)
| much_smaller(B,A) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(12,axiom,
( ~ bird(A)
| ~ fox(B)
| much_smaller(A,B) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(13,axiom,
( ~ fox(A)
| ~ wolf(B)
| much_smaller(A,B) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(15,axiom,
( ~ wolf(A)
| ~ grain(B)
| ~ eats(A,B) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(17,axiom,
( ~ bird(A)
| ~ snail(B)
| ~ eats(A,B) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(20,axiom,
( ~ snail(A)
| plant(dollar_f2(A)) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(21,axiom,
( ~ snail(A)
| eats(A,dollar_f2(A)) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(22,axiom,
( ~ animal(A)
| ~ animal(B)
| ~ grain(C)
| ~ eats(B,C)
| ~ eats(A,B) ),
file('PUZ031+3.p',unknown),
[] ).
cnf(24,plain,
( ~ animal(A)
| ~ plant(B)
| eats(A,B)
| ~ animal(C)
| ~ much_smaller(C,A)
| ~ eats(C,B)
| eats(A,C) ),
inference(factor,[status(thm)],[9]),
[iquote('factor,9.2.6')] ).
cnf(32,axiom,
wolf(dollar_c3),
file('PUZ031+3.p',unknown),
[] ).
cnf(33,axiom,
fox(dollar_c4),
file('PUZ031+3.p',unknown),
[] ).
cnf(34,axiom,
bird(dollar_c5),
file('PUZ031+3.p',unknown),
[] ).
cnf(36,axiom,
snail(dollar_c7),
file('PUZ031+3.p',unknown),
[] ).
cnf(38,axiom,
grain(dollar_c9),
file('PUZ031+3.p',unknown),
[] ).
cnf(40,plain,
animal(dollar_c3),
inference(hyper,[status(thm)],[32,2]),
[iquote('hyper,32,2')] ).
cnf(41,plain,
much_smaller(dollar_c4,dollar_c3),
inference(hyper,[status(thm)],[33,13,32]),
[iquote('hyper,33,13,32')] ).
cnf(42,plain,
animal(dollar_c4),
inference(hyper,[status(thm)],[33,3]),
[iquote('hyper,33,3')] ).
cnf(43,plain,
much_smaller(dollar_c5,dollar_c4),
inference(hyper,[status(thm)],[34,12,33]),
[iquote('hyper,34,12,33')] ).
cnf(44,plain,
animal(dollar_c5),
inference(hyper,[status(thm)],[34,4]),
[iquote('hyper,34,4')] ).
cnf(50,plain,
eats(dollar_c7,dollar_f2(dollar_c7)),
inference(hyper,[status(thm)],[36,21]),
[iquote('hyper,36,21')] ).
cnf(51,plain,
plant(dollar_f2(dollar_c7)),
inference(hyper,[status(thm)],[36,20]),
[iquote('hyper,36,20')] ).
cnf(52,plain,
much_smaller(dollar_c7,dollar_c5),
inference(hyper,[status(thm)],[36,10,34]),
[iquote('hyper,36,10,34')] ).
cnf(53,plain,
animal(dollar_c7),
inference(hyper,[status(thm)],[36,6]),
[iquote('hyper,36,6')] ).
cnf(55,plain,
plant(dollar_c9),
inference(hyper,[status(thm)],[38,8]),
[iquote('hyper,38,8')] ).
cnf(65,plain,
( eats(dollar_c5,dollar_c9)
| eats(dollar_c5,dollar_c7) ),
inference(hyper,[status(thm)],[52,9,44,55,53,51,50]),
[iquote('hyper,52,9,44,55,53,51,50')] ).
cnf(72,plain,
eats(dollar_c5,dollar_c9),
inference(hyper,[status(thm)],[65,17,34,36]),
[iquote('hyper,65,17,34,36')] ).
cnf(74,plain,
( eats(dollar_c4,dollar_c9)
| eats(dollar_c4,dollar_c5) ),
inference(hyper,[status(thm)],[72,24,42,55,44,43]),
[iquote('hyper,72,24,42,55,44,43')] ).
cnf(84,plain,
eats(dollar_c4,dollar_c9),
inference(hyper,[status(thm)],[74,22,42,44,38,72]),
[iquote('hyper,74,22,42,44,38,72')] ).
cnf(85,plain,
( eats(dollar_c3,dollar_c9)
| eats(dollar_c3,dollar_c4) ),
inference(hyper,[status(thm)],[84,24,40,55,42,41]),
[iquote('hyper,84,24,40,55,42,41')] ).
cnf(91,plain,
eats(dollar_c3,dollar_c4),
inference(hyper,[status(thm)],[85,15,32,38]),
[iquote('hyper,85,15,32,38')] ).
cnf(93,plain,
$false,
inference(hyper,[status(thm)],[91,22,40,42,38,84]),
[iquote('hyper,91,22,40,42,38,84')] ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.12/0.12 % Problem : PUZ031+3 : TPTP v8.1.0. Released v4.1.0.
% 0.12/0.13 % Command : otter-tptp-script %s
% 0.12/0.34 % Computer : n023.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 02:08:33 EDT 2022
% 0.12/0.34 % CPUTime :
% 1.97/2.15 ----- Otter 3.3f, August 2004 -----
% 1.97/2.15 The process was started by sandbox on n023.cluster.edu,
% 1.97/2.15 Wed Jul 27 02:08:33 2022
% 1.97/2.15 The command was "./otter". The process ID is 16373.
% 1.97/2.15
% 1.97/2.15 set(prolog_style_variables).
% 1.97/2.15 set(auto).
% 1.97/2.15 dependent: set(auto1).
% 1.97/2.15 dependent: set(process_input).
% 1.97/2.15 dependent: clear(print_kept).
% 1.97/2.15 dependent: clear(print_new_demod).
% 1.97/2.15 dependent: clear(print_back_demod).
% 1.97/2.15 dependent: clear(print_back_sub).
% 1.97/2.15 dependent: set(control_memory).
% 1.97/2.15 dependent: assign(max_mem, 12000).
% 1.97/2.15 dependent: assign(pick_given_ratio, 4).
% 1.97/2.15 dependent: assign(stats_level, 1).
% 1.97/2.15 dependent: assign(max_seconds, 10800).
% 1.97/2.15 clear(print_given).
% 1.97/2.15
% 1.97/2.15 formula_list(usable).
% 1.97/2.15 exists A edible(A).
% 1.97/2.15 exists A animal(A).
% 1.97/2.15 all A (animal(A)->edible(A)).
% 1.97/2.15 exists A wolf(A).
% 1.97/2.15 all A (wolf(A)->animal(A)).
% 1.97/2.15 exists A fox(A).
% 1.97/2.15 all A (fox(A)->animal(A)).
% 1.97/2.15 exists A bird(A).
% 1.97/2.15 all A (bird(A)->animal(A)).
% 1.97/2.15 exists A caterpillar(A).
% 1.97/2.15 all A (caterpillar(A)->animal(A)).
% 1.97/2.15 exists A snail(A).
% 1.97/2.15 all A (snail(A)->animal(A)).
% 1.97/2.15 exists A plant(A).
% 1.97/2.15 all A (plant(A)->edible(A)).
% 1.97/2.15 exists A grain(A).
% 1.97/2.15 all A (grain(A)->plant(A)).
% 1.97/2.15 all X (animal(X)-> (all Y (plant(Y)->eats(X,Y)))| (all Y1 (animal(Y1)-> (much_smaller(Y1,X)& (exists Z (plant(Z)&eats(Y1,Z)))->eats(X,Y1))))).
% 1.97/2.15 all Y X (bird(Y)&snail(X)->much_smaller(X,Y)).
% 1.97/2.15 all Y X (bird(Y)&caterpillar(X)->much_smaller(X,Y)).
% 1.97/2.15 all X Y (bird(X)&fox(Y)->much_smaller(X,Y)).
% 1.97/2.15 all X Y (fox(X)&wolf(Y)->much_smaller(X,Y)).
% 1.97/2.15 all X Y (wolf(X)&fox(Y)-> -eats(X,Y)).
% 1.97/2.15 all X Y (wolf(X)&grain(Y)-> -eats(X,Y)).
% 1.97/2.15 all X Y (bird(X)&caterpillar(Y)->eats(X,Y)).
% 1.97/2.15 all X Y (bird(X)&snail(Y)-> -eats(X,Y)).
% 1.97/2.15 all X (caterpillar(X)-> (exists Y (plant(Y)&eats(X,Y)))).
% 1.97/2.15 all X (snail(X)-> (exists Y (plant(Y)&eats(X,Y)))).
% 1.97/2.15 -(exists X Y Z (animal(X)&animal(Y)&grain(Z)&eats(Y,Z)&eats(X,Y))).
% 1.97/2.15 end_of_list.
% 1.97/2.15
% 1.97/2.15 -------> usable clausifies to:
% 1.97/2.15
% 1.97/2.15 list(usable).
% 1.97/2.15 0 [] edible($c1).
% 1.97/2.15 0 [] animal($c2).
% 1.97/2.15 0 [] -animal(A)|edible(A).
% 1.97/2.15 0 [] wolf($c3).
% 1.97/2.15 0 [] -wolf(A)|animal(A).
% 1.97/2.15 0 [] fox($c4).
% 1.97/2.15 0 [] -fox(A)|animal(A).
% 1.97/2.15 0 [] bird($c5).
% 1.97/2.15 0 [] -bird(A)|animal(A).
% 1.97/2.15 0 [] caterpillar($c6).
% 1.97/2.15 0 [] -caterpillar(A)|animal(A).
% 1.97/2.15 0 [] snail($c7).
% 1.97/2.15 0 [] -snail(A)|animal(A).
% 1.97/2.15 0 [] plant($c8).
% 1.97/2.15 0 [] -plant(A)|edible(A).
% 1.97/2.15 0 [] grain($c9).
% 1.97/2.15 0 [] -grain(A)|plant(A).
% 1.97/2.15 0 [] -animal(X)| -plant(Y)|eats(X,Y)| -animal(Y1)| -much_smaller(Y1,X)| -plant(Z)| -eats(Y1,Z)|eats(X,Y1).
% 1.97/2.15 0 [] -bird(Y)| -snail(X)|much_smaller(X,Y).
% 1.97/2.15 0 [] -bird(Y)| -caterpillar(X)|much_smaller(X,Y).
% 1.97/2.15 0 [] -bird(X)| -fox(Y)|much_smaller(X,Y).
% 1.97/2.15 0 [] -fox(X)| -wolf(Y)|much_smaller(X,Y).
% 1.97/2.15 0 [] -wolf(X)| -fox(Y)| -eats(X,Y).
% 1.97/2.15 0 [] -wolf(X)| -grain(Y)| -eats(X,Y).
% 1.97/2.15 0 [] -bird(X)| -caterpillar(Y)|eats(X,Y).
% 1.97/2.15 0 [] -bird(X)| -snail(Y)| -eats(X,Y).
% 1.97/2.15 0 [] -caterpillar(X)|plant($f1(X)).
% 1.97/2.15 0 [] -caterpillar(X)|eats(X,$f1(X)).
% 1.97/2.15 0 [] -snail(X)|plant($f2(X)).
% 1.97/2.15 0 [] -snail(X)|eats(X,$f2(X)).
% 1.97/2.15 0 [] -animal(X)| -animal(Y)| -grain(Z)| -eats(Y,Z)| -eats(X,Y).
% 1.97/2.15 end_of_list.
% 1.97/2.15
% 1.97/2.15 SCAN INPUT: prop=0, horn=0, equality=0, symmetry=0, max_lits=8.
% 1.97/2.15
% 1.97/2.15 This is a non-Horn set without equality. The strategy will
% 1.97/2.15 be ordered hyper_res, unit deletion, and factoring, with
% 1.97/2.15 satellites in sos and with nuclei in usable.
% 1.97/2.15
% 1.97/2.15 dependent: set(hyper_res).
% 1.97/2.15 dependent: set(factor).
% 1.97/2.15 dependent: set(unit_deletion).
% 1.97/2.15
% 1.97/2.15 ------------> process usable:
% 1.97/2.15 ** KEPT (pick-wt=4): 1 [] -animal(A)|edible(A).
% 1.97/2.15 ** KEPT (pick-wt=4): 2 [] -wolf(A)|animal(A).
% 1.97/2.15 ** KEPT (pick-wt=4): 3 [] -fox(A)|animal(A).
% 1.97/2.15 ** KEPT (pick-wt=4): 4 [] -bird(A)|animal(A).
% 1.97/2.15 ** KEPT (pick-wt=4): 5 [] -caterpillar(A)|animal(A).
% 1.97/2.15 ** KEPT (pick-wt=4): 6 [] -snail(A)|animal(A).
% 1.97/2.15 ** KEPT (pick-wt=4): 7 [] -plant(A)|edible(A).
% 1.97/2.15 ** KEPT (pick-wt=4): 8 [] -grain(A)|plant(A).
% 1.97/2.15 ** KEPT (pick-wt=20): 9 [] -animal(A)| -plant(B)|eats(A,B)| -animal(C)| -much_smaller(C,A)| -plant(D)| -eats(C,D)|eats(A,C).
% 1.97/2.15 ** KEPT (pick-wt=7): 10 [] -bird(A)| -snail(B)|much_smaller(B,A).
% 1.97/2.15 ** KEPT (pick-wt=7): 11 [] -bird(A)| -caterpillar(B)|much_smaller(B,A).
% 1.97/2.15 ** KEPT (pick-wt=7): 12 [] -bird(A)| -fox(B)|much_smaller(A,B).
% 1.97/2.15 ** KEPT (pick-wt=7): 13 [] -fox(A)| -wolf(B)|much_smaller(A,B).
% 1.97/2.15 ** KEPT (pick-wt=7): 14 [] -wolf(A)| -fox(B)| -eats(A,B).
% 1.97/2.15 ** KEPT (pick-wt=7): 15 [] -wolf(A)| -grain(B)| -eats(A,B).
% 1.97/2.15 ** KEPT (pick-wt=7): 16 [] -bird(A)| -caterpillar(B)|eats(A,B).
% 1.97/2.16 ** KEPT (pick-wt=7): 17 [] -bird(A)| -snail(B)| -eats(A,B).
% 1.97/2.16 ** KEPT (pick-wt=5): 18 [] -caterpillar(A)|plant($f1(A)).
% 1.97/2.16 ** KEPT (pick-wt=6): 19 [] -caterpillar(A)|eats(A,$f1(A)).
% 1.97/2.16 ** KEPT (pick-wt=5): 20 [] -snail(A)|plant($f2(A)).
% 1.97/2.16 ** KEPT (pick-wt=6): 21 [] -snail(A)|eats(A,$f2(A)).
% 1.97/2.16 ** KEPT (pick-wt=12): 22 [] -animal(A)| -animal(B)| -grain(C)| -eats(B,C)| -eats(A,B).
% 1.97/2.16
% 1.97/2.16 ------------> process sos:
% 1.97/2.16 ** KEPT (pick-wt=2): 30 [] edible($c1).
% 1.97/2.16 ** KEPT (pick-wt=2): 31 [] animal($c2).
% 1.97/2.16 ** KEPT (pick-wt=2): 32 [] wolf($c3).
% 1.97/2.16 ** KEPT (pick-wt=2): 33 [] fox($c4).
% 1.97/2.16 ** KEPT (pick-wt=2): 34 [] bird($c5).
% 1.97/2.16 ** KEPT (pick-wt=2): 35 [] caterpillar($c6).
% 1.97/2.16 ** KEPT (pick-wt=2): 36 [] snail($c7).
% 1.97/2.16 ** KEPT (pick-wt=2): 37 [] plant($c8).
% 1.97/2.16 ** KEPT (pick-wt=2): 38 [] grain($c9).
% 1.97/2.16
% 1.97/2.16 ======= end of input processing =======
% 1.97/2.16
% 1.97/2.16 =========== start of search ===========
% 1.97/2.16
% 1.97/2.16 -------- PROOF --------
% 1.97/2.16
% 1.97/2.16 -----> EMPTY CLAUSE at 0.01 sec ----> 93 [hyper,91,22,40,42,38,84] $F.
% 1.97/2.16
% 1.97/2.16 Length of proof is 17. Level of proof is 7.
% 1.97/2.16
% 1.97/2.16 ---------------- PROOF ----------------
% 1.97/2.16 % SZS status Theorem
% 1.97/2.16 % SZS output start Refutation
% See solution above
% 1.97/2.16 ------------ end of proof -------------
% 1.97/2.16
% 1.97/2.16
% 1.97/2.16 Search stopped by max_proofs option.
% 1.97/2.16
% 1.97/2.16
% 1.97/2.16 Search stopped by max_proofs option.
% 1.97/2.16
% 1.97/2.16 ============ end of search ============
% 1.97/2.16
% 1.97/2.16 -------------- statistics -------------
% 1.97/2.16 clauses given 50
% 1.97/2.16 clauses generated 130
% 1.97/2.16 clauses kept 92
% 1.97/2.16 clauses forward subsumed 64
% 1.97/2.16 clauses back subsumed 19
% 1.97/2.16 Kbytes malloced 976
% 1.97/2.16
% 1.97/2.16 ----------- times (seconds) -----------
% 1.97/2.16 user CPU time 0.01 (0 hr, 0 min, 0 sec)
% 1.97/2.16 system CPU time 0.00 (0 hr, 0 min, 0 sec)
% 1.97/2.16 wall-clock time 2 (0 hr, 0 min, 2 sec)
% 1.97/2.16
% 1.97/2.16 That finishes the proof of the theorem.
% 1.97/2.16
% 1.97/2.16 Process 16373 finished Wed Jul 27 02:08:35 2022
% 1.97/2.16 Otter interrupted
% 1.97/2.16 PROOF FOUND
%------------------------------------------------------------------------------