TSTP Solution File: LCL864^1 by Satallax---3.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Satallax---3.5
% Problem  : LCL864^1 : TPTP v8.1.0. Bugfixed v5.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : satallax -E eprover-ho -P picomus -M modes -p tstp -t %d %s

% Computer : n014.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 14:11:42 EDT 2022

% Result   : Theorem 25.31s 25.47s
% Output   : Proof 25.31s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   13
%            Number of leaves      :  184
% Syntax   : Number of formulae    :  227 ( 108 unt;  15 typ;  32 def)
%            Number of atoms       :  454 (  41 equ;   0 cnn)
%            Maximal formula atoms :    4 (   2 avg)
%            Number of connectives :  827 ( 241   ~;  52   |;   0   &; 355   @)
%                                         (  51 <=>; 126  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   11 (   3 avg)
%            Number of types       :    2 (   0 usr)
%            Number of type conns  :   64 (  64   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  102 (  99 usr; 100 con; 0-2 aty)
%                                         (   2  !!;   0  ??;   0 @@+;   0 @@-)
%            Number of variables   :  164 (  48   ^ 116   !;   0   ?; 164   :)

% Comments : 
%------------------------------------------------------------------------------
thf(ty_eigen__6,type,
    eigen__6: $i ).

thf(ty_eigen__16,type,
    eigen__16: $i ).

thf(ty_eigen__7,type,
    eigen__7: $i ).

thf(ty_eigen__15,type,
    eigen__15: $i ).

thf(ty_eigen__1,type,
    eigen__1: $i ).

thf(ty_eigen__0,type,
    eigen__0: $i > $i > $o ).

thf(ty_eigen__4,type,
    eigen__4: $i ).

thf(ty_eigen__5,type,
    eigen__5: $i ).

thf(ty_eigen__11,type,
    eigen__11: $i ).

thf(ty_eigen__3,type,
    eigen__3: $i ).

thf(ty_eigen__17,type,
    eigen__17: $i ).

thf(ty_eigen__10,type,
    eigen__10: $i ).

thf(ty_eigen__8,type,
    eigen__8: $i ).

thf(ty_eigen__9,type,
    eigen__9: $i ).

thf(ty_eigen__18,type,
    eigen__18: $i ).

thf(h0,assumption,
    ! [X1: $i > $o,X2: $i] :
      ( ( X1 @ X2 )
     => ( X1 @ ( eps__0 @ X1 ) ) ),
    introduced(assumption,[]) ).

thf(eigendef_eigen__15,definition,
    ( eigen__15
    = ( eps__0
      @ ^ [X1: $i] :
          ~ ~ ( eigen__0 @ eigen__11 @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[eigen__15])]) ).

thf(sP1,plain,
    ( sP1
  <=> ! [X1: $i,X2: $i,X3: $i] :
        ( ~ ( ( eigen__0 @ X1 @ X2 )
           => ~ ( eigen__0 @ X1 @ X3 ) )
       => ( eigen__0 @ X2 @ X3 ) ) ),
    introduced(definition,[new_symbols(definition,[sP1])]) ).

thf(sP2,plain,
    ( sP2
  <=> ! [X1: $i,X2: $i] :
        ( ~ ( ( eigen__0 @ eigen__6 @ X1 )
           => ~ ( eigen__0 @ eigen__6 @ X2 ) )
       => ( eigen__0 @ X1 @ X2 ) ) ),
    introduced(definition,[new_symbols(definition,[sP2])]) ).

thf(sP3,plain,
    ( sP3
  <=> ( ( eigen__0 @ eigen__11 @ eigen__15 )
     => ( eigen__0 @ eigen__15 @ eigen__11 ) ) ),
    introduced(definition,[new_symbols(definition,[sP3])]) ).

thf(sP4,plain,
    ( sP4
  <=> ( ~ ( ( eigen__0 @ eigen__4 @ eigen__3 )
         => ~ ( eigen__0 @ eigen__4 @ eigen__5 ) )
     => ( eigen__0 @ eigen__3 @ eigen__5 ) ) ),
    introduced(definition,[new_symbols(definition,[sP4])]) ).

thf(sP5,plain,
    ( sP5
  <=> ! [X1: $i] :
        ~ ( eigen__0 @ eigen__11 @ X1 ) ),
    introduced(definition,[new_symbols(definition,[sP5])]) ).

thf(sP6,plain,
    ( sP6
  <=> ( ( eigen__0 @ eigen__6 @ eigen__7 )
     => ~ ( eigen__0 @ eigen__6 @ eigen__6 ) ) ),
    introduced(definition,[new_symbols(definition,[sP6])]) ).

thf(sP7,plain,
    ( sP7
  <=> ! [X1: $i,X2: $i] :
        ( ~ ( ( eigen__0 @ eigen__3 @ X1 )
           => ~ ( eigen__0 @ eigen__3 @ X2 ) )
       => ( eigen__0 @ X1 @ X2 ) ) ),
    introduced(definition,[new_symbols(definition,[sP7])]) ).

thf(sP8,plain,
    ( sP8
  <=> ( ( eigen__0 @ eigen__16 @ eigen__17 )
     => ~ ( eigen__0 @ eigen__16 @ eigen__18 ) ) ),
    introduced(definition,[new_symbols(definition,[sP8])]) ).

thf(sP9,plain,
    ( sP9
  <=> ( eigen__0 @ eigen__8 @ eigen__10 ) ),
    introduced(definition,[new_symbols(definition,[sP9])]) ).

thf(sP10,plain,
    ( sP10
  <=> ! [X1: $i,X2: $i] :
        ( ~ ( ( eigen__0 @ eigen__4 @ X1 )
           => ~ ( eigen__0 @ eigen__4 @ X2 ) )
       => ( eigen__0 @ X1 @ X2 ) ) ),
    introduced(definition,[new_symbols(definition,[sP10])]) ).

thf(sP11,plain,
    ( sP11
  <=> ( eigen__0 @ eigen__4 @ eigen__3 ) ),
    introduced(definition,[new_symbols(definition,[sP11])]) ).

thf(sP12,plain,
    ( sP12
  <=> ( ~ sP8
     => ( eigen__0 @ eigen__17 @ eigen__18 ) ) ),
    introduced(definition,[new_symbols(definition,[sP12])]) ).

thf(sP13,plain,
    ( sP13
  <=> ( ~ ( ( eigen__0 @ eigen__3 @ eigen__4 )
         => ~ ( eigen__0 @ eigen__3 @ eigen__3 ) )
     => sP11 ) ),
    introduced(definition,[new_symbols(definition,[sP13])]) ).

thf(sP14,plain,
    ( sP14
  <=> ! [X1: $i,X2: $i] :
        ( ~ ( ( eigen__0 @ eigen__11 @ X1 )
           => ~ ( eigen__0 @ X1 @ X2 ) )
       => ( eigen__0 @ eigen__11 @ X2 ) ) ),
    introduced(definition,[new_symbols(definition,[sP14])]) ).

thf(sP15,plain,
    ( sP15
  <=> ( eigen__0 @ eigen__16 @ eigen__18 ) ),
    introduced(definition,[new_symbols(definition,[sP15])]) ).

thf(sP16,plain,
    ( sP16
  <=> ! [X1: $i] :
        ( ~ ( ( eigen__0 @ eigen__11 @ eigen__15 )
           => ~ ( eigen__0 @ eigen__15 @ X1 ) )
       => ( eigen__0 @ eigen__11 @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP16])]) ).

thf(sP17,plain,
    ( sP17
  <=> ( eigen__0 @ eigen__7 @ eigen__6 ) ),
    introduced(definition,[new_symbols(definition,[sP17])]) ).

thf(sP18,plain,
    ( sP18
  <=> ( sP11
     => ~ ( eigen__0 @ eigen__4 @ eigen__5 ) ) ),
    introduced(definition,[new_symbols(definition,[sP18])]) ).

thf(sP19,plain,
    ( sP19
  <=> ( ~ sP6
     => sP17 ) ),
    introduced(definition,[new_symbols(definition,[sP19])]) ).

thf(sP20,plain,
    ( sP20
  <=> ( eigen__0 @ eigen__3 @ eigen__4 ) ),
    introduced(definition,[new_symbols(definition,[sP20])]) ).

thf(sP21,plain,
    ( sP21
  <=> ( eigen__0 @ eigen__16 @ eigen__17 ) ),
    introduced(definition,[new_symbols(definition,[sP21])]) ).

thf(sP22,plain,
    ( sP22
  <=> ( ( eigen__0 @ eigen__11 @ eigen__15 )
     => ~ ( eigen__0 @ eigen__15 @ eigen__11 ) ) ),
    introduced(definition,[new_symbols(definition,[sP22])]) ).

thf(sP23,plain,
    ( sP23
  <=> ! [X1: $i,X2: $i,X3: $i] :
        ( ~ ( ( eigen__0 @ X1 @ X2 )
           => ~ ( eigen__0 @ X2 @ X3 ) )
       => ( eigen__0 @ X1 @ X3 ) ) ),
    introduced(definition,[new_symbols(definition,[sP23])]) ).

thf(sP24,plain,
    ( sP24
  <=> ( eigen__0 @ eigen__3 @ eigen__3 ) ),
    introduced(definition,[new_symbols(definition,[sP24])]) ).

thf(sP25,plain,
    ( sP25
  <=> ! [X1: $i,X2: $i] :
        ( ~ ( ( eigen__0 @ eigen__16 @ X1 )
           => ~ ( eigen__0 @ eigen__16 @ X2 ) )
       => ( eigen__0 @ X1 @ X2 ) ) ),
    introduced(definition,[new_symbols(definition,[sP25])]) ).

thf(sP26,plain,
    ( sP26
  <=> ( eigen__0 @ eigen__11 @ eigen__15 ) ),
    introduced(definition,[new_symbols(definition,[sP26])]) ).

thf(sP27,plain,
    ( sP27
  <=> ( ~ sP22
     => ( eigen__0 @ eigen__11 @ eigen__11 ) ) ),
    introduced(definition,[new_symbols(definition,[sP27])]) ).

thf(sP28,plain,
    ( sP28
  <=> ! [X1: $i,X2: $i] :
        ( ~ ( ( eigen__0 @ eigen__8 @ X1 )
           => ~ ( eigen__0 @ eigen__8 @ X2 ) )
       => ( eigen__0 @ X1 @ X2 ) ) ),
    introduced(definition,[new_symbols(definition,[sP28])]) ).

thf(sP29,plain,
    ( sP29
  <=> ( eigen__0 @ eigen__4 @ eigen__5 ) ),
    introduced(definition,[new_symbols(definition,[sP29])]) ).

thf(sP30,plain,
    ( sP30
  <=> ! [X1: $i] :
        ( ~ ( ( eigen__0 @ eigen__6 @ eigen__7 )
           => ~ ( eigen__0 @ eigen__6 @ X1 ) )
       => ( eigen__0 @ eigen__7 @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP30])]) ).

thf(sP31,plain,
    ( sP31
  <=> ( eigen__0 @ eigen__6 @ eigen__7 ) ),
    introduced(definition,[new_symbols(definition,[sP31])]) ).

thf(sP32,plain,
    ( sP32
  <=> ! [X1: $i] :
        ( ~ ( sP11
           => ~ ( eigen__0 @ eigen__4 @ X1 ) )
       => ( eigen__0 @ eigen__3 @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP32])]) ).

thf(sP33,plain,
    ( sP33
  <=> ( eigen__0 @ eigen__11 @ eigen__11 ) ),
    introduced(definition,[new_symbols(definition,[sP33])]) ).

thf(sP34,plain,
    ( sP34
  <=> ( eigen__0 @ eigen__9 @ eigen__10 ) ),
    introduced(definition,[new_symbols(definition,[sP34])]) ).

thf(sP35,plain,
    ( sP35
  <=> ! [X1: $i] : ( eigen__0 @ X1 @ X1 ) ),
    introduced(definition,[new_symbols(definition,[sP35])]) ).

thf(sP36,plain,
    ( sP36
  <=> ! [X1: $i] :
        ( ~ ( sP21
           => ~ ( eigen__0 @ eigen__16 @ X1 ) )
       => ( eigen__0 @ eigen__17 @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP36])]) ).

thf(sP37,plain,
    ( sP37
  <=> ( eigen__0 @ eigen__17 @ eigen__18 ) ),
    introduced(definition,[new_symbols(definition,[sP37])]) ).

thf(sP38,plain,
    ( sP38
  <=> ( eigen__0 @ eigen__1 @ eigen__1 ) ),
    introduced(definition,[new_symbols(definition,[sP38])]) ).

thf(sP39,plain,
    ( sP39
  <=> ! [X1: $i] :
        ( ( eigen__0 @ eigen__11 @ X1 )
       => ( eigen__0 @ X1 @ eigen__11 ) ) ),
    introduced(definition,[new_symbols(definition,[sP39])]) ).

thf(sP40,plain,
    ( sP40
  <=> ! [X1: $i] :
        ~ ( eigen__0 @ eigen__1 @ X1 ) ),
    introduced(definition,[new_symbols(definition,[sP40])]) ).

thf(sP41,plain,
    ( sP41
  <=> ! [X1: $i] :
        ( ~ ( sP20
           => ~ ( eigen__0 @ eigen__3 @ X1 ) )
       => ( eigen__0 @ eigen__4 @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP41])]) ).

thf(sP42,plain,
    ( sP42
  <=> ( eigen__0 @ eigen__8 @ eigen__9 ) ),
    introduced(definition,[new_symbols(definition,[sP42])]) ).

thf(sP43,plain,
    ( sP43
  <=> ( eigen__0 @ eigen__15 @ eigen__11 ) ),
    introduced(definition,[new_symbols(definition,[sP43])]) ).

thf(sP44,plain,
    ( sP44
  <=> ( eigen__0 @ eigen__6 @ eigen__6 ) ),
    introduced(definition,[new_symbols(definition,[sP44])]) ).

thf(sP45,plain,
    ( sP45
  <=> ! [X1: $i,X2: $i] :
        ( ( eigen__0 @ X1 @ X2 )
       => ( eigen__0 @ X2 @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP45])]) ).

thf(sP46,plain,
    ( sP46
  <=> ( sP42
     => ~ sP9 ) ),
    introduced(definition,[new_symbols(definition,[sP46])]) ).

thf(sP47,plain,
    ( sP47
  <=> ( ~ sP46
     => sP34 ) ),
    introduced(definition,[new_symbols(definition,[sP47])]) ).

thf(sP48,plain,
    ( sP48
  <=> ( sP20
     => ~ sP24 ) ),
    introduced(definition,[new_symbols(definition,[sP48])]) ).

thf(sP49,plain,
    ( sP49
  <=> ( eigen__0 @ eigen__3 @ eigen__5 ) ),
    introduced(definition,[new_symbols(definition,[sP49])]) ).

thf(sP50,plain,
    ( sP50
  <=> ! [X1: $i] :
        ( ~ ( sP42
           => ~ ( eigen__0 @ eigen__8 @ X1 ) )
       => ( eigen__0 @ eigen__9 @ X1 ) ) ),
    introduced(definition,[new_symbols(definition,[sP50])]) ).

thf(sP51,plain,
    ( sP51
  <=> ! [X1: $i] :
        ~ ! [X2: $i] :
            ~ ( eigen__0 @ X1 @ X2 ) ),
    introduced(definition,[new_symbols(definition,[sP51])]) ).

thf(def_meq_ind,definition,
    ( meq_ind
    = ( ^ [X1: mu,X2: mu,X3: $i] : ( X1 = X2 ) ) ) ).

thf(def_meq_prop,definition,
    ( meq_prop
    = ( ^ [X1: $i > $o,X2: $i > $o,X3: $i] :
          ( ( X1 @ X3 )
          = ( X2 @ X3 ) ) ) ) ).

thf(def_mnot,definition,
    ( mnot
    = ( ^ [X1: $i > $o,X2: $i] :
          ~ ( X1 @ X2 ) ) ) ).

thf(def_mor,definition,
    ( mor
    = ( ^ [X1: $i > $o,X2: $i > $o,X3: $i] :
          ( ~ ( X1 @ X3 )
         => ( X2 @ X3 ) ) ) ) ).

thf(def_mand,definition,
    ( mand
    = ( ^ [X1: $i > $o,X2: $i > $o] : ( mnot @ ( mor @ ( mnot @ X1 ) @ ( mnot @ X2 ) ) ) ) ) ).

thf(def_mimplies,definition,
    ( mimplies
    = ( ^ [X1: $i > $o] : ( mor @ ( mnot @ X1 ) ) ) ) ).

thf(def_mimplied,definition,
    ( mimplied
    = ( ^ [X1: $i > $o,X2: $i > $o] : ( mor @ ( mnot @ X2 ) @ X1 ) ) ) ).

thf(def_mequiv,definition,
    ( mequiv
    = ( ^ [X1: $i > $o,X2: $i > $o] : ( mand @ ( mimplies @ X1 @ X2 ) @ ( mimplies @ X2 @ X1 ) ) ) ) ).

thf(def_mxor,definition,
    ( mxor
    = ( ^ [X1: $i > $o,X2: $i > $o] : ( mnot @ ( mequiv @ X1 @ X2 ) ) ) ) ).

thf(def_mforall_ind,definition,
    ( mforall_ind
    = ( ^ [X1: mu > $i > $o,X2: $i] :
        ! [X3: mu] : ( X1 @ X3 @ X2 ) ) ) ).

thf(def_mforall_prop,definition,
    ( mforall_prop
    = ( ^ [X1: ( $i > $o ) > $i > $o,X2: $i] :
        ! [X3: $i > $o] : ( X1 @ X3 @ X2 ) ) ) ).

thf(def_mexists_ind,definition,
    ( mexists_ind
    = ( ^ [X1: mu > $i > $o] :
          ( mnot
          @ ( mforall_ind
            @ ^ [X2: mu] : ( mnot @ ( X1 @ X2 ) ) ) ) ) ) ).

thf(def_mexists_prop,definition,
    ( mexists_prop
    = ( ^ [X1: ( $i > $o ) > $i > $o] :
          ( mnot
          @ ( mforall_prop
            @ ^ [X2: $i > $o] : ( mnot @ ( X1 @ X2 ) ) ) ) ) ) ).

thf(def_mtrue,definition,
    ( mtrue
    = ( ^ [X1: $i] : ~ $false ) ) ).

thf(def_mfalse,definition,
    ( mfalse
    = ( mnot @ mtrue ) ) ).

thf(def_mbox,definition,
    ( mbox
    = ( ^ [X1: $i > $i > $o,X2: $i > $o,X3: $i] :
        ! [X4: $i] :
          ( ( X1 @ X3 @ X4 )
         => ( X2 @ X4 ) ) ) ) ).

thf(def_mdia,definition,
    ( mdia
    = ( ^ [X1: $i > $i > $o,X2: $i > $o] : ( mnot @ ( mbox @ X1 @ ( mnot @ X2 ) ) ) ) ) ).

thf(def_mreflexive,definition,
    ( mreflexive
    = ( ^ [X1: $i > $i > $o] :
        ! [X2: $i] : ( X1 @ X2 @ X2 ) ) ) ).

thf(def_msymmetric,definition,
    ( msymmetric
    = ( ^ [X1: $i > $i > $o] :
        ! [X2: $i,X3: $i] :
          ( ( X1 @ X2 @ X3 )
         => ( X1 @ X3 @ X2 ) ) ) ) ).

thf(def_mserial,definition,
    ( mserial
    = ( ^ [X1: $i > $i > $o] :
        ! [X2: $i] :
          ~ ! [X3: $i] :
              ~ ( X1 @ X2 @ X3 ) ) ) ).

thf(def_mtransitive,definition,
    ( mtransitive
    = ( ^ [X1: $i > $i > $o] :
        ! [X2: $i,X3: $i,X4: $i] :
          ( ~ ( ( X1 @ X2 @ X3 )
             => ~ ( X1 @ X3 @ X4 ) )
         => ( X1 @ X2 @ X4 ) ) ) ) ).

thf(def_meuclidean,definition,
    ( meuclidean
    = ( ^ [X1: $i > $i > $o] :
        ! [X2: $i,X3: $i,X4: $i] :
          ( ~ ( ( X1 @ X2 @ X3 )
             => ~ ( X1 @ X2 @ X4 ) )
         => ( X1 @ X3 @ X4 ) ) ) ) ).

thf(def_mpartially_functional,definition,
    ( mpartially_functional
    = ( ^ [X1: $i > $i > $o] :
        ! [X2: $i,X3: $i,X4: $i] :
          ( ~ ( ( X1 @ X2 @ X3 )
             => ~ ( X1 @ X2 @ X4 ) )
         => ( X3 = X4 ) ) ) ) ).

thf(def_mfunctional,definition,
    ( mfunctional
    = ( ^ [X1: $i > $i > $o] :
        ! [X2: $i] :
          ~ ! [X3: $i] :
              ( ( X1 @ X2 @ X3 )
             => ~ ! [X4: $i] :
                    ( ( X1 @ X2 @ X4 )
                   => ( X3 = X4 ) ) ) ) ) ).

thf(def_mweakly_dense,definition,
    ( mweakly_dense
    = ( ^ [X1: $i > $i > $o] :
        ! [X2: $i,X3: $i,X4: $i] :
          ( ( X1 @ X2 @ X3 )
         => ~ ! [X5: $i] :
                ( ( X1 @ X2 @ X5 )
               => ~ ( X1 @ X5 @ X3 ) ) ) ) ) ).

thf(def_mweakly_connected,definition,
    ( mweakly_connected
    = ( ^ [X1: $i > $i > $o] :
        ! [X2: $i,X3: $i,X4: $i] :
          ( ~ ( ( X1 @ X2 @ X3 )
             => ~ ( X1 @ X2 @ X4 ) )
         => ( ~ ( ~ ( X1 @ X3 @ X4 )
               => ( X3 = X4 ) )
           => ( X1 @ X4 @ X3 ) ) ) ) ) ).

thf(def_mweakly_directed,definition,
    ( mweakly_directed
    = ( ^ [X1: $i > $i > $o] :
        ! [X2: $i,X3: $i,X4: $i] :
          ( ~ ( ( X1 @ X2 @ X3 )
             => ~ ( X1 @ X2 @ X4 ) )
         => ~ ! [X5: $i] :
                ( ( X1 @ X3 @ X5 )
               => ~ ( X1 @ X4 @ X5 ) ) ) ) ) ).

thf(def_mvalid,definition,
    mvalid = !! ).

thf(def_minvalid,definition,
    ( minvalid
    = ( ^ [X1: $i > $o] :
        ! [X2: $i] :
          ~ ( X1 @ X2 ) ) ) ).

thf(def_msatisfiable,definition,
    ( msatisfiable
    = ( ^ [X1: $i > $o] :
          ~ ! [X2: $i] :
              ~ ( X1 @ X2 ) ) ) ).

thf(def_mcountersatisfiable,definition,
    ( mcountersatisfiable
    = ( ^ [X1: $i > $o] :
          ~ ( !! @ X1 ) ) ) ).

thf(conj,conjecture,
    ! [X1: $i > $i > $o] :
      ( ( ~ ( ! [X2: $i] : ( X1 @ X2 @ X2 )
           => ~ ! [X2: $i,X3: $i,X4: $i] :
                  ( ~ ( ( X1 @ X2 @ X3 )
                     => ~ ( X1 @ X2 @ X4 ) )
                 => ( X1 @ X3 @ X4 ) ) ) )
      = ( ~ ( ~ ( ~ ( ! [X2: $i] :
                        ~ ! [X3: $i] :
                            ~ ( X1 @ X2 @ X3 )
                   => ~ ! [X2: $i,X3: $i,X4: $i] :
                          ( ~ ( ( X1 @ X2 @ X3 )
                             => ~ ( X1 @ X3 @ X4 ) )
                         => ( X1 @ X2 @ X4 ) ) )
               => ~ ! [X2: $i,X3: $i] :
                      ( ( X1 @ X2 @ X3 )
                     => ( X1 @ X3 @ X2 ) ) )
           => ~ ! [X2: $i,X3: $i,X4: $i] :
                  ( ~ ( ( X1 @ X2 @ X3 )
                     => ~ ( X1 @ X2 @ X4 ) )
                 => ( X1 @ X3 @ X4 ) ) ) ) ) ).

thf(h1,negated_conjecture,
    ~ ! [X1: $i > $i > $o] :
        ( ( ~ ( ! [X2: $i] : ( X1 @ X2 @ X2 )
             => ~ ! [X2: $i,X3: $i,X4: $i] :
                    ( ~ ( ( X1 @ X2 @ X3 )
                       => ~ ( X1 @ X2 @ X4 ) )
                   => ( X1 @ X3 @ X4 ) ) ) )
        = ( ~ ( ~ ( ~ ( ! [X2: $i] :
                          ~ ! [X3: $i] :
                              ~ ( X1 @ X2 @ X3 )
                     => ~ ! [X2: $i,X3: $i,X4: $i] :
                            ( ~ ( ( X1 @ X2 @ X3 )
                               => ~ ( X1 @ X3 @ X4 ) )
                           => ( X1 @ X2 @ X4 ) ) )
                 => ~ ! [X2: $i,X3: $i] :
                        ( ( X1 @ X2 @ X3 )
                       => ( X1 @ X3 @ X2 ) ) )
             => ~ ! [X2: $i,X3: $i,X4: $i] :
                    ( ~ ( ( X1 @ X2 @ X3 )
                       => ~ ( X1 @ X2 @ X4 ) )
                   => ( X1 @ X3 @ X4 ) ) ) ) ),
    inference(assume_negation,[status(cth)],[conj]) ).

thf(h2,assumption,
    ( ~ ( sP35
       => ~ sP1 ) )
 != ( ~ ( ~ ( ~ ( sP51
               => ~ sP23 )
           => ~ sP45 )
       => ~ sP1 ) ),
    introduced(assumption,[]) ).

thf(h3,assumption,
    ~ ( sP35
     => ~ sP1 ),
    introduced(assumption,[]) ).

thf(h4,assumption,
    ~ ( ~ ( ~ ( sP51
             => ~ sP23 )
         => ~ sP45 )
     => ~ sP1 ),
    introduced(assumption,[]) ).

thf(h5,assumption,
    ( sP35
   => ~ sP1 ),
    introduced(assumption,[]) ).

thf(h6,assumption,
    ( ~ ( ~ ( sP51
           => ~ sP23 )
       => ~ sP45 )
   => ~ sP1 ),
    introduced(assumption,[]) ).

thf(h7,assumption,
    sP35,
    introduced(assumption,[]) ).

thf(h8,assumption,
    sP1,
    introduced(assumption,[]) ).

thf(h9,assumption,
    ( ~ ( sP51
       => ~ sP23 )
   => ~ sP45 ),
    introduced(assumption,[]) ).

thf(h10,assumption,
    ~ sP1,
    introduced(assumption,[]) ).

thf(h11,assumption,
    ( sP51
   => ~ sP23 ),
    introduced(assumption,[]) ).

thf(h12,assumption,
    ~ sP45,
    introduced(assumption,[]) ).

thf(h13,assumption,
    ~ sP51,
    introduced(assumption,[]) ).

thf(h14,assumption,
    ~ sP23,
    introduced(assumption,[]) ).

thf(h15,assumption,
    sP40,
    introduced(assumption,[]) ).

thf(1,plain,
    ( ~ sP40
    | ~ sP38 ),
    inference(all_rule,[status(thm)],]) ).

thf(2,plain,
    ( ~ sP35
    | sP38 ),
    inference(all_rule,[status(thm)],]) ).

thf(3,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h15,h13,h11,h9,h7,h8,h3,h4,h2,h1,h0])],[1,2,h7,h15]) ).

thf(4,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h13,h11,h9,h7,h8,h3,h4,h2,h1,h0]),tab_negall(discharge,[h15]),tab_negall(eigenvar,eigen__1)],[h13,3,h15]) ).

thf(h16,assumption,
    ~ ! [X1: $i,X2: $i] :
        ( ~ ( ( eigen__0 @ eigen__3 @ X1 )
           => ~ ( eigen__0 @ X1 @ X2 ) )
       => ( eigen__0 @ eigen__3 @ X2 ) ),
    introduced(assumption,[]) ).

thf(h17,assumption,
    ~ ! [X1: $i] :
        ( ~ ( sP20
           => ~ ( eigen__0 @ eigen__4 @ X1 ) )
       => ( eigen__0 @ eigen__3 @ X1 ) ),
    introduced(assumption,[]) ).

thf(h18,assumption,
    ~ ( ~ ( sP20
         => ~ sP29 )
     => sP49 ),
    introduced(assumption,[]) ).

thf(h19,assumption,
    ~ ( sP20
     => ~ sP29 ),
    introduced(assumption,[]) ).

thf(h20,assumption,
    ~ sP49,
    introduced(assumption,[]) ).

thf(h21,assumption,
    sP20,
    introduced(assumption,[]) ).

thf(h22,assumption,
    sP29,
    introduced(assumption,[]) ).

thf(5,plain,
    ( ~ sP35
    | sP24 ),
    inference(all_rule,[status(thm)],]) ).

thf(6,plain,
    ( ~ sP41
    | sP13 ),
    inference(all_rule,[status(thm)],]) ).

thf(7,plain,
    ( ~ sP13
    | sP48
    | sP11 ),
    inference(prop_rule,[status(thm)],]) ).

thf(8,plain,
    ( ~ sP48
    | ~ sP20
    | ~ sP24 ),
    inference(prop_rule,[status(thm)],]) ).

thf(9,plain,
    ( ~ sP1
    | sP7 ),
    inference(all_rule,[status(thm)],]) ).

thf(10,plain,
    ( ~ sP7
    | sP41 ),
    inference(all_rule,[status(thm)],]) ).

thf(11,plain,
    ( ~ sP1
    | sP10 ),
    inference(all_rule,[status(thm)],]) ).

thf(12,plain,
    ( ~ sP10
    | sP32 ),
    inference(all_rule,[status(thm)],]) ).

thf(13,plain,
    ( ~ sP32
    | sP4 ),
    inference(all_rule,[status(thm)],]) ).

thf(14,plain,
    ( ~ sP4
    | sP18
    | sP49 ),
    inference(prop_rule,[status(thm)],]) ).

thf(15,plain,
    ( ~ sP18
    | ~ sP11
    | ~ sP29 ),
    inference(prop_rule,[status(thm)],]) ).

thf(16,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h21,h22,h19,h20,h18,h17,h16,h14,h11,h9,h7,h8,h3,h4,h2,h1,h0])],[5,6,7,8,9,10,11,12,13,14,15,h7,h8,h21,h22,h20]) ).

thf(17,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h19,h20,h18,h17,h16,h14,h11,h9,h7,h8,h3,h4,h2,h1,h0]),tab_negimp(discharge,[h21,h22])],[h19,16,h21,h22]) ).

thf(18,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h18,h17,h16,h14,h11,h9,h7,h8,h3,h4,h2,h1,h0]),tab_negimp(discharge,[h19,h20])],[h18,17,h19,h20]) ).

thf(19,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h17,h16,h14,h11,h9,h7,h8,h3,h4,h2,h1,h0]),tab_negall(discharge,[h18]),tab_negall(eigenvar,eigen__5)],[h17,18,h18]) ).

thf(20,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h16,h14,h11,h9,h7,h8,h3,h4,h2,h1,h0]),tab_negall(discharge,[h17]),tab_negall(eigenvar,eigen__4)],[h16,19,h17]) ).

thf(21,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h14,h11,h9,h7,h8,h3,h4,h2,h1,h0]),tab_negall(discharge,[h16]),tab_negall(eigenvar,eigen__3)],[h14,20,h16]) ).

thf(22,plain,
    $false,
    inference(tab_imp,[status(thm),assumptions([h11,h9,h7,h8,h3,h4,h2,h1,h0]),tab_imp(discharge,[h13]),tab_imp(discharge,[h14])],[h11,4,21,h13,h14]) ).

thf(h23,assumption,
    ~ ! [X1: $i] :
        ( ( eigen__0 @ eigen__6 @ X1 )
       => ( eigen__0 @ X1 @ eigen__6 ) ),
    introduced(assumption,[]) ).

thf(h24,assumption,
    ~ ( sP31
     => sP17 ),
    introduced(assumption,[]) ).

thf(h25,assumption,
    sP31,
    introduced(assumption,[]) ).

thf(h26,assumption,
    ~ sP17,
    introduced(assumption,[]) ).

thf(23,plain,
    ( ~ sP35
    | sP44 ),
    inference(all_rule,[status(thm)],]) ).

thf(24,plain,
    ( ~ sP1
    | sP2 ),
    inference(all_rule,[status(thm)],]) ).

thf(25,plain,
    ( ~ sP2
    | sP30 ),
    inference(all_rule,[status(thm)],]) ).

thf(26,plain,
    ( ~ sP30
    | sP19 ),
    inference(all_rule,[status(thm)],]) ).

thf(27,plain,
    ( ~ sP19
    | sP6
    | sP17 ),
    inference(prop_rule,[status(thm)],]) ).

thf(28,plain,
    ( ~ sP6
    | ~ sP31
    | ~ sP44 ),
    inference(prop_rule,[status(thm)],]) ).

thf(29,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h25,h26,h24,h23,h12,h9,h7,h8,h3,h4,h2,h1,h0])],[23,24,25,26,27,28,h7,h8,h25,h26]) ).

thf(30,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h24,h23,h12,h9,h7,h8,h3,h4,h2,h1,h0]),tab_negimp(discharge,[h25,h26])],[h24,29,h25,h26]) ).

thf(31,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h23,h12,h9,h7,h8,h3,h4,h2,h1,h0]),tab_negall(discharge,[h24]),tab_negall(eigenvar,eigen__7)],[h23,30,h24]) ).

thf(32,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h12,h9,h7,h8,h3,h4,h2,h1,h0]),tab_negall(discharge,[h23]),tab_negall(eigenvar,eigen__6)],[h12,31,h23]) ).

thf(33,plain,
    $false,
    inference(tab_imp,[status(thm),assumptions([h9,h7,h8,h3,h4,h2,h1,h0]),tab_imp(discharge,[h11]),tab_imp(discharge,[h12])],[h9,22,32,h11,h12]) ).

thf(h27,assumption,
    ~ sP28,
    introduced(assumption,[]) ).

thf(h28,assumption,
    ~ sP50,
    introduced(assumption,[]) ).

thf(h29,assumption,
    ~ sP47,
    introduced(assumption,[]) ).

thf(h30,assumption,
    ~ sP46,
    introduced(assumption,[]) ).

thf(h31,assumption,
    ~ sP34,
    introduced(assumption,[]) ).

thf(h32,assumption,
    sP42,
    introduced(assumption,[]) ).

thf(h33,assumption,
    sP9,
    introduced(assumption,[]) ).

thf(34,plain,
    ( ~ sP1
    | sP28 ),
    inference(all_rule,[status(thm)],]) ).

thf(35,plain,
    ( ~ sP28
    | sP50 ),
    inference(all_rule,[status(thm)],]) ).

thf(36,plain,
    ( ~ sP50
    | sP47 ),
    inference(all_rule,[status(thm)],]) ).

thf(37,plain,
    ( ~ sP47
    | sP46
    | sP34 ),
    inference(prop_rule,[status(thm)],]) ).

thf(38,plain,
    ( ~ sP46
    | ~ sP42
    | ~ sP9 ),
    inference(prop_rule,[status(thm)],]) ).

thf(39,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h32,h33,h30,h31,h29,h28,h27,h10,h7,h8,h3,h4,h2,h1,h0])],[34,35,36,37,38,h8,h32,h33,h31]) ).

thf(40,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h30,h31,h29,h28,h27,h10,h7,h8,h3,h4,h2,h1,h0]),tab_negimp(discharge,[h32,h33])],[h30,39,h32,h33]) ).

thf(41,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h29,h28,h27,h10,h7,h8,h3,h4,h2,h1,h0]),tab_negimp(discharge,[h30,h31])],[h29,40,h30,h31]) ).

thf(42,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h28,h27,h10,h7,h8,h3,h4,h2,h1,h0]),tab_negall(discharge,[h29]),tab_negall(eigenvar,eigen__10)],[h28,41,h29]) ).

thf(43,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h27,h10,h7,h8,h3,h4,h2,h1,h0]),tab_negall(discharge,[h28]),tab_negall(eigenvar,eigen__9)],[h27,42,h28]) ).

thf(44,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h10,h7,h8,h3,h4,h2,h1,h0]),tab_negall(discharge,[h27]),tab_negall(eigenvar,eigen__8)],[h10,43,h27]) ).

thf(45,plain,
    $false,
    inference(tab_imp,[status(thm),assumptions([h7,h8,h3,h4,h2,h1,h0]),tab_imp(discharge,[h9]),tab_imp(discharge,[h10])],[h4,33,44,h9,h10]) ).

thf(46,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h3,h4,h2,h1,h0]),tab_negimp(discharge,[h7,h8])],[h3,45,h7,h8]) ).

thf(h34,assumption,
    ~ sP35,
    introduced(assumption,[]) ).

thf(h35,assumption,
    ~ sP33,
    introduced(assumption,[]) ).

thf(h36,assumption,
    ~ ( ~ ( sP51
         => ~ sP23 )
     => ~ sP45 ),
    introduced(assumption,[]) ).

thf(h37,assumption,
    ~ ( sP51
     => ~ sP23 ),
    introduced(assumption,[]) ).

thf(h38,assumption,
    sP45,
    introduced(assumption,[]) ).

thf(h39,assumption,
    sP51,
    introduced(assumption,[]) ).

thf(h40,assumption,
    sP23,
    introduced(assumption,[]) ).

thf(47,plain,
    ( ~ sP16
    | sP27 ),
    inference(all_rule,[status(thm)],]) ).

thf(48,plain,
    ( ~ sP27
    | sP22
    | sP33 ),
    inference(prop_rule,[status(thm)],]) ).

thf(49,plain,
    ( ~ sP22
    | ~ sP26
    | ~ sP43 ),
    inference(prop_rule,[status(thm)],]) ).

thf(50,plain,
    ( ~ sP39
    | sP3 ),
    inference(all_rule,[status(thm)],]) ).

thf(51,plain,
    ( ~ sP3
    | ~ sP26
    | sP43 ),
    inference(prop_rule,[status(thm)],]) ).

thf(52,plain,
    ( ~ sP14
    | sP16 ),
    inference(all_rule,[status(thm)],]) ).

thf(53,plain,
    ( sP5
    | sP26 ),
    inference(eigen_choice_rule,[status(thm),assumptions([h0])],[h0,eigendef_eigen__15]) ).

thf(54,plain,
    ( ~ sP51
    | ~ sP5 ),
    inference(all_rule,[status(thm)],]) ).

thf(55,plain,
    ( ~ sP23
    | sP14 ),
    inference(all_rule,[status(thm)],]) ).

thf(56,plain,
    ( ~ sP45
    | sP39 ),
    inference(all_rule,[status(thm)],]) ).

thf(57,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h39,h40,h37,h38,h36,h8,h35,h34,h5,h6,h2,h1,h0])],[47,48,49,50,51,52,53,54,55,56,h35,h39,h40,h38]) ).

thf(58,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h37,h38,h36,h8,h35,h34,h5,h6,h2,h1,h0]),tab_negimp(discharge,[h39,h40])],[h37,57,h39,h40]) ).

thf(59,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h36,h8,h35,h34,h5,h6,h2,h1,h0]),tab_negimp(discharge,[h37,h38])],[h36,58,h37,h38]) ).

thf(60,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h35,h34,h5,h6,h2,h1,h0]),tab_negimp(discharge,[h36,h8])],[h6,59,h36,h8]) ).

thf(61,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h34,h5,h6,h2,h1,h0]),tab_negall(discharge,[h35]),tab_negall(eigenvar,eigen__11)],[h34,60,h35]) ).

thf(h41,assumption,
    ~ sP25,
    introduced(assumption,[]) ).

thf(h42,assumption,
    ~ sP36,
    introduced(assumption,[]) ).

thf(h43,assumption,
    ~ sP12,
    introduced(assumption,[]) ).

thf(h44,assumption,
    ~ sP8,
    introduced(assumption,[]) ).

thf(h45,assumption,
    ~ sP37,
    introduced(assumption,[]) ).

thf(h46,assumption,
    sP21,
    introduced(assumption,[]) ).

thf(h47,assumption,
    sP15,
    introduced(assumption,[]) ).

thf(62,plain,
    ( ~ sP1
    | sP25 ),
    inference(all_rule,[status(thm)],]) ).

thf(63,plain,
    ( ~ sP25
    | sP36 ),
    inference(all_rule,[status(thm)],]) ).

thf(64,plain,
    ( ~ sP36
    | sP12 ),
    inference(all_rule,[status(thm)],]) ).

thf(65,plain,
    ( ~ sP12
    | sP8
    | sP37 ),
    inference(prop_rule,[status(thm)],]) ).

thf(66,plain,
    ( ~ sP8
    | ~ sP21
    | ~ sP15 ),
    inference(prop_rule,[status(thm)],]) ).

thf(67,plain,
    $false,
    inference(prop_unsat,[status(thm),assumptions([h39,h40,h37,h38,h36,h8,h46,h47,h44,h45,h43,h42,h41,h10,h5,h6,h2,h1,h0])],[62,63,64,65,66,h46,h47,h45,h8]) ).

thf(68,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h37,h38,h36,h8,h46,h47,h44,h45,h43,h42,h41,h10,h5,h6,h2,h1,h0]),tab_negimp(discharge,[h39,h40])],[h37,67,h39,h40]) ).

thf(69,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h36,h8,h46,h47,h44,h45,h43,h42,h41,h10,h5,h6,h2,h1,h0]),tab_negimp(discharge,[h37,h38])],[h36,68,h37,h38]) ).

thf(70,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h46,h47,h44,h45,h43,h42,h41,h10,h5,h6,h2,h1,h0]),tab_negimp(discharge,[h36,h8])],[h6,69,h36,h8]) ).

thf(71,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h44,h45,h43,h42,h41,h10,h5,h6,h2,h1,h0]),tab_negimp(discharge,[h46,h47])],[h44,70,h46,h47]) ).

thf(72,plain,
    $false,
    inference(tab_negimp,[status(thm),assumptions([h43,h42,h41,h10,h5,h6,h2,h1,h0]),tab_negimp(discharge,[h44,h45])],[h43,71,h44,h45]) ).

thf(73,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h42,h41,h10,h5,h6,h2,h1,h0]),tab_negall(discharge,[h43]),tab_negall(eigenvar,eigen__18)],[h42,72,h43]) ).

thf(74,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h41,h10,h5,h6,h2,h1,h0]),tab_negall(discharge,[h42]),tab_negall(eigenvar,eigen__17)],[h41,73,h42]) ).

thf(75,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h10,h5,h6,h2,h1,h0]),tab_negall(discharge,[h41]),tab_negall(eigenvar,eigen__16)],[h10,74,h41]) ).

thf(76,plain,
    $false,
    inference(tab_imp,[status(thm),assumptions([h5,h6,h2,h1,h0]),tab_imp(discharge,[h34]),tab_imp(discharge,[h10])],[h5,61,75,h34,h10]) ).

thf(77,plain,
    $false,
    inference(tab_be,[status(thm),assumptions([h2,h1,h0]),tab_be(discharge,[h3,h4]),tab_be(discharge,[h5,h6])],[h2,46,76,h3,h4,h5,h6]) ).

thf(78,plain,
    $false,
    inference(tab_negall,[status(thm),assumptions([h1,h0]),tab_negall(discharge,[h2]),tab_negall(eigenvar,eigen__0)],[h1,77,h2]) ).

thf(79,plain,
    $false,
    inference(eigenvar_choice,[status(thm),assumptions([h1]),eigenvar_choice(discharge,[h0])],[78,h0]) ).

thf(0,theorem,
    ! [X1: $i > $i > $o] :
      ( ( ~ ( ! [X2: $i] : ( X1 @ X2 @ X2 )
           => ~ ! [X2: $i,X3: $i,X4: $i] :
                  ( ~ ( ( X1 @ X2 @ X3 )
                     => ~ ( X1 @ X2 @ X4 ) )
                 => ( X1 @ X3 @ X4 ) ) ) )
      = ( ~ ( ~ ( ~ ( ! [X2: $i] :
                        ~ ! [X3: $i] :
                            ~ ( X1 @ X2 @ X3 )
                   => ~ ! [X2: $i,X3: $i,X4: $i] :
                          ( ~ ( ( X1 @ X2 @ X3 )
                             => ~ ( X1 @ X3 @ X4 ) )
                         => ( X1 @ X2 @ X4 ) ) )
               => ~ ! [X2: $i,X3: $i] :
                      ( ( X1 @ X2 @ X3 )
                     => ( X1 @ X3 @ X2 ) ) )
           => ~ ! [X2: $i,X3: $i,X4: $i] :
                  ( ~ ( ( X1 @ X2 @ X3 )
                     => ~ ( X1 @ X2 @ X4 ) )
                 => ( X1 @ X3 @ X4 ) ) ) ) ),
    inference(contra,[status(thm),contra(discharge,[h1])],[78,h1]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.11/0.11  % Problem  : LCL864^1 : TPTP v8.1.0. Bugfixed v5.0.0.
% 0.11/0.12  % Command  : satallax -E eprover-ho -P picomus -M modes -p tstp -t %d %s
% 0.11/0.32  % Computer : n014.cluster.edu
% 0.11/0.32  % Model    : x86_64 x86_64
% 0.11/0.32  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.11/0.32  % Memory   : 8042.1875MB
% 0.11/0.32  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.11/0.32  % CPULimit : 300
% 0.11/0.32  % WCLimit  : 600
% 0.11/0.32  % DateTime : Sat Jul  2 22:11:25 EDT 2022
% 0.11/0.32  % CPUTime  : 
% 25.31/25.47  % SZS status Theorem
% 25.31/25.47  % Mode: mode515
% 25.31/25.47  % Inferences: 90892
% 25.31/25.47  % SZS output start Proof
% See solution above
%------------------------------------------------------------------------------