TSTP Solution File: SET638+3 by Metis---2.4

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Metis---2.4
% Problem  : SET638+3 : TPTP v8.1.0. Released v2.2.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 : Tue Jul 19 03:36:15 EDT 2022

% Result   : Theorem 0.14s 0.40s
% Output   : CNFRefutation 0.14s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   16
%            Number of leaves      :   16
% Syntax   : Number of formulae    :   72 (  43 unt;   0 def)
%            Number of atoms       :  116 (  81 equ)
%            Maximal formula atoms :    3 (   1 avg)
%            Number of connectives :   82 (  38   ~;  33   |;   7   &)
%                                         (   0 <=>;   4  =>;   0  <=;   0 <~>)
%            Maximal formula depth :    7 (   3 avg)
%            Maximal term depth    :    3 (   1 avg)
%            Number of predicates  :    4 (   1 usr;   1 prp; 0-2 aty)
%            Number of functors    :    6 (   6 usr;   4 con; 0-2 aty)
%            Number of variables   :   97 (   2 sgn  45   !;   3   ?)

% Comments : 
%------------------------------------------------------------------------------
fof(intersection_is_subset,axiom,
    ! [B,C] : subset(intersection(B,C),B) ).

fof(subset_intersection,axiom,
    ! [B,C] :
      ( subset(B,C)
     => intersection(B,C) = B ) ).

fof(union_empty_set,axiom,
    ! [B] : union(B,empty_set) = B ).

fof(intersection_distributes_over_union,axiom,
    ! [B,C,D] : intersection(B,union(C,D)) = union(intersection(B,C),intersection(B,D)) ).

fof(commutativity_of_union,axiom,
    ! [B,C] : union(B,C) = union(C,B) ).

fof(commutativity_of_intersection,axiom,
    ! [B,C] : intersection(B,C) = intersection(C,B) ).

fof(prove_th120,conjecture,
    ! [B,C,D] :
      ( ( subset(B,union(C,D))
        & intersection(B,D) = empty_set )
     => subset(B,C) ) ).

fof(subgoal_0,plain,
    ! [B,C,D] :
      ( ( subset(B,union(C,D))
        & intersection(B,D) = empty_set )
     => subset(B,C) ),
    inference(strip,[],[prove_th120]) ).

fof(negate_0_0,plain,
    ~ ! [B,C,D] :
        ( ( subset(B,union(C,D))
          & intersection(B,D) = empty_set )
       => subset(B,C) ),
    inference(negate,[],[subgoal_0]) ).

fof(normalize_0_0,plain,
    ! [B,C] : subset(intersection(B,C),B),
    inference(canonicalize,[],[intersection_is_subset]) ).

fof(normalize_0_1,plain,
    ! [B,C] : subset(intersection(B,C),B),
    inference(specialize,[],[normalize_0_0]) ).

fof(normalize_0_2,plain,
    ! [B,C] : intersection(B,C) = intersection(C,B),
    inference(canonicalize,[],[commutativity_of_intersection]) ).

fof(normalize_0_3,plain,
    ! [B,C] : intersection(B,C) = intersection(C,B),
    inference(specialize,[],[normalize_0_2]) ).

fof(normalize_0_4,plain,
    ? [B,C,D] :
      ( ~ subset(B,C)
      & intersection(B,D) = empty_set
      & subset(B,union(C,D)) ),
    inference(canonicalize,[],[negate_0_0]) ).

fof(normalize_0_5,plain,
    ( ~ subset(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1)
    & intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_D_2) = empty_set
    & subset(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)) ),
    inference(skolemize,[],[normalize_0_4]) ).

fof(normalize_0_6,plain,
    subset(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)),
    inference(conjunct,[],[normalize_0_5]) ).

fof(normalize_0_7,plain,
    ! [B,C] :
      ( ~ subset(B,C)
      | intersection(B,C) = B ),
    inference(canonicalize,[],[subset_intersection]) ).

fof(normalize_0_8,plain,
    ! [B,C] :
      ( ~ subset(B,C)
      | intersection(B,C) = B ),
    inference(specialize,[],[normalize_0_7]) ).

fof(normalize_0_9,plain,
    ! [B,C,D] : intersection(B,union(C,D)) = union(intersection(B,C),intersection(B,D)),
    inference(canonicalize,[],[intersection_distributes_over_union]) ).

fof(normalize_0_10,plain,
    ! [B,C,D] : intersection(B,union(C,D)) = union(intersection(B,C),intersection(B,D)),
    inference(specialize,[],[normalize_0_9]) ).

fof(normalize_0_11,plain,
    intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_D_2) = empty_set,
    inference(conjunct,[],[normalize_0_5]) ).

fof(normalize_0_12,plain,
    ! [B] : union(B,empty_set) = B,
    inference(canonicalize,[],[union_empty_set]) ).

fof(normalize_0_13,plain,
    ! [B] : union(B,empty_set) = B,
    inference(specialize,[],[normalize_0_12]) ).

fof(normalize_0_14,plain,
    ! [B,C] : union(B,C) = union(C,B),
    inference(canonicalize,[],[commutativity_of_union]) ).

fof(normalize_0_15,plain,
    ! [B,C] : union(B,C) = union(C,B),
    inference(specialize,[],[normalize_0_14]) ).

fof(normalize_0_16,plain,
    ~ subset(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1),
    inference(conjunct,[],[normalize_0_5]) ).

cnf(refute_0_0,plain,
    subset(intersection(B,C),B),
    inference(canonicalize,[],[normalize_0_1]) ).

cnf(refute_0_1,plain,
    intersection(B,C) = intersection(C,B),
    inference(canonicalize,[],[normalize_0_3]) ).

cnf(refute_0_2,plain,
    ( intersection(B,C) != intersection(C,B)
    | ~ subset(intersection(B,C),B)
    | subset(intersection(C,B),B) ),
    introduced(tautology,[equality,[$cnf( subset(intersection(B,C),B) ),[0],$fot(intersection(C,B))]]) ).

cnf(refute_0_3,plain,
    ( ~ subset(intersection(B,C),B)
    | subset(intersection(C,B),B) ),
    inference(resolve,[$cnf( $equal(intersection(B,C),intersection(C,B)) )],[refute_0_1,refute_0_2]) ).

cnf(refute_0_4,plain,
    subset(intersection(C,B),B),
    inference(resolve,[$cnf( subset(intersection(B,C),B) )],[refute_0_0,refute_0_3]) ).

cnf(refute_0_5,plain,
    subset(intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1),skolemFOFtoCNF_C_1),
    inference(subst,[],[refute_0_4:[bind(B,$fot(skolemFOFtoCNF_C_1)),bind(C,$fot(skolemFOFtoCNF_B))]]) ).

cnf(refute_0_6,plain,
    subset(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)),
    inference(canonicalize,[],[normalize_0_6]) ).

cnf(refute_0_7,plain,
    ( ~ subset(B,C)
    | intersection(B,C) = B ),
    inference(canonicalize,[],[normalize_0_8]) ).

cnf(refute_0_8,plain,
    ( ~ subset(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2))
    | intersection(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)) = skolemFOFtoCNF_B ),
    inference(subst,[],[refute_0_7:[bind(B,$fot(skolemFOFtoCNF_B)),bind(C,$fot(union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)))]]) ).

cnf(refute_0_9,plain,
    intersection(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)) = skolemFOFtoCNF_B,
    inference(resolve,[$cnf( subset(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)) )],[refute_0_6,refute_0_8]) ).

cnf(refute_0_10,plain,
    intersection(B,union(C,D)) = union(intersection(B,C),intersection(B,D)),
    inference(canonicalize,[],[normalize_0_10]) ).

cnf(refute_0_11,plain,
    intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) = union(intersection(skolemFOFtoCNF_B,X_32),intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_D_2)),
    inference(subst,[],[refute_0_10:[bind(B,$fot(skolemFOFtoCNF_B)),bind(C,$fot(X_32)),bind(D,$fot(skolemFOFtoCNF_D_2))]]) ).

cnf(refute_0_12,plain,
    intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_D_2) = empty_set,
    inference(canonicalize,[],[normalize_0_11]) ).

cnf(refute_0_13,plain,
    ( intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_D_2) != empty_set
    | intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) != union(intersection(skolemFOFtoCNF_B,X_32),intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_D_2))
    | intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) = union(intersection(skolemFOFtoCNF_B,X_32),empty_set) ),
    introduced(tautology,[equality,[$cnf( $equal(intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)),union(intersection(skolemFOFtoCNF_B,X_32),intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_D_2))) ),[1,1],$fot(empty_set)]]) ).

cnf(refute_0_14,plain,
    ( intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) != union(intersection(skolemFOFtoCNF_B,X_32),intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_D_2))
    | intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) = union(intersection(skolemFOFtoCNF_B,X_32),empty_set) ),
    inference(resolve,[$cnf( $equal(intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_D_2),empty_set) )],[refute_0_12,refute_0_13]) ).

cnf(refute_0_15,plain,
    intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) = union(intersection(skolemFOFtoCNF_B,X_32),empty_set),
    inference(resolve,[$cnf( $equal(intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)),union(intersection(skolemFOFtoCNF_B,X_32),intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_D_2))) )],[refute_0_11,refute_0_14]) ).

cnf(refute_0_16,plain,
    union(B,empty_set) = B,
    inference(canonicalize,[],[normalize_0_13]) ).

cnf(refute_0_17,plain,
    union(B,C) = union(C,B),
    inference(canonicalize,[],[normalize_0_15]) ).

cnf(refute_0_18,plain,
    union(B,empty_set) = union(empty_set,B),
    inference(subst,[],[refute_0_17:[bind(C,$fot(empty_set))]]) ).

cnf(refute_0_19,plain,
    ( union(B,empty_set) != B
    | union(B,empty_set) != union(empty_set,B)
    | union(empty_set,B) = B ),
    introduced(tautology,[equality,[$cnf( $equal(union(B,empty_set),B) ),[0],$fot(union(empty_set,B))]]) ).

cnf(refute_0_20,plain,
    ( union(B,empty_set) != B
    | union(empty_set,B) = B ),
    inference(resolve,[$cnf( $equal(union(B,empty_set),union(empty_set,B)) )],[refute_0_18,refute_0_19]) ).

cnf(refute_0_21,plain,
    union(empty_set,B) = B,
    inference(resolve,[$cnf( $equal(union(B,empty_set),B) )],[refute_0_16,refute_0_20]) ).

cnf(refute_0_22,plain,
    union(empty_set,intersection(skolemFOFtoCNF_B,X_32)) = intersection(skolemFOFtoCNF_B,X_32),
    inference(subst,[],[refute_0_21:[bind(B,$fot(intersection(skolemFOFtoCNF_B,X_32)))]]) ).

cnf(refute_0_23,plain,
    X = X,
    introduced(tautology,[refl,[$fot(X)]]) ).

cnf(refute_0_24,plain,
    ( X != X
    | X != Y
    | Y = X ),
    introduced(tautology,[equality,[$cnf( $equal(X,X) ),[0],$fot(Y)]]) ).

cnf(refute_0_25,plain,
    ( X != Y
    | Y = X ),
    inference(resolve,[$cnf( $equal(X,X) )],[refute_0_23,refute_0_24]) ).

cnf(refute_0_26,plain,
    ( union(B,C) != union(C,B)
    | union(C,B) = union(B,C) ),
    inference(subst,[],[refute_0_25:[bind(X,$fot(union(B,C))),bind(Y,$fot(union(C,B)))]]) ).

cnf(refute_0_27,plain,
    union(C,B) = union(B,C),
    inference(resolve,[$cnf( $equal(union(B,C),union(C,B)) )],[refute_0_17,refute_0_26]) ).

cnf(refute_0_28,plain,
    union(intersection(skolemFOFtoCNF_B,X_32),empty_set) = union(empty_set,intersection(skolemFOFtoCNF_B,X_32)),
    inference(subst,[],[refute_0_27:[bind(B,$fot(empty_set)),bind(C,$fot(intersection(skolemFOFtoCNF_B,X_32)))]]) ).

cnf(refute_0_29,plain,
    ( Y != X
    | Y != Z
    | X = Z ),
    introduced(tautology,[equality,[$cnf( $equal(Y,Z) ),[0],$fot(X)]]) ).

cnf(refute_0_30,plain,
    ( X != Y
    | Y != Z
    | X = Z ),
    inference(resolve,[$cnf( $equal(Y,X) )],[refute_0_25,refute_0_29]) ).

cnf(refute_0_31,plain,
    ( union(empty_set,intersection(skolemFOFtoCNF_B,X_32)) != intersection(skolemFOFtoCNF_B,X_32)
    | union(intersection(skolemFOFtoCNF_B,X_32),empty_set) != union(empty_set,intersection(skolemFOFtoCNF_B,X_32))
    | union(intersection(skolemFOFtoCNF_B,X_32),empty_set) = intersection(skolemFOFtoCNF_B,X_32) ),
    inference(subst,[],[refute_0_30:[bind(X,$fot(union(intersection(skolemFOFtoCNF_B,X_32),empty_set))),bind(Y,$fot(union(empty_set,intersection(skolemFOFtoCNF_B,X_32)))),bind(Z,$fot(intersection(skolemFOFtoCNF_B,X_32)))]]) ).

cnf(refute_0_32,plain,
    ( union(empty_set,intersection(skolemFOFtoCNF_B,X_32)) != intersection(skolemFOFtoCNF_B,X_32)
    | union(intersection(skolemFOFtoCNF_B,X_32),empty_set) = intersection(skolemFOFtoCNF_B,X_32) ),
    inference(resolve,[$cnf( $equal(union(intersection(skolemFOFtoCNF_B,X_32),empty_set),union(empty_set,intersection(skolemFOFtoCNF_B,X_32))) )],[refute_0_28,refute_0_31]) ).

cnf(refute_0_33,plain,
    union(intersection(skolemFOFtoCNF_B,X_32),empty_set) = intersection(skolemFOFtoCNF_B,X_32),
    inference(resolve,[$cnf( $equal(union(empty_set,intersection(skolemFOFtoCNF_B,X_32)),intersection(skolemFOFtoCNF_B,X_32)) )],[refute_0_22,refute_0_32]) ).

cnf(refute_0_34,plain,
    ( intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) != union(intersection(skolemFOFtoCNF_B,X_32),empty_set)
    | union(intersection(skolemFOFtoCNF_B,X_32),empty_set) != intersection(skolemFOFtoCNF_B,X_32)
    | intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) = intersection(skolemFOFtoCNF_B,X_32) ),
    introduced(tautology,[equality,[$cnf( ~ $equal(intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)),intersection(skolemFOFtoCNF_B,X_32)) ),[0],$fot(union(intersection(skolemFOFtoCNF_B,X_32),empty_set))]]) ).

cnf(refute_0_35,plain,
    ( intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) != union(intersection(skolemFOFtoCNF_B,X_32),empty_set)
    | intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) = intersection(skolemFOFtoCNF_B,X_32) ),
    inference(resolve,[$cnf( $equal(union(intersection(skolemFOFtoCNF_B,X_32),empty_set),intersection(skolemFOFtoCNF_B,X_32)) )],[refute_0_33,refute_0_34]) ).

cnf(refute_0_36,plain,
    intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)) = intersection(skolemFOFtoCNF_B,X_32),
    inference(resolve,[$cnf( $equal(intersection(skolemFOFtoCNF_B,union(X_32,skolemFOFtoCNF_D_2)),union(intersection(skolemFOFtoCNF_B,X_32),empty_set)) )],[refute_0_15,refute_0_35]) ).

cnf(refute_0_37,plain,
    intersection(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)) = intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1),
    inference(subst,[],[refute_0_36:[bind(X_32,$fot(skolemFOFtoCNF_C_1))]]) ).

cnf(refute_0_38,plain,
    ( intersection(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)) != intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1)
    | intersection(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)) != skolemFOFtoCNF_B
    | intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1) = skolemFOFtoCNF_B ),
    introduced(tautology,[equality,[$cnf( $equal(intersection(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)),skolemFOFtoCNF_B) ),[0],$fot(intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1))]]) ).

cnf(refute_0_39,plain,
    ( intersection(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)) != skolemFOFtoCNF_B
    | intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1) = skolemFOFtoCNF_B ),
    inference(resolve,[$cnf( $equal(intersection(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)),intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1)) )],[refute_0_37,refute_0_38]) ).

cnf(refute_0_40,plain,
    intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1) = skolemFOFtoCNF_B,
    inference(resolve,[$cnf( $equal(intersection(skolemFOFtoCNF_B,union(skolemFOFtoCNF_C_1,skolemFOFtoCNF_D_2)),skolemFOFtoCNF_B) )],[refute_0_9,refute_0_39]) ).

cnf(refute_0_41,plain,
    ( intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1) != skolemFOFtoCNF_B
    | ~ subset(intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1),skolemFOFtoCNF_C_1)
    | subset(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1) ),
    introduced(tautology,[equality,[$cnf( subset(intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1),skolemFOFtoCNF_C_1) ),[0],$fot(skolemFOFtoCNF_B)]]) ).

cnf(refute_0_42,plain,
    ( ~ subset(intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1),skolemFOFtoCNF_C_1)
    | subset(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1) ),
    inference(resolve,[$cnf( $equal(intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1),skolemFOFtoCNF_B) )],[refute_0_40,refute_0_41]) ).

cnf(refute_0_43,plain,
    subset(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1),
    inference(resolve,[$cnf( subset(intersection(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1),skolemFOFtoCNF_C_1) )],[refute_0_5,refute_0_42]) ).

cnf(refute_0_44,plain,
    ~ subset(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1),
    inference(canonicalize,[],[normalize_0_16]) ).

cnf(refute_0_45,plain,
    $false,
    inference(resolve,[$cnf( subset(skolemFOFtoCNF_B,skolemFOFtoCNF_C_1) )],[refute_0_43,refute_0_44]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.08/0.14  % Problem  : SET638+3 : TPTP v8.1.0. Released v2.2.0.
% 0.08/0.14  % Command  : metis --show proof --show saturation %s
% 0.14/0.36  % Computer : n012.cluster.edu
% 0.14/0.36  % Model    : x86_64 x86_64
% 0.14/0.36  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.36  % Memory   : 8042.1875MB
% 0.14/0.36  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.36  % CPULimit : 300
% 0.14/0.36  % WCLimit  : 600
% 0.14/0.36  % DateTime : Sun Jul 10 23:49:13 EDT 2022
% 0.14/0.36  % CPUTime  : 
% 0.14/0.36  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 0.14/0.40  % SZS status Theorem for /export/starexec/sandbox2/benchmark/theBenchmark.p
% 0.14/0.40  
% 0.14/0.40  % SZS output start CNFRefutation for /export/starexec/sandbox2/benchmark/theBenchmark.p
% See solution above
% 0.14/0.41  
%------------------------------------------------------------------------------