TSTP Solution File: SYN415+1 by Metis---2.4

View Problem - Process Solution

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

% Computer : n003.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 : Thu Jul 21 09:02:14 EDT 2022

% Result   : Theorem 0.20s 0.49s
% Output   : CNFRefutation 0.20s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   16
%            Number of leaves      :   10
% Syntax   : Number of formulae    :   82 (  31 unt;   0 def)
%            Number of atoms       :  193 (  87 equ)
%            Maximal formula atoms :    7 (   2 avg)
%            Number of connectives :  188 (  77   ~;  54   |;  38   &)
%                                         (   1 <=>;  18  =>;   0  <=;   0 <~>)
%            Maximal formula depth :    8 (   3 avg)
%            Maximal term depth    :    2 (   1 avg)
%            Number of predicates  :    4 (   1 usr;   1 prp; 0-2 aty)
%            Number of functors    :    6 (   6 usr;   5 con; 0-1 aty)
%            Number of variables   :   86 (   1 sgn  40   !;  28   ?)

% Comments : 
%------------------------------------------------------------------------------
fof(kalish317,conjecture,
    ( ( ? [X] : f(X)
      & ! [Y,Z] :
          ( ( f(Y)
            & f(Z) )
         => Y = Z ) )
  <=> ? [U] :
        ( f(U)
        & ! [V] :
            ( f(V)
           => U = V ) ) ) ).

fof(subgoal_0,plain,
    ( ( ? [X] : f(X)
      & ! [Y,Z] :
          ( ( f(Y)
            & f(Z) )
         => Y = Z ) )
   => ? [U] :
        ( f(U)
        & ! [V] :
            ( f(V)
           => U = V ) ) ),
    inference(strip,[],[kalish317]) ).

fof(subgoal_1,plain,
    ( ? [U] :
        ( f(U)
        & ! [V] :
            ( f(V)
           => U = V ) )
   => ? [X] : f(X) ),
    inference(strip,[],[kalish317]) ).

fof(subgoal_2,plain,
    ( ( ? [U] :
          ( f(U)
          & ! [V] :
              ( f(V)
             => U = V ) )
      & ? [X] : f(X) )
   => ! [Y,Z] :
        ( ( f(Y)
          & f(Z) )
       => Y = Z ) ),
    inference(strip,[],[kalish317]) ).

fof(negate_0_0,plain,
    ~ ( ( ? [X] : f(X)
        & ! [Y,Z] :
            ( ( f(Y)
              & f(Z) )
           => Y = Z ) )
     => ? [U] :
          ( f(U)
          & ! [V] :
              ( f(V)
             => U = V ) ) ),
    inference(negate,[],[subgoal_0]) ).

fof(normalize_0_0,plain,
    ( ? [X] : f(X)
    & ! [U] :
        ( ~ f(U)
        | ? [V] :
            ( U != V
            & f(V) ) )
    & ! [Y,Z] :
        ( ~ f(Y)
        | ~ f(Z)
        | Y = Z ) ),
    inference(canonicalize,[],[negate_0_0]) ).

fof(normalize_0_1,plain,
    ! [U] :
      ( ~ f(U)
      | ? [V] :
          ( U != V
          & f(V) ) ),
    inference(conjunct,[],[normalize_0_0]) ).

fof(normalize_0_2,plain,
    ! [U] :
      ( ~ f(U)
      | ? [V] :
          ( U != V
          & f(V) ) ),
    inference(specialize,[],[normalize_0_1]) ).

fof(normalize_0_3,plain,
    ! [U] :
      ( ( U != skolemFOFtoCNF_V(U)
        | ~ f(U) )
      & ( ~ f(U)
        | f(skolemFOFtoCNF_V(U)) ) ),
    inference(clausify,[],[normalize_0_2]) ).

fof(normalize_0_4,plain,
    ! [U] :
      ( U != skolemFOFtoCNF_V(U)
      | ~ f(U) ),
    inference(conjunct,[],[normalize_0_3]) ).

fof(normalize_0_5,plain,
    ? [X] : f(X),
    inference(conjunct,[],[normalize_0_0]) ).

fof(normalize_0_6,plain,
    f(skolemFOFtoCNF_X),
    inference(skolemize,[],[normalize_0_5]) ).

fof(normalize_0_7,plain,
    ! [U] :
      ( ~ f(U)
      | f(skolemFOFtoCNF_V(U)) ),
    inference(conjunct,[],[normalize_0_3]) ).

fof(normalize_0_8,plain,
    ! [Y,Z] :
      ( ~ f(Y)
      | ~ f(Z)
      | Y = Z ),
    inference(conjunct,[],[normalize_0_0]) ).

fof(normalize_0_9,plain,
    ! [Y,Z] :
      ( ~ f(Y)
      | ~ f(Z)
      | Y = Z ),
    inference(specialize,[],[normalize_0_8]) ).

cnf(refute_0_0,plain,
    ( U != skolemFOFtoCNF_V(U)
    | ~ f(U) ),
    inference(canonicalize,[],[normalize_0_4]) ).

cnf(refute_0_1,plain,
    ( skolemFOFtoCNF_X != skolemFOFtoCNF_V(skolemFOFtoCNF_X)
    | ~ f(skolemFOFtoCNF_X) ),
    inference(subst,[],[refute_0_0:[bind(U,$fot(skolemFOFtoCNF_X))]]) ).

cnf(refute_0_2,plain,
    f(skolemFOFtoCNF_X),
    inference(canonicalize,[],[normalize_0_6]) ).

cnf(refute_0_3,plain,
    ( ~ f(U)
    | f(skolemFOFtoCNF_V(U)) ),
    inference(canonicalize,[],[normalize_0_7]) ).

cnf(refute_0_4,plain,
    ( ~ f(skolemFOFtoCNF_X)
    | f(skolemFOFtoCNF_V(skolemFOFtoCNF_X)) ),
    inference(subst,[],[refute_0_3:[bind(U,$fot(skolemFOFtoCNF_X))]]) ).

cnf(refute_0_5,plain,
    f(skolemFOFtoCNF_V(skolemFOFtoCNF_X)),
    inference(resolve,[$cnf( f(skolemFOFtoCNF_X) )],[refute_0_2,refute_0_4]) ).

cnf(refute_0_6,plain,
    ( ~ f(Y)
    | ~ f(Z)
    | Y = Z ),
    inference(canonicalize,[],[normalize_0_9]) ).

cnf(refute_0_7,plain,
    ( ~ f(X_3)
    | ~ f(skolemFOFtoCNF_X)
    | skolemFOFtoCNF_X = X_3 ),
    inference(subst,[],[refute_0_6:[bind(Y,$fot(skolemFOFtoCNF_X)),bind(Z,$fot(X_3))]]) ).

cnf(refute_0_8,plain,
    ( ~ f(X_3)
    | skolemFOFtoCNF_X = X_3 ),
    inference(resolve,[$cnf( f(skolemFOFtoCNF_X) )],[refute_0_2,refute_0_7]) ).

cnf(refute_0_9,plain,
    ( ~ f(skolemFOFtoCNF_V(skolemFOFtoCNF_X))
    | skolemFOFtoCNF_X = skolemFOFtoCNF_V(skolemFOFtoCNF_X) ),
    inference(subst,[],[refute_0_8:[bind(X_3,$fot(skolemFOFtoCNF_V(skolemFOFtoCNF_X)))]]) ).

cnf(refute_0_10,plain,
    skolemFOFtoCNF_X = skolemFOFtoCNF_V(skolemFOFtoCNF_X),
    inference(resolve,[$cnf( f(skolemFOFtoCNF_V(skolemFOFtoCNF_X)) )],[refute_0_5,refute_0_9]) ).

cnf(refute_0_11,plain,
    X0 = X0,
    introduced(tautology,[refl,[$fot(X0)]]) ).

cnf(refute_0_12,plain,
    ( X0 != X0
    | X0 != Y0
    | Y0 = X0 ),
    introduced(tautology,[equality,[$cnf( $equal(X0,X0) ),[0],$fot(Y0)]]) ).

cnf(refute_0_13,plain,
    ( X0 != Y0
    | Y0 = X0 ),
    inference(resolve,[$cnf( $equal(X0,X0) )],[refute_0_11,refute_0_12]) ).

cnf(refute_0_14,plain,
    ( skolemFOFtoCNF_X != skolemFOFtoCNF_V(skolemFOFtoCNF_X)
    | skolemFOFtoCNF_V(skolemFOFtoCNF_X) = skolemFOFtoCNF_X ),
    inference(subst,[],[refute_0_13:[bind(X0,$fot(skolemFOFtoCNF_X)),bind(Y0,$fot(skolemFOFtoCNF_V(skolemFOFtoCNF_X)))]]) ).

cnf(refute_0_15,plain,
    skolemFOFtoCNF_V(skolemFOFtoCNF_X) = skolemFOFtoCNF_X,
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_X,skolemFOFtoCNF_V(skolemFOFtoCNF_X)) )],[refute_0_10,refute_0_14]) ).

cnf(refute_0_16,plain,
    ( skolemFOFtoCNF_V(skolemFOFtoCNF_X) != skolemFOFtoCNF_X
    | skolemFOFtoCNF_X != skolemFOFtoCNF_X
    | skolemFOFtoCNF_X = skolemFOFtoCNF_V(skolemFOFtoCNF_X) ),
    introduced(tautology,[equality,[$cnf( ~ $equal(skolemFOFtoCNF_X,skolemFOFtoCNF_V(skolemFOFtoCNF_X)) ),[1],$fot(skolemFOFtoCNF_X)]]) ).

cnf(refute_0_17,plain,
    ( skolemFOFtoCNF_X != skolemFOFtoCNF_X
    | skolemFOFtoCNF_X = skolemFOFtoCNF_V(skolemFOFtoCNF_X) ),
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_V(skolemFOFtoCNF_X),skolemFOFtoCNF_X) )],[refute_0_15,refute_0_16]) ).

cnf(refute_0_18,plain,
    ( skolemFOFtoCNF_X != skolemFOFtoCNF_X
    | ~ f(skolemFOFtoCNF_X) ),
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_X,skolemFOFtoCNF_V(skolemFOFtoCNF_X)) )],[refute_0_17,refute_0_1]) ).

cnf(refute_0_19,plain,
    skolemFOFtoCNF_X = skolemFOFtoCNF_X,
    introduced(tautology,[refl,[$fot(skolemFOFtoCNF_X)]]) ).

cnf(refute_0_20,plain,
    ~ f(skolemFOFtoCNF_X),
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_X,skolemFOFtoCNF_X) )],[refute_0_19,refute_0_18]) ).

cnf(refute_0_21,plain,
    $false,
    inference(resolve,[$cnf( f(skolemFOFtoCNF_X) )],[refute_0_2,refute_0_20]) ).

fof(negate_1_0,plain,
    ~ ( ? [U] :
          ( f(U)
          & ! [V] :
              ( f(V)
             => U = V ) )
     => ? [X] : f(X) ),
    inference(negate,[],[subgoal_1]) ).

fof(normalize_1_0,plain,
    ( ? [U] :
        ( f(U)
        & ! [V] :
            ( ~ f(V)
            | U = V ) )
    & ! [X] : ~ f(X) ),
    inference(canonicalize,[],[negate_1_0]) ).

fof(normalize_1_1,plain,
    ? [U] :
      ( f(U)
      & ! [V] :
          ( ~ f(V)
          | U = V ) ),
    inference(conjunct,[],[normalize_1_0]) ).

fof(normalize_1_2,plain,
    ( f(skolemFOFtoCNF_U)
    & ! [V] :
        ( ~ f(V)
        | skolemFOFtoCNF_U = V ) ),
    inference(skolemize,[],[normalize_1_1]) ).

fof(normalize_1_3,plain,
    f(skolemFOFtoCNF_U),
    inference(conjunct,[],[normalize_1_2]) ).

fof(normalize_1_4,plain,
    ! [X] : ~ f(X),
    inference(conjunct,[],[normalize_1_0]) ).

fof(normalize_1_5,plain,
    ! [X] : ~ f(X),
    inference(specialize,[],[normalize_1_4]) ).

cnf(refute_1_0,plain,
    f(skolemFOFtoCNF_U),
    inference(canonicalize,[],[normalize_1_3]) ).

cnf(refute_1_1,plain,
    ~ f(X),
    inference(canonicalize,[],[normalize_1_5]) ).

cnf(refute_1_2,plain,
    ~ f(skolemFOFtoCNF_U),
    inference(subst,[],[refute_1_1:[bind(X,$fot(skolemFOFtoCNF_U))]]) ).

cnf(refute_1_3,plain,
    $false,
    inference(resolve,[$cnf( f(skolemFOFtoCNF_U) )],[refute_1_0,refute_1_2]) ).

fof(negate_2_0,plain,
    ~ ( ( ? [U] :
            ( f(U)
            & ! [V] :
                ( f(V)
               => U = V ) )
        & ? [X] : f(X) )
     => ! [Y,Z] :
          ( ( f(Y)
            & f(Z) )
         => Y = Z ) ),
    inference(negate,[],[subgoal_2]) ).

fof(normalize_2_0,plain,
    ( ? [U] :
        ( f(U)
        & ! [V] :
            ( ~ f(V)
            | U = V ) )
    & ? [X] : f(X)
    & ? [Y,Z] :
        ( Y != Z
        & f(Y)
        & f(Z) ) ),
    inference(canonicalize,[],[negate_2_0]) ).

fof(normalize_2_1,plain,
    ? [Y,Z] :
      ( Y != Z
      & f(Y)
      & f(Z) ),
    inference(conjunct,[],[normalize_2_0]) ).

fof(normalize_2_2,plain,
    ( skolemFOFtoCNF_Y != skolemFOFtoCNF_Z
    & f(skolemFOFtoCNF_Y)
    & f(skolemFOFtoCNF_Z) ),
    inference(skolemize,[],[normalize_2_1]) ).

fof(normalize_2_3,plain,
    skolemFOFtoCNF_Y != skolemFOFtoCNF_Z,
    inference(conjunct,[],[normalize_2_2]) ).

fof(normalize_2_4,plain,
    f(skolemFOFtoCNF_Y),
    inference(conjunct,[],[normalize_2_2]) ).

fof(normalize_2_5,plain,
    ? [U] :
      ( f(U)
      & ! [V] :
          ( ~ f(V)
          | U = V ) ),
    inference(conjunct,[],[normalize_2_0]) ).

fof(normalize_2_6,plain,
    ( f(skolemFOFtoCNF_U_1)
    & ! [V] :
        ( ~ f(V)
        | skolemFOFtoCNF_U_1 = V ) ),
    inference(skolemize,[],[normalize_2_5]) ).

fof(normalize_2_7,plain,
    ! [V] :
      ( ~ f(V)
      | skolemFOFtoCNF_U_1 = V ),
    inference(conjunct,[],[normalize_2_6]) ).

fof(normalize_2_8,plain,
    ! [V] :
      ( ~ f(V)
      | skolemFOFtoCNF_U_1 = V ),
    inference(specialize,[],[normalize_2_7]) ).

fof(normalize_2_9,plain,
    f(skolemFOFtoCNF_Z),
    inference(conjunct,[],[normalize_2_2]) ).

cnf(refute_2_0,plain,
    skolemFOFtoCNF_Y != skolemFOFtoCNF_Z,
    inference(canonicalize,[],[normalize_2_3]) ).

cnf(refute_2_1,plain,
    f(skolemFOFtoCNF_Y),
    inference(canonicalize,[],[normalize_2_4]) ).

cnf(refute_2_2,plain,
    ( ~ f(V)
    | skolemFOFtoCNF_U_1 = V ),
    inference(canonicalize,[],[normalize_2_8]) ).

cnf(refute_2_3,plain,
    ( ~ f(skolemFOFtoCNF_Y)
    | skolemFOFtoCNF_U_1 = skolemFOFtoCNF_Y ),
    inference(subst,[],[refute_2_2:[bind(V,$fot(skolemFOFtoCNF_Y))]]) ).

cnf(refute_2_4,plain,
    skolemFOFtoCNF_U_1 = skolemFOFtoCNF_Y,
    inference(resolve,[$cnf( f(skolemFOFtoCNF_Y) )],[refute_2_1,refute_2_3]) ).

cnf(refute_2_5,plain,
    X0 = X0,
    introduced(tautology,[refl,[$fot(X0)]]) ).

cnf(refute_2_6,plain,
    ( X0 != X0
    | X0 != Y0
    | Y0 = X0 ),
    introduced(tautology,[equality,[$cnf( $equal(X0,X0) ),[0],$fot(Y0)]]) ).

cnf(refute_2_7,plain,
    ( X0 != Y0
    | Y0 = X0 ),
    inference(resolve,[$cnf( $equal(X0,X0) )],[refute_2_5,refute_2_6]) ).

cnf(refute_2_8,plain,
    ( skolemFOFtoCNF_U_1 != skolemFOFtoCNF_Y
    | skolemFOFtoCNF_Y = skolemFOFtoCNF_U_1 ),
    inference(subst,[],[refute_2_7:[bind(X0,$fot(skolemFOFtoCNF_U_1)),bind(Y0,$fot(skolemFOFtoCNF_Y))]]) ).

cnf(refute_2_9,plain,
    skolemFOFtoCNF_Y = skolemFOFtoCNF_U_1,
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_U_1,skolemFOFtoCNF_Y) )],[refute_2_4,refute_2_8]) ).

cnf(refute_2_10,plain,
    ( skolemFOFtoCNF_U_1 != skolemFOFtoCNF_Z
    | skolemFOFtoCNF_Y != skolemFOFtoCNF_U_1
    | skolemFOFtoCNF_Y = skolemFOFtoCNF_Z ),
    introduced(tautology,[equality,[$cnf( $equal(skolemFOFtoCNF_Y,skolemFOFtoCNF_U_1) ),[1],$fot(skolemFOFtoCNF_Z)]]) ).

cnf(refute_2_11,plain,
    ( skolemFOFtoCNF_U_1 != skolemFOFtoCNF_Z
    | skolemFOFtoCNF_Y = skolemFOFtoCNF_Z ),
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_Y,skolemFOFtoCNF_U_1) )],[refute_2_9,refute_2_10]) ).

cnf(refute_2_12,plain,
    f(skolemFOFtoCNF_Z),
    inference(canonicalize,[],[normalize_2_9]) ).

cnf(refute_2_13,plain,
    ( ~ f(skolemFOFtoCNF_Z)
    | skolemFOFtoCNF_U_1 = skolemFOFtoCNF_Z ),
    inference(subst,[],[refute_2_2:[bind(V,$fot(skolemFOFtoCNF_Z))]]) ).

cnf(refute_2_14,plain,
    skolemFOFtoCNF_U_1 = skolemFOFtoCNF_Z,
    inference(resolve,[$cnf( f(skolemFOFtoCNF_Z) )],[refute_2_12,refute_2_13]) ).

cnf(refute_2_15,plain,
    ( skolemFOFtoCNF_U_1 != skolemFOFtoCNF_Z
    | skolemFOFtoCNF_Z = skolemFOFtoCNF_U_1 ),
    inference(subst,[],[refute_2_7:[bind(X0,$fot(skolemFOFtoCNF_U_1)),bind(Y0,$fot(skolemFOFtoCNF_Z))]]) ).

cnf(refute_2_16,plain,
    skolemFOFtoCNF_Z = skolemFOFtoCNF_U_1,
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_U_1,skolemFOFtoCNF_Z) )],[refute_2_14,refute_2_15]) ).

cnf(refute_2_17,plain,
    ( skolemFOFtoCNF_U_1 != skolemFOFtoCNF_U_1
    | skolemFOFtoCNF_Z != skolemFOFtoCNF_U_1
    | skolemFOFtoCNF_U_1 = skolemFOFtoCNF_Z ),
    introduced(tautology,[equality,[$cnf( ~ $equal(skolemFOFtoCNF_U_1,skolemFOFtoCNF_Z) ),[1],$fot(skolemFOFtoCNF_U_1)]]) ).

cnf(refute_2_18,plain,
    ( skolemFOFtoCNF_U_1 != skolemFOFtoCNF_U_1
    | skolemFOFtoCNF_U_1 = skolemFOFtoCNF_Z ),
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_Z,skolemFOFtoCNF_U_1) )],[refute_2_16,refute_2_17]) ).

cnf(refute_2_19,plain,
    ( skolemFOFtoCNF_U_1 != skolemFOFtoCNF_U_1
    | skolemFOFtoCNF_Y = skolemFOFtoCNF_Z ),
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_U_1,skolemFOFtoCNF_Z) )],[refute_2_18,refute_2_11]) ).

cnf(refute_2_20,plain,
    skolemFOFtoCNF_U_1 != skolemFOFtoCNF_U_1,
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_Y,skolemFOFtoCNF_Z) )],[refute_2_19,refute_2_0]) ).

cnf(refute_2_21,plain,
    skolemFOFtoCNF_U_1 = skolemFOFtoCNF_U_1,
    introduced(tautology,[refl,[$fot(skolemFOFtoCNF_U_1)]]) ).

cnf(refute_2_22,plain,
    $false,
    inference(resolve,[$cnf( $equal(skolemFOFtoCNF_U_1,skolemFOFtoCNF_U_1) )],[refute_2_21,refute_2_20]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.03/0.13  % Problem  : SYN415+1 : TPTP v8.1.0. Released v2.0.0.
% 0.03/0.14  % Command  : metis --show proof --show saturation %s
% 0.12/0.35  % Computer : n003.cluster.edu
% 0.12/0.35  % Model    : x86_64 x86_64
% 0.12/0.35  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.35  % Memory   : 8042.1875MB
% 0.12/0.35  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.35  % CPULimit : 300
% 0.12/0.35  % WCLimit  : 600
% 0.12/0.35  % DateTime : Tue Jul 12 04:19:45 EDT 2022
% 0.12/0.35  % CPUTime  : 
% 0.12/0.35  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 0.20/0.49  % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.20/0.49  
% 0.20/0.49  % SZS output start CNFRefutation for /export/starexec/sandbox/benchmark/theBenchmark.p
% See solution above
% 0.20/0.50  
%------------------------------------------------------------------------------