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

View Problem - Process Solution

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

% Computer : n012.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 : Sun Jul 17 22:51:26 EDT 2022

% Result   : Unsatisfiable 0.12s 0.34s
% Output   : CNFRefutation 0.12s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   10
%            Number of leaves      :    7
% Syntax   : Number of clauses     :   21 (   6 unt;   6 nHn;  16 RR)
%            Number of literals    :   40 (   0 equ;  14 neg)
%            Maximal clause size   :    3 (   1 avg)
%            Maximal term depth    :    2 (   1 avg)
%            Number of predicates  :    3 (   2 usr;   1 prp; 0-3 aty)
%            Number of functors    :    9 (   9 usr;   7 con; 0-5 aty)
%            Number of variables   :   23 (   0 sgn)

% Comments : 
%------------------------------------------------------------------------------
cnf(not_part_inheritance,axiom,
    ( in(object_in(Big_part,Mid_part,Small_part,Number_of_mid_parts,Number_of_small_parts),Mid_part)
    | has_parts(Big_part,times(Number_of_mid_parts,Number_of_small_parts),Small_part)
    | ~ has_parts(Big_part,Number_of_mid_parts,Mid_part) ) ).

cnf(part_inheritance,axiom,
    ( has_parts(Big_part,times(Number_of_mid_parts,Number_of_small_parts),Small_part)
    | ~ has_parts(Big_part,Number_of_mid_parts,Mid_part)
    | ~ has_parts(object_in(Big_part,Mid_part,Small_part,Number_of_mid_parts,Number_of_small_parts),Number_of_small_parts,Small_part) ) ).

cnf(john_is_a_boy,hypothesis,
    in(john,boy) ).

cnf(in_boy_in_human,hypothesis,
    ( in(X,human)
    | ~ in(X,boy) ) ).

cnf(humans_have_two_arms,hypothesis,
    ( has_parts(X,n2,arm)
    | ~ in(X,human) ) ).

cnf(arms_have_one_hand,hypothesis,
    ( has_parts(X,n1,hand)
    | ~ in(X,arm) ) ).

cnf(prove_john_has_2_hands,negated_conjecture,
    ~ has_parts(john,times(n2,n1),hand) ).

cnf(refute_0_0,plain,
    ( ~ in(object_in(john,arm,X_10,n2,X_9),arm)
    | has_parts(object_in(john,arm,X_10,n2,X_9),n1,hand) ),
    inference(subst,[],[arms_have_one_hand:[bind(X,$fot(object_in(john,arm,X_10,n2,X_9)))]]) ).

cnf(refute_0_1,plain,
    ( ~ in(john,boy)
    | in(john,human) ),
    inference(subst,[],[in_boy_in_human:[bind(X,$fot(john))]]) ).

cnf(refute_0_2,plain,
    in(john,human),
    inference(resolve,[$cnf( in(john,boy) )],[john_is_a_boy,refute_0_1]) ).

cnf(refute_0_3,plain,
    ( ~ in(john,human)
    | has_parts(john,n2,arm) ),
    inference(subst,[],[humans_have_two_arms:[bind(X,$fot(john))]]) ).

cnf(refute_0_4,plain,
    has_parts(john,n2,arm),
    inference(resolve,[$cnf( in(john,human) )],[refute_0_2,refute_0_3]) ).

cnf(refute_0_5,plain,
    ( ~ has_parts(john,n2,arm)
    | has_parts(john,times(n2,X_7),X_8)
    | in(object_in(john,arm,X_8,n2,X_7),arm) ),
    inference(subst,[],[not_part_inheritance:[bind(Big_part,$fot(john)),bind(Mid_part,$fot(arm)),bind(Number_of_mid_parts,$fot(n2)),bind(Number_of_small_parts,$fot(X_7)),bind(Small_part,$fot(X_8))]]) ).

cnf(refute_0_6,plain,
    ( has_parts(john,times(n2,X_7),X_8)
    | in(object_in(john,arm,X_8,n2,X_7),arm) ),
    inference(resolve,[$cnf( has_parts(john,n2,arm) )],[refute_0_4,refute_0_5]) ).

cnf(refute_0_7,plain,
    ( has_parts(john,times(n2,X_9),X_10)
    | in(object_in(john,arm,X_10,n2,X_9),arm) ),
    inference(subst,[],[refute_0_6:[bind(X_7,$fot(X_9)),bind(X_8,$fot(X_10))]]) ).

cnf(refute_0_8,plain,
    ( has_parts(john,times(n2,X_9),X_10)
    | has_parts(object_in(john,arm,X_10,n2,X_9),n1,hand) ),
    inference(resolve,[$cnf( in(object_in(john,arm,X_10,n2,X_9),arm) )],[refute_0_7,refute_0_0]) ).

cnf(refute_0_9,plain,
    ( has_parts(john,times(n2,n1),hand)
    | has_parts(object_in(john,arm,hand,n2,n1),n1,hand) ),
    inference(subst,[],[refute_0_8:[bind(X_10,$fot(hand)),bind(X_9,$fot(n1))]]) ).

cnf(refute_0_10,plain,
    ( ~ has_parts(john,n2,arm)
    | ~ has_parts(object_in(john,arm,hand,n2,n1),n1,hand)
    | has_parts(john,times(n2,n1),hand) ),
    inference(subst,[],[part_inheritance:[bind(Big_part,$fot(john)),bind(Mid_part,$fot(arm)),bind(Number_of_mid_parts,$fot(n2)),bind(Number_of_small_parts,$fot(n1)),bind(Small_part,$fot(hand))]]) ).

cnf(refute_0_11,plain,
    ( ~ has_parts(john,n2,arm)
    | has_parts(john,times(n2,n1),hand) ),
    inference(resolve,[$cnf( has_parts(object_in(john,arm,hand,n2,n1),n1,hand) )],[refute_0_9,refute_0_10]) ).

cnf(refute_0_12,plain,
    has_parts(john,times(n2,n1),hand),
    inference(resolve,[$cnf( has_parts(john,n2,arm) )],[refute_0_4,refute_0_11]) ).

cnf(refute_0_13,plain,
    $false,
    inference(resolve,[$cnf( has_parts(john,times(n2,n1),hand) )],[refute_0_12,prove_john_has_2_hands]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.04/0.12  % Problem  : MSC003-1 : TPTP v8.1.0. Released v1.0.0.
% 0.04/0.12  % Command  : metis --show proof --show saturation %s
% 0.12/0.33  % Computer : n012.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  : 600
% 0.12/0.33  % DateTime : Fri Jul  1 15:14:47 EDT 2022
% 0.12/0.34  % CPUTime  : 
% 0.12/0.34  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 0.12/0.34  % SZS status Unsatisfiable for /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.12/0.34  
% 0.12/0.34  % SZS output start CNFRefutation for /export/starexec/sandbox/benchmark/theBenchmark.p
% See solution above
% 0.12/0.35  
%------------------------------------------------------------------------------