↑ Up

Z3---4.15.1.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : Z3---4.15.1
% Problem  : SEU284+2 : TPTP v9.0.0. Released v3.3.0.
% Transfm  : none
% Format   : tptp
% Command  : run_E %s %d THM

% Computer : n009.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 : Sat Jun 21 05:27:29 AM UTC 2025

% Result   : Theorem 0.21s 0.44s
% Output   : Proof 0.21s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :    3
%            Number of leaves      :    4
% Syntax   : Number of formulae    :    8 (   2 unt;   0 typ;   0 def)
%            Number of atoms       :  326 ( 130 equ)
%            Maximal formula atoms :   16 (  40 avg)
%            Number of connectives :  294 (  60   ~;  31   |; 132   &)
%                                         (  42 <=>;  29  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   11 (   8 avg)
%            Maximal term depth    :    2 (   1 avg)
%            Number of FOOLs       :   84 (  84 fml;   0 var)
%            Number of types       :    2 (   0 usr)
%            Number of type conns  :    0 (   0   >;   0   *;   0   +;   0  <<)
%            Number of predicates  :   14 (  11 usr;   2 prp; 0-3 aty)
%            Number of functors    :    3 (   3 usr;   0 con; 1-2 aty)
%            Number of variables   :  127 ( 103   !;  16   ?; 127   :)

% Comments : 
%------------------------------------------------------------------------------
tff(singleton_type,type,
    singleton: $i > $i ).

tff(apply_type,type,
    apply: ( $i * $i ) > $i ).

tff(in_type,type,
    in: ( $i * $i ) > $o ).

tff(relation_dom_type,type,
    relation_dom: $i > $i ).

tff(function_type,type,
    function: $i > $o ).

tff(relation_type,type,
    relation: $i > $o ).

tff(1,plain,
    ( ~ ! [A: $i] :
        ? [B: $i] :
          ( relation(B)
          & function(B)
          & ( relation_dom(B) = A )
          & ! [C: $i] :
              ( in(C,A)
             => ( apply(B,C) = singleton(C) ) ) )
  <=> ~ ! [A: $i] :
        ? [B: $i] :
          ( relation(B)
          & function(B)
          & ( relation_dom(B) = A )
          & ! [C: $i] :
              ( ~ in(C,A)
              | ( apply(B,C) = singleton(C) ) ) ) ),
    inference(rewrite,[status(thm)],[]) ).

tff(2,axiom,
    ~ ! [A: $i] :
      ? [B: $i] :
        ( relation(B)
        & function(B)
        & ( relation_dom(B) = A )
        & ! [C: $i] :
            ( in(C,A)
           => ( apply(B,C) = singleton(C) ) ) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',s3_funct_1__e16_22__wellord2) ).

tff(3,plain,
    ~ ! [A: $i] :
      ? [B: $i] :
        ( relation(B)
        & function(B)
        & ( relation_dom(B) = A )
        & ! [C: $i] :
            ( ~ in(C,A)
            | ( apply(B,C) = singleton(C) ) ) ),
    inference(modus_ponens,[status(thm)],[2,1]) ).

tff(4,plain,
    ^ [A: $i] :
      trans(monotonicity(trans(monotonicity(trans(quant_intro(proof_bind(^ [B: $i,C: $i,D: $i] :
                      trans(monotonicity(rewrite(( ( in(B,A)
                              & ( C = singleton(B) )
                              & ( D = singleton(B) ) )
                          <=> ( in(B,A)
                              & ( C = singleton(B) )
                              & ( D = singleton(B) ) ) )),
                          ( ( ( in(B,A)
                              & ( C = singleton(B) )
                              & ( D = singleton(B) ) )
                           => ( C = D ) )
                        <=> ( ( in(B,A)
                              & ( C = singleton(B) )
                              & ( D = singleton(B) ) )
                           => ( C = D ) ) )),
                        rewrite(( ( ( in(B,A)
                              & ( C = singleton(B) )
                              & ( D = singleton(B) ) )
                           => ( C = D ) )
                        <=> ( ~ ( in(B,A)
                                & ( C = singleton(B) )
                                & ( D = singleton(B) ) )
                            | ( C = D ) ) )),
                        ( ( ( in(B,A)
                            & ( C = singleton(B) )
                            & ( D = singleton(B) ) )
                         => ( C = D ) )
                      <=> ( ~ ( in(B,A)
                              & ( C = singleton(B) )
                              & ( D = singleton(B) ) )
                          | ( C = D ) ) ))),
                  ( ! [B: $i,C: $i,D: $i] :
                      ( ( in(B,A)
                        & ( C = singleton(B) )
                        & ( D = singleton(B) ) )
                     => ( C = D ) )
                <=> ! [B: $i,C: $i,D: $i] :
                      ( ~ ( in(B,A)
                          & ( C = singleton(B) )
                          & ( D = singleton(B) ) )
                      | ( C = D ) ) )),
                trans(trans(der(( ! [B: $i,C: $i,D: $i] :
                          ( ~ ( in(B,A)
                              & ( C = singleton(B) )
                              & ( D = singleton(B) ) )
                          | ( C = D ) )
                    <=> ! [B: $i,C: $i,D: $i] :
                          ( ( singleton(B) = singleton(B) )
                          | ~ in(B,A) ) )),
                    elim_unused(( ! [B: $i,C: $i,D: $i] :
                          ( ( singleton(B) = singleton(B) )
                          | ~ in(B,A) )
                    <=> ! [B: $i] :
                          ( ( singleton(B) = singleton(B) )
                          | ~ in(B,A) ) )),
                    ( ! [B: $i,C: $i,D: $i] :
                        ( ~ ( in(B,A)
                            & ( C = singleton(B) )
                            & ( D = singleton(B) ) )
                        | ( C = D ) )
                  <=> ! [B: $i] :
                        ( ( singleton(B) = singleton(B) )
                        | ~ in(B,A) ) )),
                  trans(quant_intro(proof_bind(^ [B: $i] :
                          trans(monotonicity(rewrite(( ( singleton(B) = singleton(B) )
                              <=> $true )),
                              ( ( ( singleton(B) = singleton(B) )
                                | ~ in(B,A) )
                            <=> ( $true
                                | ~ in(B,A) ) )),
                            rewrite(( ( $true
                                | ~ in(B,A) )
                            <=> $true )),
                            ( ( ( singleton(B) = singleton(B) )
                              | ~ in(B,A) )
                          <=> $true ))),
                      ( ! [B: $i] :
                          ( ( singleton(B) = singleton(B) )
                          | ~ in(B,A) )
                    <=> ! [B: $i] : $true )),
                    elim_unused(( ! [B: $i] : $true
                    <=> $true )),
                    ( ! [B: $i] :
                        ( ( singleton(B) = singleton(B) )
                        | ~ in(B,A) )
                  <=> $true )),
                  ( ! [B: $i,C: $i,D: $i] :
                      ( ~ ( in(B,A)
                          & ( C = singleton(B) )
                          & ( D = singleton(B) ) )
                      | ( C = D ) )
                <=> $true )),
                ( ! [B: $i,C: $i,D: $i] :
                    ( ( in(B,A)
                      & ( C = singleton(B) )
                      & ( D = singleton(B) ) )
                   => ( C = D ) )
              <=> $true )),
              trans(quant_intro(proof_bind(^ [B: $i] :
                      trans(monotonicity(trans(monotonicity(der(( ! [C: $i] : ( C != singleton(B) )
                              <=> $false )),
                              ( ( in(B,A)
                                & ! [C: $i] : ( C != singleton(B) ) )
                            <=> ( in(B,A)
                                & $false ) )),
                            rewrite(( ( in(B,A)
                                & $false )
                            <=> $false )),
                            ( ( in(B,A)
                              & ! [C: $i] : ( C != singleton(B) ) )
                          <=> $false )),
                          ( ~ ( in(B,A)
                              & ! [C: $i] : ( C != singleton(B) ) )
                        <=> ~ $false )),
                        rewrite(( ~ $false
                        <=> $true )),
                        ( ~ ( in(B,A)
                            & ! [C: $i] : ( C != singleton(B) ) )
                      <=> $true ))),
                  ( ! [B: $i] :
                      ~ ( in(B,A)
                        & ! [C: $i] : ( C != singleton(B) ) )
                <=> ! [B: $i] : $true )),
                elim_unused(( ! [B: $i] : $true
                <=> $true )),
                ( ! [B: $i] :
                    ~ ( in(B,A)
                      & ! [C: $i] : ( C != singleton(B) ) )
              <=> $true )),
              ( ( ! [B: $i,C: $i,D: $i] :
                    ( ( in(B,A)
                      & ( C = singleton(B) )
                      & ( D = singleton(B) ) )
                   => ( C = D ) )
                & ! [B: $i] :
                    ~ ( in(B,A)
                      & ! [C: $i] : ( C != singleton(B) ) ) )
            <=> ( $true
                & $true ) )),
            rewrite(( ( $true
                & $true )
            <=> $true )),
            ( ( ! [B: $i,C: $i,D: $i] :
                  ( ( in(B,A)
                    & ( C = singleton(B) )
                    & ( D = singleton(B) ) )
                 => ( C = D ) )
              & ! [B: $i] :
                  ~ ( in(B,A)
                    & ! [C: $i] : ( C != singleton(B) ) ) )
          <=> $true )),
          quant_intro(proof_bind(^ [B: $i] :
                trans(monotonicity(rewrite(( ( relation(B)
                        & function(B)
                        & ( relation_dom(B) = A ) )
                    <=> ( relation(B)
                        & function(B)
                        & ( relation_dom(B) = A ) ) )),
                    quant_intro(proof_bind(^ [C: $i] :
                          rewrite(( ( in(C,A)
                             => ( apply(B,C) = singleton(C) ) )
                          <=> ( ~ in(C,A)
                              | ( apply(B,C) = singleton(C) ) ) ))),
                      ( ! [C: $i] :
                          ( in(C,A)
                         => ( apply(B,C) = singleton(C) ) )
                    <=> ! [C: $i] :
                          ( ~ in(C,A)
                          | ( apply(B,C) = singleton(C) ) ) )),
                    ( ( relation(B)
                      & function(B)
                      & ( relation_dom(B) = A )
                      & ! [C: $i] :
                          ( in(C,A)
                         => ( apply(B,C) = singleton(C) ) ) )
                  <=> ( relation(B)
                      & function(B)
                      & ( relation_dom(B) = A )
                      & ! [C: $i] :
                          ( ~ in(C,A)
                          | ( apply(B,C) = singleton(C) ) ) ) )),
                  rewrite(( ( relation(B)
                      & function(B)
                      & ( relation_dom(B) = A )
                      & ! [C: $i] :
                          ( ~ in(C,A)
                          | ( apply(B,C) = singleton(C) ) ) )
                  <=> ( relation(B)
                      & function(B)
                      & ( relation_dom(B) = A )
                      & ! [C: $i] :
                          ( ~ in(C,A)
                          | ( apply(B,C) = singleton(C) ) ) ) )),
                  ( ( relation(B)
                    & function(B)
                    & ( relation_dom(B) = A )
                    & ! [C: $i] :
                        ( in(C,A)
                       => ( apply(B,C) = singleton(C) ) ) )
                <=> ( relation(B)
                    & function(B)
                    & ( relation_dom(B) = A )
                    & ! [C: $i] :
                        ( ~ in(C,A)
                        | ( apply(B,C) = singleton(C) ) ) ) ))),
            ( ? [B: $i] :
                ( relation(B)
                & function(B)
                & ( relation_dom(B) = A )
                & ! [C: $i] :
                    ( in(C,A)
                   => ( apply(B,C) = singleton(C) ) ) )
          <=> ? [B: $i] :
                ( relation(B)
                & function(B)
                & ( relation_dom(B) = A )
                & ! [C: $i] :
                    ( ~ in(C,A)
                    | ( apply(B,C) = singleton(C) ) ) ) )),
          ( ( ( ! [B: $i,C: $i,D: $i] :
                  ( ( in(B,A)
                    & ( C = singleton(B) )
                    & ( D = singleton(B) ) )
                 => ( C = D ) )
              & ! [B: $i] :
                  ~ ( in(B,A)
                    & ! [C: $i] : ( C != singleton(B) ) ) )
           => ? [B: $i] :
                ( relation(B)
                & function(B)
                & ( relation_dom(B) = A )
                & ! [C: $i] :
                    ( in(C,A)
                   => ( apply(B,C) = singleton(C) ) ) ) )
        <=> ( $true
           => ? [B: $i] :
                ( relation(B)
                & function(B)
                & ( relation_dom(B) = A )
                & ! [C: $i] :
                    ( ~ in(C,A)
                    | ( apply(B,C) = singleton(C) ) ) ) ) )),
        rewrite(( ( $true
           => ? [B: $i] :
                ( relation(B)
                & function(B)
                & ( relation_dom(B) = A )
                & ! [C: $i] :
                    ( ~ in(C,A)
                    | ( apply(B,C) = singleton(C) ) ) ) )
        <=> ? [B: $i] :
              ( relation(B)
              & function(B)
              & ( relation_dom(B) = A )
              & ! [C: $i] :
                  ( ~ in(C,A)
                  | ( apply(B,C) = singleton(C) ) ) ) )),
        ( ( ( ! [B: $i,C: $i,D: $i] :
                ( ( in(B,A)
                  & ( C = singleton(B) )
                  & ( D = singleton(B) ) )
               => ( C = D ) )
            & ! [B: $i] :
                ~ ( in(B,A)
                  & ! [C: $i] : ( C != singleton(B) ) ) )
         => ? [B: $i] :
              ( relation(B)
              & function(B)
              & ( relation_dom(B) = A )
              & ! [C: $i] :
                  ( in(C,A)
                 => ( apply(B,C) = singleton(C) ) ) ) )
      <=> ? [B: $i] :
            ( relation(B)
            & function(B)
            & ( relation_dom(B) = A )
            & ! [C: $i] :
                ( ~ in(C,A)
                | ( apply(B,C) = singleton(C) ) ) ) )),
    inference(bind,[status(th)],[]) ).

tff(5,plain,
    ( ! [A: $i] :
        ( ( ! [B: $i,C: $i,D: $i] :
              ( ( in(B,A)
                & ( C = singleton(B) )
                & ( D = singleton(B) ) )
             => ( C = D ) )
          & ! [B: $i] :
              ~ ( in(B,A)
                & ! [C: $i] : ( C != singleton(B) ) ) )
       => ? [B: $i] :
            ( relation(B)
            & function(B)
            & ( relation_dom(B) = A )
            & ! [C: $i] :
                ( in(C,A)
               => ( apply(B,C) = singleton(C) ) ) ) )
  <=> ! [A: $i] :
      ? [B: $i] :
        ( relation(B)
        & function(B)
        & ( relation_dom(B) = A )
        & ! [C: $i] :
            ( ~ in(C,A)
            | ( apply(B,C) = singleton(C) ) ) ) ),
    inference(quant_intro,[status(thm)],[4]) ).

tff(6,axiom,
    ! [A: $i] :
      ( ( ! [B: $i,C: $i,D: $i] :
            ( ( in(B,A)
              & ( C = singleton(B) )
              & ( D = singleton(B) ) )
           => ( C = D ) )
        & ! [B: $i] :
            ~ ( in(B,A)
              & ! [C: $i] : ( C != singleton(B) ) ) )
     => ? [B: $i] :
          ( relation(B)
          & function(B)
          & ( relation_dom(B) = A )
          & ! [C: $i] :
              ( in(C,A)
             => ( apply(B,C) = singleton(C) ) ) ) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',s2_funct_1__e16_22__wellord2__1) ).

tff(7,plain,
    ! [A: $i] :
    ? [B: $i] :
      ( relation(B)
      & function(B)
      & ( relation_dom(B) = A )
      & ! [C: $i] :
          ( ~ in(C,A)
          | ( apply(B,C) = singleton(C) ) ) ),
    inference(modus_ponens,[status(thm)],[6,5]) ).

tff(8,plain,
    $false,
    inference(unit_resolution,[status(thm)],[7,3]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem    : SEU284+2 : TPTP v9.0.0. Released v3.3.0.
% 0.07/0.12  % Command    : run_E %s %d THM
% 0.13/0.34  % Computer : n009.cluster.edu
% 0.13/0.34  % Model    : x86_64 x86_64
% 0.13/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.34  % Memory   : 8042.1875MB
% 0.13/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.13/0.34  % CPULimit   : 300
% 0.13/0.34  % WCLimit    : 300
% 0.13/0.34  % DateTime   : Fri Jun 20 06:35:18 EDT 2025
% 0.13/0.34  % CPUTime    : 
% 0.21/0.44  % SZS status Theorem
% 0.21/0.44  % SZS output start Proof
% See solution above
% 0.21/0.47  % E exiting
%------------------------------------------------------------------------------