TSTP Solution File: ALG267^1 by Vampire---4.8

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Vampire---4.8
% Problem  : ALG267^1 : TPTP v8.2.0. Bugfixed v5.2.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : vampire --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule file --schedule_file /export/starexec/sandbox/solver/bin/quickGreedyProduceRating_steal_pow3.txt --cores 8 -m 12000 -t %d %s

% Computer : n021.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 : Mon May 20 18:20:31 EDT 2024

% Result   : Theorem 2.12s 0.63s
% Output   : Refutation 2.12s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   52
%            Number of leaves      :   99
% Syntax   : Number of formulae    :  285 ( 222 unt;  57 typ;   0 def)
%            Number of atoms       : 6114 (1258 equ;   0 cnn)
%            Maximal formula atoms :    3 (  26 avg)
%            Number of connectives : 27065 ( 216   ~;   0   |; 103   &;19776   @)
%                                         (   0 <=>;2971  =>;   0  <=;   0 <~>)
%            Maximal formula depth :    6 (   1 avg)
%            Number of types       :    3 (   2 usr)
%            Number of type conns  : 1795 (1795   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   96 (  91 usr;  46 con; 0-4 aty)
%                                         (3955  !!;  44  ??;   0 @@+;   0 @@-)
%            Number of variables   : 4456 (4178   ^ 275   !;   2   ?;4456   :)
%                                         (   1  !>;   0  ?*;   0  @-;   0  @+)

% Comments : 
%------------------------------------------------------------------------------
thf(type_def_5,type,
    term: $tType ).

thf(type_def_7,type,
    subst: $tType ).

thf(func_def_0,type,
    term: $tType ).

thf(func_def_1,type,
    subst: $tType ).

thf(func_def_2,type,
    one: term ).

thf(func_def_3,type,
    ap: term > term > term ).

thf(func_def_4,type,
    lam: term > term ).

thf(func_def_5,type,
    sub: term > subst > term ).

thf(func_def_6,type,
    id: subst ).

thf(func_def_7,type,
    sh: subst ).

thf(func_def_8,type,
    push: term > subst > subst ).

thf(func_def_9,type,
    comp: subst > subst > subst ).

thf(func_def_10,type,
    var: term > $o ).

thf(func_def_18,type,
    hoasap: subst > term > subst > term > term ).

thf(func_def_73,type,
    hoaslam: subst > ( subst > term > term ) > term ).

thf(func_def_86,type,
    hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).

thf(func_def_107,type,
    hoasvar: subst > term > subst > $o ).

thf(func_def_121,type,
    pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).

thf(func_def_142,type,
    sK1: ( term > $o ) > subst > term ).

thf(func_def_143,type,
    sK2: ( term > $o ) > term ).

thf(func_def_144,type,
    sK3: ( term > $o ) > term ).

thf(func_def_145,type,
    sK4: ( term > $o ) > term ).

thf(func_def_146,type,
    sK5: ( subst > term > term ) > subst ).

thf(func_def_147,type,
    sK6: ( subst > term > term ) > subst ).

thf(func_def_148,type,
    sK7: ( subst > term > term ) > term ).

thf(func_def_149,type,
    sK8: term ).

thf(func_def_150,type,
    sK9: ( subst > term > subst > $o ) > term ).

thf(func_def_151,type,
    sK10: ( subst > term > subst > $o ) > subst ).

thf(func_def_152,type,
    sK11: ( subst > term > subst > $o ) > subst ).

thf(func_def_153,type,
    sK12: ( subst > term > subst > $o ) > term ).

thf(func_def_154,type,
    sK13: ( subst > term > subst > $o ) > subst ).

thf(func_def_155,type,
    sK14: ( subst > term > subst > $o ) > subst ).

thf(func_def_156,type,
    sK15: ( subst > term > subst > $o ) > term ).

thf(func_def_157,type,
    sK16: ( subst > term > subst > $o ) > subst ).

thf(func_def_158,type,
    sK17: ( subst > term > subst > $o ) > term ).

thf(func_def_159,type,
    sK18: ( subst > term > subst > $o ) > subst ).

thf(func_def_160,type,
    sK19: ( subst > term > subst > $o ) > subst ).

thf(func_def_161,type,
    sK20: ( subst > term > subst > $o ) > subst ).

thf(func_def_162,type,
    sK21: ( subst > term > subst > $o ) > subst ).

thf(func_def_163,type,
    sK22: ( subst > term > subst > $o ) > subst ).

thf(func_def_164,type,
    sK23: ( subst > term > subst > $o ) > subst ).

thf(func_def_165,type,
    sK24: ( subst > term > subst > $o ) > term ).

thf(func_def_166,type,
    sK25: ( subst > term > subst > $o ) > term ).

thf(func_def_167,type,
    sK26: ( subst > term > subst > $o ) > subst ).

thf(func_def_168,type,
    sK27: ( subst > term > subst > $o ) > term ).

thf(func_def_169,type,
    sK28: ( subst > term > term ) > term ).

thf(func_def_170,type,
    sK29: ( subst > term > term ) > subst ).

thf(func_def_171,type,
    sK30: ( subst > term > term ) > subst ).

thf(func_def_172,type,
    sK31: ( subst > term > term ) > subst ).

thf(func_def_173,type,
    sK32: ( subst > term > term ) > term ).

thf(func_def_174,type,
    sK33: ( subst > term > term ) > subst ).

thf(func_def_175,type,
    sK34: ( term > $o ) > term ).

thf(func_def_176,type,
    sK35: ( term > $o ) > term ).

thf(func_def_177,type,
    sK36: ( term > $o ) > term ).

thf(func_def_178,type,
    sK37: ( term > $o ) > term ).

thf(func_def_179,type,
    sK38: ( term > $o ) > term ).

thf(func_def_180,type,
    ph39: 
      !>[X0: $tType] : X0 ).

thf(f1185,plain,
    $false,
    inference(equality_resolution,[],[f1175]) ).

thf(f1175,plain,
    ! [X1: subst > term > term] :
      ( ( X1 @ sh @ one )
     != sK8 ),
    inference(forward_demodulation,[],[f1174,f473]) ).

thf(f473,plain,
    ! [X1: term] :
      ( ( sub @ X1 @ id )
      = X1 ),
    inference(equality_proxy_clausification,[],[f472]) ).

thf(f472,plain,
    ! [X1: term] :
      ( $true
      = ( ( sub @ X1 @ id )
        = X1 ) ),
    inference(beta_eta_normalization,[],[f471]) ).

thf(f471,plain,
    ! [X1: term] :
      ( $true
      = ( ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 )
        @ X1 ) ),
    inference(pi_clausification,[],[f470]) ).

thf(f470,plain,
    ( $true
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( sub @ Y0 @ id )
          = Y0 ) ) ),
    inference(binary_proxy_clausification,[],[f462]) ).

thf(f462,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( ( sub @ ( lam @ Y0 ) @ Y1 )
                  = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                        = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ id @ Y0 )
                  = Y0 ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                        = Y0 ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                              = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                                = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ Y0 @ id )
                          = Y0 ) )
                   => ( ( id
                        = ( push @ one @ sh ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                              = Y0 ) )
                       => ( ( var @ one )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( ( var @ Y0 )
                                 => ( var @ ( sub @ Y0 @ sh ) ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( Y0 @ one )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ Y1 @ Y2 )
                                                    = ( ap @ Y0 @ Y3 ) )
                                                 => ( Y1 = Y0 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ Y0 @ Y2 )
                                                      = ( ap @ Y3 @ Y1 ) )
                                                   => ( Y2 = Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( ( lam @ Y1 )
                                                = ( lam @ Y0 ) )
                                             => ( Y1 = Y0 ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( ( sub @ Y1 @ sh )
                                                  = ( sub @ Y0 @ sh ) )
                                               => ( Y1 = Y0 ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( lam @ Y1 )
                                                     != ( ap @ Y0 @ Y2 ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ~ ( var @ ( lam @ Y0 ) ) )
                                           => ( ( !! @ ( term > $o )
                                                @ ^ [Y0: term > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( var @ Y1 )
                                                         => ( Y0 @ Y1 ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( Y0 @ Y1 )
                                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                       => ( !! @ term @ Y0 ) ) ) ) )
                                             => ( ( !! @ ( term > $o )
                                                  @ ^ [Y0: term > $o] :
                                                      ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( var @ Y3 )
                                                                   => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                             => ( ( Y0 @ Y2 )
                                                               => ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( var @ Y3 )
                                                                     => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( ( Y0 @ Y2 )
                                                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( var @ Y3 )
                                                                         => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                                   => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                                 => ( ( !! @ ( term > $o )
                                                      @ ^ [Y0: term > $o] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( var @ Y1 )
                                                               => ( Y0 @ Y1 ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y2 )
                                                                     => ( ( Y0 @ Y1 )
                                                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                             => ( !! @ term @ Y0 ) ) ) ) )
                                                   => ( ( ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                                      = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                                        & ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( ( comp @ Y0 @ id )
                                                              = Y0 ) )
                                                        & ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( ( comp @ id @ Y0 )
                                                              = Y0 ) ) )
                                                     => ( ( ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( ( sub @ Y0 @ id )
                                                                = Y0 ) )
                                                          & ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                                        = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                              = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                                           => ( Y3 = Y0 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                                = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                             => ( Y3 = Y2 ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > term )
                                                                @ ^ [Y0: subst > term > term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                   => ( !! @ ( subst > term > term )
                                                                      @ ^ [Y1: subst > term > term] :
                                                                          ( ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y4: subst] :
                                                                                        ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                                        = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                                         => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                              = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                           => ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ Y3 @ Y2 )
                                                                                      = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > term )
                                                                  @ ^ [Y0: subst > term > term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( ( lam @ ( Y0 @ sh @ one ) )
                                                                               != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                                      = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y0: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                                   => ( ( !! @ ( subst > term > subst > $o )
                                                                        @ ^ [Y0: subst > term > subst > $o] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y4: term] :
                                                                                              ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                             => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                           => ( ( !! @ subst
                                                                                @ ^ [Y1: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y3: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y4: subst] :
                                                                                                ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                               => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                             => ( ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( ( var @ ( sub @ Y1 @ id ) )
                                                                                     => ( Y0 @ id @ Y1 @ id ) ) )
                                                                               => ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( ( var @ Y1 )
                                                                                     => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                     => ( ( !! @ ( subst > term > subst > $o )
                                                                          @ ^ [Y0: subst > term > subst > $o] :
                                                                              ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y4: subst] :
                                                                                                ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                               => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                             => ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y2: term] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y4: subst] :
                                                                                                  ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                                 => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                               => ( ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y2: term] :
                                                                                            ( ( Y0 @ id @ Y1 @ id )
                                                                                           => ( ( Y0 @ id @ Y2 @ id )
                                                                                             => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                                 => ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y2: term] :
                                                                                            ( ( Y0 @ id @ Y2 @ id )
                                                                                           => ( ( Y0 @ id @ Y1 @ id )
                                                                                             => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                                       => ( !! @ term
                                                                          @ ^ [Y0: term] :
                                                                              ( ?? @ ( subst > term > term )
                                                                              @ ^ [Y1: subst > term > term] :
                                                                                  ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                  = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f460]) ).

thf(f460,plain,
    ( $false
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
                = Y1 ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( ( sub @ Y0 @ id )
              = Y0 ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( ( sub @ ( lam @ Y0 ) @ Y1 )
                    = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                          = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ id @ Y0 )
                    = Y0 ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                          = Y0 ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                                  = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( comp @ Y0 @ id )
                            = Y0 ) )
                     => ( ( id
                          = ( push @ one @ sh ) )
                       => ( ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                = Y0 ) )
                         => ( ( var @ one )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( ( var @ Y0 )
                                   => ( var @ ( sub @ Y0 @ sh ) ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( Y0 @ one )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ Y1 @ Y2 )
                                                      = ( ap @ Y0 @ Y3 ) )
                                                   => ( Y1 = Y0 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ Y0 @ Y2 )
                                                        = ( ap @ Y3 @ Y1 ) )
                                                     => ( Y2 = Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( ( lam @ Y1 )
                                                  = ( lam @ Y0 ) )
                                               => ( Y1 = Y0 ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( ( sub @ Y1 @ sh )
                                                    = ( sub @ Y0 @ sh ) )
                                                 => ( Y1 = Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( lam @ Y1 )
                                                       != ( ap @ Y0 @ Y2 ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ~ ( var @ ( lam @ Y0 ) ) )
                                             => ( ( !! @ ( term > $o )
                                                  @ ^ [Y0: term > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( var @ Y1 )
                                                           => ( Y0 @ Y1 ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( ( Y0 @ Y1 )
                                                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( Y0 @ Y1 )
                                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                         => ( !! @ term @ Y0 ) ) ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( var @ Y3 )
                                                                     => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                               => ( ( Y0 @ Y2 )
                                                                 => ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                                 => ( ( !! @ ( term > $o )
                                                      @ ^ [Y0: term > $o] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y1 )
                                                                   => ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( var @ Y3 )
                                                                           => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                                     => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ Y1 )
                                                                 => ( Y0 @ Y1 ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( ( Y0 @ Y1 )
                                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( Y0 @ Y2 )
                                                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                               => ( !! @ term @ Y0 ) ) ) ) )
                                                     => ( ( ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                                        = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                                          & ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( ( comp @ Y0 @ id )
                                                                = Y0 ) )
                                                          & ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( ( comp @ id @ Y0 )
                                                                = Y0 ) ) )
                                                       => ( ( ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( ( sub @ Y0 @ id )
                                                                  = Y0 ) )
                                                            & ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                                          = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                                = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                                             => ( Y3 = Y0 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                               => ( Y3 = Y2 ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > term )
                                                                  @ ^ [Y0: subst > term > term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                     => ( !! @ ( subst > term > term )
                                                                        @ ^ [Y1: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y4: subst] :
                                                                                          ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                                          = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                                           => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                                = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                             => ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( ( Y0 @ Y3 @ Y2 )
                                                                                        = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                       => ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( lam @ ( Y0 @ sh @ one ) )
                                                                                 != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > term )
                                                                      @ ^ [Y0: subst > term > term] :
                                                                          ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y3: term] :
                                                                                        ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                                        = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y0: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                                     => ( ( !! @ ( subst > term > subst > $o )
                                                                          @ ^ [Y0: subst > term > subst > $o] :
                                                                              ( ( !! @ subst
                                                                                @ ^ [Y1: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y4: term] :
                                                                                                ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                               => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                             => ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y3: term] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y4: subst] :
                                                                                                  ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                                 => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                               => ( ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( ( var @ ( sub @ Y1 @ id ) )
                                                                                       => ( Y0 @ id @ Y1 @ id ) ) )
                                                                                 => ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( ( var @ Y1 )
                                                                                       => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                       => ( ( !! @ ( subst > term > subst > $o )
                                                                            @ ^ [Y0: subst > term > subst > $o] :
                                                                                ( ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y4: subst] :
                                                                                                  ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                                 => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                               => ( ( !! @ subst
                                                                                    @ ^ [Y1: subst] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y2: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y3: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y4: subst] :
                                                                                                    ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                                   => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                                 => ( ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y2: term] :
                                                                                              ( ( Y0 @ id @ Y1 @ id )
                                                                                             => ( ( Y0 @ id @ Y2 @ id )
                                                                                               => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                                   => ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y2: term] :
                                                                                              ( ( Y0 @ id @ Y2 @ id )
                                                                                             => ( ( Y0 @ id @ Y1 @ id )
                                                                                               => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y0: term] :
                                                                                ( ?? @ ( subst > term > term )
                                                                                @ ^ [Y1: subst > term > term] :
                                                                                    ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                    = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f459]) ).

thf(f459,plain,
    ( $false
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 )
                    = ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
                  = Y1 ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sub @ Y0 @ id )
                = Y0 ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( ( sub @ ( lam @ Y0 ) @ Y1 )
                      = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                            = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ id @ Y0 )
                      = Y0 ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                            = Y0 ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                  = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                                    = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ Y0 @ id )
                              = Y0 ) )
                       => ( ( id
                            = ( push @ one @ sh ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                  = Y0 ) )
                           => ( ( var @ one )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ( var @ Y0 )
                                     => ( var @ ( sub @ Y0 @ sh ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( Y0 @ one )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ Y1 @ Y2 )
                                                        = ( ap @ Y0 @ Y3 ) )
                                                     => ( Y1 = Y0 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ Y0 @ Y2 )
                                                          = ( ap @ Y3 @ Y1 ) )
                                                       => ( Y2 = Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( ( lam @ Y1 )
                                                    = ( lam @ Y0 ) )
                                                 => ( Y1 = Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( ( sub @ Y1 @ sh )
                                                      = ( sub @ Y0 @ sh ) )
                                                   => ( Y1 = Y0 ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( lam @ Y1 )
                                                         != ( ap @ Y0 @ Y2 ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ~ ( var @ ( lam @ Y0 ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ Y1 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term @ Y0 ) ) ) ) )
                                                 => ( ( !! @ ( term > $o )
                                                      @ ^ [Y0: term > $o] :
                                                          ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                 => ( ( Y0 @ Y2 )
                                                                   => ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( var @ Y3 )
                                                                         => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                                       => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                                     => ( ( !! @ ( term > $o )
                                                          @ ^ [Y0: term > $o] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ Y1 )
                                                                   => ( Y0 @ Y1 ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( ( Y0 @ Y1 )
                                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ term @ Y0 ) ) ) ) )
                                                       => ( ( ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                                          = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ Y0 @ id )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ id @ Y0 )
                                                                  = Y0 ) ) )
                                                         => ( ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( ( sub @ Y0 @ id )
                                                                    = Y0 ) )
                                                              & ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                                            = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                                  = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                                               => ( Y3 = Y0 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                                 => ( Y3 = Y2 ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                       => ( !! @ ( subst > term > term )
                                                                          @ ^ [Y1: subst > term > term] :
                                                                              ( ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y3: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                                            = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                                             => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                                  = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                               => ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ Y3 @ Y2 )
                                                                                          = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > term )
                                                                      @ ^ [Y0: subst > term > term] :
                                                                          ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( lam @ ( Y0 @ sh @ one ) )
                                                                                   != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y3: term] :
                                                                                          ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                                          = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                     => ( ( !! @ term
                                                                          @ ^ [Y0: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                                       => ( ( !! @ ( subst > term > subst > $o )
                                                                            @ ^ [Y0: subst > term > subst > $o] :
                                                                                ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( !! @ term
                                                                                              @ ^ [Y4: term] :
                                                                                                  ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                                 => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                               => ( ( !! @ subst
                                                                                    @ ^ [Y1: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y2: subst] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y3: term] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y4: subst] :
                                                                                                    ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                                   => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                                 => ( ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( ( var @ ( sub @ Y1 @ id ) )
                                                                                         => ( Y0 @ id @ Y1 @ id ) ) )
                                                                                   => ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( ( var @ Y1 )
                                                                                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                         => ( ( !! @ ( subst > term > subst > $o )
                                                                              @ ^ [Y0: subst > term > subst > $o] :
                                                                                  ( ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y2: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y3: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y4: subst] :
                                                                                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                                 => ( ( !! @ subst
                                                                                      @ ^ [Y1: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y2: term] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y3: subst] :
                                                                                                  ( !! @ subst
                                                                                                  @ ^ [Y4: subst] :
                                                                                                      ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                                     => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                                   => ( ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y2: term] :
                                                                                                ( ( Y0 @ id @ Y1 @ id )
                                                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                                                 => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                                     => ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y2: term] :
                                                                                                ( ( Y0 @ id @ Y2 @ id )
                                                                                               => ( ( Y0 @ id @ Y1 @ id )
                                                                                                 => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                                           => ( !! @ term
                                                                              @ ^ [Y0: term] :
                                                                                  ( ?? @ ( subst > term > term )
                                                                                  @ ^ [Y1: subst > term > term] :
                                                                                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(not_proxy_clausification,[],[f458]) ).

thf(f458,plain,
    ( $true
    = ( ~ ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 )
                        = ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
                      = Y1 ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( ( sub @ Y0 @ id )
                    = Y0 ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( ( sub @ ( lam @ Y0 ) @ Y1 )
                          = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ id @ Y0 )
                          = Y0 ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                                = Y0 ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                      = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                                        = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( comp @ Y0 @ id )
                                  = Y0 ) )
                           => ( ( id
                                = ( push @ one @ sh ) )
                             => ( ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                      = Y0 ) )
                               => ( ( var @ one )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( ( var @ Y0 )
                                         => ( var @ ( sub @ Y0 @ sh ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( Y0 @ one )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( ( ap @ Y1 @ Y2 )
                                                            = ( ap @ Y0 @ Y3 ) )
                                                         => ( Y1 = Y0 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( ( ap @ Y0 @ Y2 )
                                                              = ( ap @ Y3 @ Y1 ) )
                                                           => ( Y2 = Y1 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( ( lam @ Y1 )
                                                        = ( lam @ Y0 ) )
                                                     => ( Y1 = Y0 ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( ( sub @ Y1 @ sh )
                                                          = ( sub @ Y0 @ sh ) )
                                                       => ( Y1 = Y0 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( lam @ Y1 )
                                                             != ( ap @ Y0 @ Y2 ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ~ ( var @ ( lam @ Y0 ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ Y1 )
                                                                 => ( Y0 @ Y1 ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( ( Y0 @ Y1 )
                                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                               => ( !! @ term @ Y0 ) ) ) ) )
                                                     => ( ( !! @ ( term > $o )
                                                          @ ^ [Y0: term > $o] :
                                                              ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( var @ Y3 )
                                                                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                     => ( ( Y0 @ Y2 )
                                                                       => ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                                       => ( ( !! @ ( term > $o )
                                                            @ ^ [Y0: term > $o] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y1 )
                                                                         => ( ( Y0 @ Y2 )
                                                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( var @ Y3 )
                                                                                 => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                                           => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                                         => ( ( !! @ ( term > $o )
                                                              @ ^ [Y0: term > $o] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( var @ Y1 )
                                                                       => ( Y0 @ Y1 ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( ( Y0 @ Y1 )
                                                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( Y0 @ Y2 )
                                                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                     => ( !! @ term @ Y0 ) ) ) ) )
                                                           => ( ( ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                                              = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                                                & ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( ( comp @ Y0 @ id )
                                                                      = Y0 ) )
                                                                & ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( ( comp @ id @ Y0 )
                                                                      = Y0 ) ) )
                                                             => ( ( ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( ( sub @ Y0 @ id )
                                                                        = Y0 ) )
                                                                  & ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                                                = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                                      = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                                                   => ( Y3 = Y0 ) ) ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y0: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                                        = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                                     => ( Y3 = Y2 ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                           => ( !! @ ( subst > term > term )
                                                                              @ ^ [Y1: subst > term > term] :
                                                                                  ( ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y3: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y4: subst] :
                                                                                                ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                                                = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                                                 => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                                      = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                                   => ( !! @ term
                                                                                      @ ^ [Y2: term] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( ( Y0 @ Y3 @ Y2 )
                                                                                              = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                                     => ( ( !! @ ( subst > term > term )
                                                                          @ ^ [Y0: subst > term > term] :
                                                                              ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                             => ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y2: term] :
                                                                                        ( ( lam @ ( Y0 @ sh @ one ) )
                                                                                       != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                                       => ( ( !! @ ( subst > term > term )
                                                                            @ ^ [Y0: subst > term > term] :
                                                                                ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y3: term] :
                                                                                              ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                                              = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                         => ( ( !! @ term
                                                                              @ ^ [Y0: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                                           => ( ( !! @ ( subst > term > subst > $o )
                                                                                @ ^ [Y0: subst > term > subst > $o] :
                                                                                    ( ( !! @ subst
                                                                                      @ ^ [Y1: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y2: subst] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y3: subst] :
                                                                                                  ( !! @ term
                                                                                                  @ ^ [Y4: term] :
                                                                                                      ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                                     => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                                   => ( ( !! @ subst
                                                                                        @ ^ [Y1: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y2: subst] :
                                                                                                ( !! @ term
                                                                                                @ ^ [Y3: term] :
                                                                                                    ( !! @ subst
                                                                                                    @ ^ [Y4: subst] :
                                                                                                        ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                                       => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                                     => ( ( !! @ term
                                                                                          @ ^ [Y1: term] :
                                                                                              ( ( var @ ( sub @ Y1 @ id ) )
                                                                                             => ( Y0 @ id @ Y1 @ id ) ) )
                                                                                       => ( !! @ term
                                                                                          @ ^ [Y1: term] :
                                                                                              ( ( var @ Y1 )
                                                                                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                             => ( ( !! @ ( subst > term > subst > $o )
                                                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                                                      ( ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y2: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y3: subst] :
                                                                                                    ( !! @ subst
                                                                                                    @ ^ [Y4: subst] :
                                                                                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                                     => ( ( !! @ subst
                                                                                          @ ^ [Y1: subst] :
                                                                                              ( !! @ term
                                                                                              @ ^ [Y2: term] :
                                                                                                  ( !! @ subst
                                                                                                  @ ^ [Y3: subst] :
                                                                                                      ( !! @ subst
                                                                                                      @ ^ [Y4: subst] :
                                                                                                          ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                                         => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                                       => ( ( !! @ term
                                                                                            @ ^ [Y1: term] :
                                                                                                ( !! @ term
                                                                                                @ ^ [Y2: term] :
                                                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                                                     => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                                         => ( !! @ term
                                                                                            @ ^ [Y1: term] :
                                                                                                ( !! @ term
                                                                                                @ ^ [Y2: term] :
                                                                                                    ( ( Y0 @ id @ Y2 @ id )
                                                                                                   => ( ( Y0 @ id @ Y1 @ id )
                                                                                                     => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                                               => ( !! @ term
                                                                                  @ ^ [Y0: term] :
                                                                                      ( ?? @ ( subst > term > term )
                                                                                      @ ^ [Y1: subst > term > term] :
                                                                                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(beta_eta_normalization,[],[f457]) ).

thf(f457,plain,
    ( $true
    = ( ~ ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 )
                        = ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
                      = Y1 ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( ( sub @ Y0 @ id )
                    = Y0 ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( ( sub @ ( lam @ Y0 ) @ Y1 )
                          = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ id @ Y0 )
                          = Y0 ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                                = Y0 ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                      = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                                        = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( comp @ Y0 @ id )
                                  = Y0 ) )
                           => ( ( id
                                = ( push @ one @ sh ) )
                             => ( ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                      = Y0 ) )
                               => ( ( var @ one )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( ( var @ Y0 )
                                         => ( var @ ( sub @ Y0 @ sh ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( Y0 @ one )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( ( ap @ Y1 @ Y2 )
                                                            = ( ap @ Y0 @ Y3 ) )
                                                         => ( Y1 = Y0 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( ( ap @ Y0 @ Y2 )
                                                              = ( ap @ Y3 @ Y1 ) )
                                                           => ( Y2 = Y1 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( ( lam @ Y1 )
                                                        = ( lam @ Y0 ) )
                                                     => ( Y1 = Y0 ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( ( sub @ Y1 @ sh )
                                                          = ( sub @ Y0 @ sh ) )
                                                       => ( Y1 = Y0 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( lam @ Y1 )
                                                             != ( ap @ Y0 @ Y2 ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ~ ( var @ ( lam @ Y0 ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ Y1 )
                                                                 => ( Y0 @ Y1 ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( ( Y0 @ Y1 )
                                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                     => ( ( !! @ ( term > $o )
                                                          @ ^ [Y0: term > $o] :
                                                              ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( var @ Y3 )
                                                                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                     => ( ( Y0 @ Y2 )
                                                                       => ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                                       => ( ( !! @ ( term > $o )
                                                            @ ^ [Y0: term > $o] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y1 )
                                                                         => ( ( Y0 @ Y2 )
                                                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( var @ Y3 )
                                                                                 => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                                           => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                                         => ( ( !! @ ( term > $o )
                                                              @ ^ [Y0: term > $o] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( var @ Y1 )
                                                                       => ( Y0 @ Y1 ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( ( Y0 @ Y1 )
                                                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( Y0 @ Y2 )
                                                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                           => ( ( ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                                              = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                                                & ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( ( comp @ Y0 @ id )
                                                                      = Y0 ) )
                                                                & ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( ( comp @ id @ Y0 )
                                                                      = Y0 ) ) )
                                                             => ( ( ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( ( sub @ Y0 @ id )
                                                                        = Y0 ) )
                                                                  & ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                                                = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                        @ id
                                                                                        @ Y0
                                                                                        @ id
                                                                                        @ Y2 )
                                                                                      = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                        @ id
                                                                                        @ Y3
                                                                                        @ id
                                                                                        @ Y1 ) )
                                                                                   => ( Y3 = Y0 ) ) ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y0: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                          @ id
                                                                                          @ Y1
                                                                                          @ id
                                                                                          @ Y3 )
                                                                                        = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                          @ id
                                                                                          @ Y0
                                                                                          @ id
                                                                                          @ Y2 ) )
                                                                                     => ( Y3 = Y2 ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                           => ( !! @ ( subst > term > term )
                                                                              @ ^ [Y1: subst > term > term] :
                                                                                  ( ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y3: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y4: subst] :
                                                                                                ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                                                = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                                                 => ( ( ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                        @ id
                                                                                        @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) )
                                                                                      = ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                        @ id
                                                                                        @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) ) )
                                                                                   => ( !! @ term
                                                                                      @ ^ [Y2: term] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( ( Y0 @ Y3 @ Y2 )
                                                                                              = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                                     => ( ( !! @ ( subst > term > term )
                                                                          @ ^ [Y0: subst > term > term] :
                                                                              ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                             => ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y2: term] :
                                                                                        ( ( ^ [Y3: subst,Y4: subst > term > term] : ( lam @ ( Y4 @ sh @ one ) )
                                                                                          @ id
                                                                                          @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) )
                                                                                       != ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                                                                                          @ id
                                                                                          @ Y1
                                                                                          @ id
                                                                                          @ Y2 ) ) ) ) ) )
                                                                       => ( ( !! @ ( subst > term > term )
                                                                            @ ^ [Y0: subst > term > term] :
                                                                                ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y3: term] :
                                                                                              ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                                              = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                                               => ~ ( ^ [Y1: subst,Y2: term,Y3: subst] : ( var @ ( sub @ Y2 @ Y3 ) )
                                                                                    @ id
                                                                                    @ ( ^ [Y1: subst,Y2: subst > term > term] : ( lam @ ( Y2 @ sh @ one ) )
                                                                                      @ id
                                                                                      @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
                                                                                    @ id ) ) )
                                                                         => ( ( !! @ term
                                                                              @ ^ [Y0: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ~ ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                                                                                        @ id
                                                                                        @ ( ^ [Y2: subst,Y3: term,Y4: subst,Y5: term] : ( ap @ ( sub @ Y3 @ Y4 ) @ Y5 )
                                                                                          @ id
                                                                                          @ Y1
                                                                                          @ id
                                                                                          @ Y0 )
                                                                                        @ id ) ) )
                                                                           => ( ( !! @ ( subst > term > subst > $o )
                                                                                @ ^ [Y0: subst > term > subst > $o] :
                                                                                    ( ( !! @ subst
                                                                                      @ ^ [Y1: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y2: subst] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y3: subst] :
                                                                                                  ( !! @ term
                                                                                                  @ ^ [Y4: term] :
                                                                                                      ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                                     => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                                   => ( ( !! @ subst
                                                                                        @ ^ [Y1: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y2: subst] :
                                                                                                ( !! @ term
                                                                                                @ ^ [Y3: term] :
                                                                                                    ( !! @ subst
                                                                                                    @ ^ [Y4: subst] :
                                                                                                        ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                                       => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                                     => ( ( !! @ term
                                                                                          @ ^ [Y1: term] :
                                                                                              ( ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                                                                                                @ id
                                                                                                @ Y1
                                                                                                @ id )
                                                                                             => ( Y0 @ id @ Y1 @ id ) ) )
                                                                                       => ( !! @ term
                                                                                          @ ^ [Y1: term] :
                                                                                              ( ( var @ Y1 )
                                                                                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                             => ( ( !! @ ( subst > term > subst > $o )
                                                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                                                      ( ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y2: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y3: subst] :
                                                                                                    ( !! @ subst
                                                                                                    @ ^ [Y4: subst] :
                                                                                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                                     => ( ( !! @ subst
                                                                                          @ ^ [Y1: subst] :
                                                                                              ( !! @ term
                                                                                              @ ^ [Y2: term] :
                                                                                                  ( !! @ subst
                                                                                                  @ ^ [Y3: subst] :
                                                                                                      ( !! @ subst
                                                                                                      @ ^ [Y4: subst] :
                                                                                                          ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                                         => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                                       => ( ( !! @ term
                                                                                            @ ^ [Y1: term] :
                                                                                                ( !! @ term
                                                                                                @ ^ [Y2: term] :
                                                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                                                     => ( Y0 @ id
                                                                                                        @ ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                                                                                                          @ id
                                                                                                          @ Y1
                                                                                                          @ id
                                                                                                          @ Y2 )
                                                                                                        @ id ) ) ) ) )
                                                                                         => ( !! @ term
                                                                                            @ ^ [Y1: term] :
                                                                                                ( !! @ term
                                                                                                @ ^ [Y2: term] :
                                                                                                    ( ( Y0 @ id @ Y2 @ id )
                                                                                                   => ( ( Y0 @ id @ Y1 @ id )
                                                                                                     => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                                               => ( !! @ term
                                                                                  @ ^ [Y0: term] :
                                                                                      ( ?? @ ( subst > term > term )
                                                                                      @ ^ [Y1: subst > term > term] :
                                                                                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f391,f445]) ).

thf(f445,plain,
    ( hoasinduction_lem3b_gthm
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 )
                    = ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
                  = Y1 ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sub @ Y0 @ id )
                = Y0 ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( ( sub @ ( lam @ Y0 ) @ Y1 )
                      = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                            = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ id @ Y0 )
                      = Y0 ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                            = Y0 ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                                  = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                                    = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ Y0 @ id )
                              = Y0 ) )
                       => ( ( id
                            = ( push @ one @ sh ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                  = Y0 ) )
                           => ( ( var @ one )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ( var @ Y0 )
                                     => ( var @ ( sub @ Y0 @ sh ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( Y0 @ one )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ Y1 @ Y2 )
                                                        = ( ap @ Y0 @ Y3 ) )
                                                     => ( Y1 = Y0 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ Y0 @ Y2 )
                                                          = ( ap @ Y3 @ Y1 ) )
                                                       => ( Y2 = Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( ( lam @ Y1 )
                                                    = ( lam @ Y0 ) )
                                                 => ( Y1 = Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( ( sub @ Y1 @ sh )
                                                      = ( sub @ Y0 @ sh ) )
                                                   => ( Y1 = Y0 ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( lam @ Y1 )
                                                         != ( ap @ Y0 @ Y2 ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ~ ( var @ ( lam @ Y0 ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ Y1 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ ( term > $o )
                                                      @ ^ [Y0: term > $o] :
                                                          ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                 => ( ( Y0 @ Y2 )
                                                                   => ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( var @ Y3 )
                                                                         => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                                       => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                                     => ( ( !! @ ( term > $o )
                                                          @ ^ [Y0: term > $o] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ Y1 )
                                                                   => ( Y0 @ Y1 ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( ( Y0 @ Y1 )
                                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                       => ( ( ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                                          = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ Y0 @ id )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ id @ Y0 )
                                                                  = Y0 ) ) )
                                                         => ( ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( ( sub @ Y0 @ id )
                                                                    = Y0 ) )
                                                              & ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                                            = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                    @ id
                                                                                    @ Y0
                                                                                    @ id
                                                                                    @ Y2 )
                                                                                  = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                    @ id
                                                                                    @ Y3
                                                                                    @ id
                                                                                    @ Y1 ) )
                                                                               => ( Y3 = Y0 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                      @ id
                                                                                      @ Y1
                                                                                      @ id
                                                                                      @ Y3 )
                                                                                    = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                      @ id
                                                                                      @ Y0
                                                                                      @ id
                                                                                      @ Y2 ) )
                                                                                 => ( Y3 = Y2 ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                       => ( !! @ ( subst > term > term )
                                                                          @ ^ [Y1: subst > term > term] :
                                                                              ( ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y3: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                                            = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                                             => ( ( ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                    @ id
                                                                                    @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) )
                                                                                  = ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                    @ id
                                                                                    @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) ) )
                                                                               => ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ Y3 @ Y2 )
                                                                                          = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > term )
                                                                      @ ^ [Y0: subst > term > term] :
                                                                          ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( ^ [Y3: subst,Y4: subst > term > term] : ( lam @ ( Y4 @ sh @ one ) )
                                                                                      @ id
                                                                                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) )
                                                                                   != ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                                                                                      @ id
                                                                                      @ Y1
                                                                                      @ id
                                                                                      @ Y2 ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y3: term] :
                                                                                          ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                                          = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                                           => ~ ( ^ [Y1: subst,Y2: term,Y3: subst] : ( var @ ( sub @ Y2 @ Y3 ) )
                                                                                @ id
                                                                                @ ( ^ [Y1: subst,Y2: subst > term > term] : ( lam @ ( Y2 @ sh @ one ) )
                                                                                  @ id
                                                                                  @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
                                                                                @ id ) ) )
                                                                     => ( ( !! @ term
                                                                          @ ^ [Y0: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ~ ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                                                                                    @ id
                                                                                    @ ( ^ [Y2: subst,Y3: term,Y4: subst,Y5: term] : ( ap @ ( sub @ Y3 @ Y4 ) @ Y5 )
                                                                                      @ id
                                                                                      @ Y1
                                                                                      @ id
                                                                                      @ Y0 )
                                                                                    @ id ) ) )
                                                                       => ( ( !! @ ( subst > term > subst > $o )
                                                                            @ ^ [Y0: subst > term > subst > $o] :
                                                                                ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( !! @ term
                                                                                              @ ^ [Y4: term] :
                                                                                                  ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                                 => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                               => ( ( !! @ subst
                                                                                    @ ^ [Y1: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y2: subst] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y3: term] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y4: subst] :
                                                                                                    ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                                   => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                                 => ( ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                                                                                            @ id
                                                                                            @ Y1
                                                                                            @ id )
                                                                                         => ( Y0 @ id @ Y1 @ id ) ) )
                                                                                   => ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( ( var @ Y1 )
                                                                                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                         => ( ( !! @ ( subst > term > subst > $o )
                                                                              @ ^ [Y0: subst > term > subst > $o] :
                                                                                  ( ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y2: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y3: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y4: subst] :
                                                                                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                                 => ( ( !! @ subst
                                                                                      @ ^ [Y1: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y2: term] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y3: subst] :
                                                                                                  ( !! @ subst
                                                                                                  @ ^ [Y4: subst] :
                                                                                                      ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                                     => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                                   => ( ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y2: term] :
                                                                                                ( ( Y0 @ id @ Y1 @ id )
                                                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                                                 => ( Y0 @ id
                                                                                                    @ ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                                                                                                      @ id
                                                                                                      @ Y1
                                                                                                      @ id
                                                                                                      @ Y2 )
                                                                                                    @ id ) ) ) ) )
                                                                                     => ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y2: term] :
                                                                                                ( ( Y0 @ id @ Y2 @ id )
                                                                                               => ( ( Y0 @ id @ Y1 @ id )
                                                                                                 => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                                           => ( !! @ term
                                                                              @ ^ [Y0: term] :
                                                                                  ( ?? @ ( subst > term > term )
                                                                                  @ ^ [Y1: subst > term > term] :
                                                                                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f386,f340,f370,f382,f410,f406,f397,f399,f339,f381,f412,f358,f376,f378,f360,f379,f346,f383,f409,f357,f364,f388,f353,f342,f402,f351,f384,f359,f380,f419,f418,f430,f436,f437,f435,f421,f422,f414]) ).

thf(f414,plain,
    ( hoasinduction_lem3b
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ?? @ ( subst > term > term )
          @ ^ [Y1: subst > term > term] :
              ( ( sub @ Y0 @ ( push @ one @ sh ) )
              = ( Y1 @ sh @ one ) ) ) ) ),
    inference(cnf_transformation,[],[f181]) ).

thf(f181,plain,
    ( hoasinduction_lem3b
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ?? @ ( subst > term > term )
          @ ^ [Y1: subst > term > term] :
              ( ( sub @ Y0 @ ( push @ one @ sh ) )
              = ( Y1 @ sh @ one ) ) ) ) ),
    inference(fool_elimination,[],[f180]) ).

thf(f180,plain,
    ! [X0: term] :
    ? [X1: subst > term > term] :
      ( ( ( sub @ X0 @ ( push @ one @ sh ) )
        = ( X1 @ sh @ one ) )
      = hoasinduction_lem3b ),
    inference(rectify,[],[f105]) ).

thf(f105,axiom,
    ! [X1: term] :
    ? [X10: subst > term > term] :
      ( ( ( X10 @ sh @ one )
        = ( sub @ X1 @ ( push @ one @ sh ) ) )
      = hoasinduction_lem3b ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasinduction_lem3b) ).

thf(f422,plain,
    ( hoasinduction_lem2
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( !! @ subst
                        @ ^ [Y4: subst] :
                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                             => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y1 @ id )
                       => ( ( Y0 @ id @ Y2 @ id )
                         => ( Y0 @ id
                            @ ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                              @ id
                              @ Y1
                              @ id
                              @ Y2 )
                            @ id ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y2 @ id )
                       => ( ( Y0 @ id @ Y1 @ id )
                         => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f347,f394]) ).

thf(f394,plain,
    ( hoasap
    = ( ^ [Y0: subst,Y1: term,Y2: subst,Y3: term] : ( ap @ ( sub @ Y1 @ Y2 ) @ Y3 ) ) ),
    inference(cnf_transformation,[],[f299]) ).

thf(f299,plain,
    ( hoasap
    = ( ^ [Y0: subst,Y1: term,Y2: subst,Y3: term] : ( ap @ ( sub @ Y1 @ Y2 ) @ Y3 ) ) ),
    inference(fool_elimination,[],[f298]) ).

thf(f298,plain,
    ( ( ^ [X0: subst,X1: term,X2: subst,X3: term] : ( ap @ ( sub @ X1 @ X2 ) @ X3 ) )
    = hoasap ),
    inference(rectify,[],[f55]) ).

thf(f55,axiom,
    ( ( ^ [X2: subst,X0: term,X3: subst,X1: term] : ( ap @ ( sub @ X0 @ X3 ) @ X1 ) )
    = hoasap ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasap) ).

thf(f347,plain,
    ( hoasinduction_lem2
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( !! @ subst
                        @ ^ [Y4: subst] :
                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                             => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y1 @ id )
                       => ( ( Y0 @ id @ Y2 @ id )
                         => ( Y0 @ id @ ( hoasap @ id @ Y1 @ id @ Y2 ) @ id ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y2 @ id )
                       => ( ( Y0 @ id @ Y1 @ id )
                         => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f148]) ).

thf(f148,plain,
    ( hoasinduction_lem2
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( !! @ subst
                        @ ^ [Y4: subst] :
                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                             => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y1 @ id )
                       => ( ( Y0 @ id @ Y2 @ id )
                         => ( Y0 @ id @ ( hoasap @ id @ Y1 @ id @ Y2 ) @ id ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y2 @ id )
                       => ( ( Y0 @ id @ Y1 @ id )
                         => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f147]) ).

thf(f147,plain,
    ( hoasinduction_lem2
    = ( ! [X0: subst > term > subst > $o] :
          ( ! [X1: subst,X2: subst,X3: subst,X4: term] :
              ( ( X0 @ X3 @ X4 @ ( comp @ X1 @ X2 ) )
             => ( X0 @ ( comp @ X3 @ X1 ) @ ( sub @ X4 @ X1 ) @ X2 ) )
         => ( ! [X5: subst,X6: subst,X7: term,X8: subst] :
                ( ( X0 @ ( comp @ X5 @ X6 ) @ ( sub @ X7 @ X6 ) @ X8 )
               => ( X0 @ X5 @ X7 @ ( comp @ X6 @ X8 ) ) )
           => ( ! [X9: term,X10: term] :
                  ( ( X0 @ id @ X10 @ id )
                 => ( ( X0 @ id @ X9 @ id )
                   => ( X0 @ id @ ( hoasap @ id @ X10 @ id @ X9 ) @ id ) ) )
             => ! [X11: term,X12: term] :
                  ( ( X0 @ id @ X11 @ id )
                 => ( ( X0 @ id @ X12 @ id )
                   => ( X0 @ id @ ( ap @ X11 @ X12 ) @ id ) ) ) ) ) ) ) ),
    inference(rectify,[],[f93]) ).

thf(f93,axiom,
    ( hoasinduction_lem2
    = ( ! [X5: subst > term > subst > $o] :
          ( ! [X4: subst,X3: subst,X2: subst,X0: term] :
              ( ( X5 @ X2 @ X0 @ ( comp @ X4 @ X3 ) )
             => ( X5 @ ( comp @ X2 @ X4 ) @ ( sub @ X0 @ X4 ) @ X3 ) )
         => ( ! [X2: subst,X4: subst,X0: term,X3: subst] :
                ( ( X5 @ ( comp @ X2 @ X4 ) @ ( sub @ X0 @ X4 ) @ X3 )
               => ( X5 @ X2 @ X0 @ ( comp @ X4 @ X3 ) ) )
           => ( ! [X1: term,X0: term] :
                  ( ( X5 @ id @ X0 @ id )
                 => ( ( X5 @ id @ X1 @ id )
                   => ( X5 @ id @ ( hoasap @ id @ X0 @ id @ X1 ) @ id ) ) )
             => ! [X0: term,X1: term] :
                  ( ( X5 @ id @ X0 @ id )
                 => ( ( X5 @ id @ X1 @ id )
                   => ( X5 @ id @ ( ap @ X0 @ X1 ) @ id ) ) ) ) ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasinduction_lem2) ).

thf(f421,plain,
    ( hoasinduction_lem1
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( !! @ term
                        @ ^ [Y4: term] :
                            ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                           => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                             => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                      @ id
                      @ Y1
                      @ id )
                   => ( Y0 @ id @ Y1 @ id ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f392,f375]) ).

thf(f375,plain,
    ( hoasvar
    = ( ^ [Y0: subst,Y1: term,Y2: subst] : ( var @ ( sub @ Y1 @ Y2 ) ) ) ),
    inference(cnf_transformation,[],[f231]) ).

thf(f231,plain,
    ( hoasvar
    = ( ^ [Y0: subst,Y1: term,Y2: subst] : ( var @ ( sub @ Y1 @ Y2 ) ) ) ),
    inference(fool_elimination,[],[f230]) ).

thf(f230,plain,
    ( ( ^ [X0: subst,X1: term,X2: subst] : ( var @ ( sub @ X1 @ X2 ) ) )
    = hoasvar ),
    inference(rectify,[],[f57]) ).

thf(f57,axiom,
    ( ( ^ [X2: subst,X0: term,X3: subst] : ( var @ ( sub @ X0 @ X3 ) ) )
    = hoasvar ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasvar) ).

thf(f392,plain,
    ( hoasinduction_lem1
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( !! @ term
                        @ ^ [Y4: term] :
                            ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                           => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                             => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( hoasvar @ id @ Y1 @ id )
                   => ( Y0 @ id @ Y1 @ id ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f177]) ).

thf(f177,plain,
    ( hoasinduction_lem1
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( !! @ term
                        @ ^ [Y4: term] :
                            ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                           => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                             => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( hoasvar @ id @ Y1 @ id )
                   => ( Y0 @ id @ Y1 @ id ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f176]) ).

thf(f176,plain,
    ! [X0: subst > term > subst > $o] :
      ( ( ! [X1: term,X2: subst,X3: subst,X4: subst] :
            ( ( X0 @ X2 @ X1 @ ( comp @ X4 @ X3 ) )
           => ( X0 @ ( comp @ X2 @ X4 ) @ ( sub @ X1 @ X4 ) @ X3 ) )
       => ( ! [X5: subst,X6: term,X7: subst,X8: subst] :
              ( ( X0 @ ( comp @ X8 @ X7 ) @ ( sub @ X6 @ X7 ) @ X5 )
             => ( X0 @ X8 @ X6 @ ( comp @ X7 @ X5 ) ) )
         => ( ! [X9: term] :
                ( ( hoasvar @ id @ X9 @ id )
               => ( X0 @ id @ X9 @ id ) )
           => ! [X10: term] :
                ( ( var @ X10 )
               => ( X0 @ id @ X10 @ id ) ) ) ) )
      = hoasinduction_lem1 ),
    inference(rectify,[],[f90]) ).

thf(f90,axiom,
    ! [X5: subst > term > subst > $o] :
      ( ( ! [X0: term,X2: subst,X3: subst,X4: subst] :
            ( ( X5 @ X2 @ X0 @ ( comp @ X4 @ X3 ) )
           => ( X5 @ ( comp @ X2 @ X4 ) @ ( sub @ X0 @ X4 ) @ X3 ) )
       => ( ! [X3: subst,X0: term,X4: subst,X2: subst] :
              ( ( X5 @ ( comp @ X2 @ X4 ) @ ( sub @ X0 @ X4 ) @ X3 )
             => ( X5 @ X2 @ X0 @ ( comp @ X4 @ X3 ) ) )
         => ( ! [X0: term] :
                ( ( hoasvar @ id @ X0 @ id )
               => ( X5 @ id @ X0 @ id ) )
           => ! [X0: term] :
                ( ( var @ X0 )
               => ( X5 @ id @ X0 @ id ) ) ) ) )
      = hoasinduction_lem1 ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasinduction_lem1) ).

thf(f435,plain,
    ( hoasapnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                @ id
                @ ( ^ [Y2: subst,Y3: term,Y4: subst,Y5: term] : ( ap @ ( sub @ Y3 @ Y4 ) @ Y5 )
                  @ id
                  @ Y1
                  @ id
                  @ Y0 )
                @ id ) ) ) ),
    inference(definition_unfolding,[],[f355,f375,f394]) ).

thf(f355,plain,
    ( hoasapnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( hoasvar @ id @ ( hoasap @ id @ Y1 @ id @ Y0 ) @ id ) ) ) ),
    inference(cnf_transformation,[],[f229]) ).

thf(f229,plain,
    ( hoasapnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( hoasvar @ id @ ( hoasap @ id @ Y1 @ id @ Y0 ) @ id ) ) ) ),
    inference(fool_elimination,[],[f228]) ).

thf(f228,plain,
    ! [X0: term,X1: term] :
      ( ( ~ ( hoasvar @ id @ ( hoasap @ id @ X0 @ id @ X1 ) @ id ) )
      = hoasapnotvar ),
    inference(rectify,[],[f73]) ).

thf(f73,axiom,
    ! [X0: term,X1: term] :
      ( ( ~ ( hoasvar @ id @ ( hoasap @ id @ X0 @ id @ X1 ) @ id ) )
      = hoasapnotvar ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasapnotvar) ).

thf(f437,plain,
    ( hoaslamnotvar
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                        = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
         => ~ ( ^ [Y1: subst,Y2: term,Y3: subst] : ( var @ ( sub @ Y2 @ Y3 ) )
              @ id
              @ ( ^ [Y1: subst,Y2: subst > term > term] : ( lam @ ( Y2 @ sh @ one ) )
                @ id
                @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
              @ id ) ) ) ),
    inference(definition_unfolding,[],[f377,f375,f369]) ).

thf(f369,plain,
    ( hoaslam
    = ( ^ [Y0: subst,Y1: subst > term > term] : ( lam @ ( Y1 @ sh @ one ) ) ) ),
    inference(cnf_transformation,[],[f199]) ).

thf(f199,plain,
    ( hoaslam
    = ( ^ [Y0: subst,Y1: subst > term > term] : ( lam @ ( Y1 @ sh @ one ) ) ) ),
    inference(fool_elimination,[],[f198]) ).

thf(f198,plain,
    ( ( ^ [X0: subst,X1: subst > term > term] : ( lam @ ( X1 @ sh @ one ) ) )
    = hoaslam ),
    inference(rectify,[],[f56]) ).

thf(f56,axiom,
    ( ( ^ [X2: subst,X10: subst > term > term] : ( lam @ ( X10 @ sh @ one ) ) )
    = hoaslam ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoaslam) ).

thf(f377,plain,
    ( hoaslamnotvar
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                        = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
              @ id ) ) ) ),
    inference(cnf_transformation,[],[f332]) ).

thf(f332,plain,
    ( hoaslamnotvar
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                        = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
              @ id ) ) ) ),
    inference(fool_elimination,[],[f331]) ).

thf(f331,plain,
    ( hoaslamnotvar
    = ( ! [X0: subst > term > term] :
          ( ! [X1: term,X2: subst,X3: subst] :
              ( ( sub @ ( X0 @ X3 @ X1 ) @ X2 )
              = ( X0 @ ( comp @ X3 @ X2 ) @ ( sub @ X1 @ X2 ) ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [X4: subst,X5: term] : ( X0 @ X4 @ X5 ) )
              @ id ) ) ) ),
    inference(rectify,[],[f70]) ).

thf(f70,axiom,
    ( hoaslamnotvar
    = ( ! [X10: subst > term > term] :
          ( ! [X0: term,X3: subst,X2: subst] :
              ( ( sub @ ( X10 @ X2 @ X0 ) @ X3 )
              = ( X10 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [X2: subst,X0: term] : ( X10 @ X2 @ X0 ) )
              @ id ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoaslamnotvar) ).

thf(f436,plain,
    ( hoaslamnotap
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( ^ [Y3: subst,Y4: subst > term > term] : ( lam @ ( Y4 @ sh @ one ) )
                      @ id
                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) )
                   != ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                      @ id
                      @ Y1
                      @ id
                      @ Y2 ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f350,f369,f394]) ).

thf(f350,plain,
    ( hoaslamnotap
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( hoaslam @ id
                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) )
                   != ( hoasap @ id @ Y1 @ id @ Y2 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f146]) ).

thf(f146,plain,
    ( hoaslamnotap
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( hoaslam @ id
                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) )
                   != ( hoasap @ id @ Y1 @ id @ Y2 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f145]) ).

thf(f145,plain,
    ( hoaslamnotap
    = ( ! [X0: subst > term > term] :
          ( ! [X1: subst,X2: subst,X3: term] :
              ( ( X0 @ ( comp @ X1 @ X2 ) @ ( sub @ X3 @ X2 ) )
              = ( sub @ ( X0 @ X1 @ X3 ) @ X2 ) )
         => ! [X4: term,X5: term] :
              ( ( hoaslam @ id
                @ ^ [X6: subst,X7: term] : ( X0 @ X6 @ X7 ) )
             != ( hoasap @ id @ X5 @ id @ X4 ) ) ) ) ),
    inference(rectify,[],[f67]) ).

thf(f67,axiom,
    ( hoaslamnotap
    = ( ! [X10: subst > term > term] :
          ( ! [X2: subst,X3: subst,X0: term] :
              ( ( sub @ ( X10 @ X2 @ X0 ) @ X3 )
              = ( X10 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
         => ! [X1: term,X0: term] :
              ( ( hoaslam @ id
                @ ^ [X2: subst,X6: term] : ( X10 @ X2 @ X6 ) )
             != ( hoasap @ id @ X0 @ id @ X1 ) ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoaslamnotap) ).

thf(f430,plain,
    ( hoaslaminj
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
         => ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                              = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
               => ( ( ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                      @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) )
                    = ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                      @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) ) )
                 => ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( ( Y0 @ Y3 @ Y2 )
                            = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f367,f369,f369]) ).

thf(f367,plain,
    ( hoaslaminj
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
         => ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                              = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
               => ( ( ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) )
                    = ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) ) )
                 => ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( ( Y0 @ Y3 @ Y2 )
                            = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f243]) ).

thf(f243,plain,
    ( hoaslaminj
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
         => ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                              = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
               => ( ( ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) )
                    = ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) ) )
                 => ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( ( Y0 @ Y3 @ Y2 )
                            = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f242]) ).

thf(f242,plain,
    ( hoaslaminj
    = ( ! [X0: subst > term > term] :
          ( ! [X1: subst,X2: subst,X3: term] :
              ( ( X0 @ ( comp @ X1 @ X2 ) @ ( sub @ X3 @ X2 ) )
              = ( sub @ ( X0 @ X1 @ X3 ) @ X2 ) )
         => ! [X4: subst > term > term] :
              ( ! [X5: subst,X6: term,X7: subst] :
                  ( ( X4 @ ( comp @ X7 @ X5 ) @ ( sub @ X6 @ X5 ) )
                  = ( sub @ ( X4 @ X7 @ X6 ) @ X5 ) )
             => ( ( ( hoaslam @ id
                    @ ^ [X8: subst,X9: term] : ( X0 @ X8 @ X9 ) )
                  = ( hoaslam @ id
                    @ ^ [X10: subst,X11: term] : ( X4 @ X10 @ X11 ) ) )
               => ! [X12: subst,X13: term] :
                    ( ( X0 @ X12 @ X13 )
                    = ( X4 @ X12 @ X13 ) ) ) ) ) ) ),
    inference(rectify,[],[f64]) ).

thf(f64,axiom,
    ( hoaslaminj
    = ( ! [X10: subst > term > term] :
          ( ! [X2: subst,X3: subst,X0: term] :
              ( ( sub @ ( X10 @ X2 @ X0 ) @ X3 )
              = ( X10 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
         => ! [X11: subst > term > term] :
              ( ! [X3: subst,X0: term,X2: subst] :
                  ( ( sub @ ( X11 @ X2 @ X0 ) @ X3 )
                  = ( X11 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
             => ( ( ( hoaslam @ id
                    @ ^ [X2: subst,X0: term] : ( X10 @ X2 @ X0 ) )
                  = ( hoaslam @ id
                    @ ^ [X2: subst,X0: term] : ( X11 @ X2 @ X0 ) ) )
               => ! [X2: subst,X0: term] :
                    ( ( X10 @ X2 @ X0 )
                    = ( X11 @ X2 @ X0 ) ) ) ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoaslaminj) ).

thf(f418,plain,
    ( hoasapinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y1
                          @ id
                          @ Y3 )
                        = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y0
                          @ id
                          @ Y2 ) )
                     => ( Y3 = Y2 ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f354,f394,f394]) ).

thf(f354,plain,
    ( hoasapinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y1 @ id @ Y3 )
                        = ( hoasap @ id @ Y0 @ id @ Y2 ) )
                     => ( Y3 = Y2 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f122]) ).

thf(f122,plain,
    ( hoasapinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y1 @ id @ Y3 )
                        = ( hoasap @ id @ Y0 @ id @ Y2 ) )
                     => ( Y3 = Y2 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f121]) ).

thf(f121,plain,
    ! [X0: term,X1: term,X2: term,X3: term] :
      ( ( ( ( hoasap @ id @ X2 @ id @ X0 )
          = ( hoasap @ id @ X3 @ id @ X1 ) )
       => ( X0 = X1 ) )
      = hoasapinj2 ),
    inference(rectify,[],[f61]) ).

thf(f61,axiom,
    ! [X7: term,X6: term,X1: term,X0: term] :
      ( ( ( ( hoasap @ id @ X0 @ id @ X6 )
          = ( hoasap @ id @ X1 @ id @ X7 ) )
       => ( X6 = X7 ) )
      = hoasapinj2 ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasapinj2) ).

thf(f419,plain,
    ( hoasapinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y0
                          @ id
                          @ Y2 )
                        = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y3
                          @ id
                          @ Y1 ) )
                     => ( Y3 = Y0 ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f403,f394,f394]) ).

thf(f403,plain,
    ( hoasapinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y0 @ id @ Y2 )
                        = ( hoasap @ id @ Y3 @ id @ Y1 ) )
                     => ( Y3 = Y0 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f279]) ).

thf(f279,plain,
    ( hoasapinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y0 @ id @ Y2 )
                        = ( hoasap @ id @ Y3 @ id @ Y1 ) )
                     => ( Y3 = Y0 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f278]) ).

thf(f278,plain,
    ( hoasapinj1
    = ( ! [X0: term,X1: term,X2: term,X3: term] :
          ( ( ( hoasap @ id @ X3 @ id @ X1 )
            = ( hoasap @ id @ X0 @ id @ X2 ) )
         => ( X0 = X3 ) ) ) ),
    inference(rectify,[],[f58]) ).

thf(f58,axiom,
    ( hoasapinj1
    = ( ! [X1: term,X6: term,X7: term,X0: term] :
          ( ( ( hoasap @ id @ X0 @ id @ X6 )
            = ( hoasap @ id @ X1 @ id @ X7 ) )
         => ( X0 = X1 ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasapinj1) ).

thf(f380,plain,
    ( termmset
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 ) )
      & ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                    = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f225]) ).

thf(f225,plain,
    ( termmset
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 ) )
      & ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                    = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f224]) ).

thf(f224,plain,
    ( ! [X0: subst,X1: subst,X2: term] :
        ( ( sub @ ( sub @ X2 @ X1 ) @ X0 )
        = ( sub @ X2 @ ( comp @ X1 @ X0 ) ) )
    & ! [X3: term] :
        ( ( ( sub @ X3 @ id )
          = X3 )
        = termmset ) ),
    inference(rectify,[],[f52]) ).

thf(f52,axiom,
    ( ! [X3: subst,X2: subst,X0: term] :
        ( ( sub @ ( sub @ X0 @ X2 ) @ X3 )
        = ( sub @ X0 @ ( comp @ X2 @ X3 ) ) )
    & ! [X0: term] :
        ( ( ( sub @ X0 @ id )
          = X0 )
        = termmset ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',termmset) ).

thf(f359,plain,
    ( substmonoid
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                    = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ Y0 @ id )
            = Y0 ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ id @ Y0 )
            = Y0 ) ) ) ),
    inference(cnf_transformation,[],[f239]) ).

thf(f239,plain,
    ( substmonoid
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                    = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ Y0 @ id )
            = Y0 ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ id @ Y0 )
            = Y0 ) ) ) ),
    inference(fool_elimination,[],[f238]) ).

thf(f238,plain,
    ( ! [X0: subst] :
        ( ( comp @ id @ X0 )
        = X0 )
    & ! [X1: subst] :
        ( ( comp @ X1 @ id )
        = X1 )
    & ! [X2: subst,X3: subst,X4: subst] :
        ( ( ( comp @ ( comp @ X4 @ X3 ) @ X2 )
          = ( comp @ X4 @ ( comp @ X3 @ X2 ) ) )
        = substmonoid ) ),
    inference(rectify,[],[f49]) ).

thf(f49,axiom,
    ( ! [X2: subst] :
        ( ( comp @ id @ X2 )
        = X2 )
    & ! [X2: subst] :
        ( ( comp @ X2 @ id )
        = X2 )
    & ! [X4: subst,X3: subst,X2: subst] :
        ( ( ( comp @ ( comp @ X2 @ X3 ) @ X4 )
          = ( comp @ X2 @ ( comp @ X3 @ X4 ) ) )
        = substmonoid ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',substmonoid) ).

thf(f384,plain,
    ( induction2
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y2 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f150]) ).

thf(f150,plain,
    ( induction2
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y2 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f149]) ).

thf(f149,plain,
    ! [X0: term > $o] :
      ( ( ! [X1: term] :
            ( ( var @ X1 )
           => ( X0 @ X1 ) )
       => ( ! [X2: term,X3: term] :
              ( ( X0 @ X2 )
             => ( ( X0 @ X3 )
               => ( X0 @ ( ap @ X2 @ X3 ) ) ) )
         => ( ! [X4: term] :
                ( ! [X5: term] :
                    ( ( X0 @ X5 )
                   => ( X0 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
               => ( X0 @ ( lam @ X4 ) ) )
           => ! [X6: term] : ( X0 @ X6 ) ) ) )
      = induction2 ),
    inference(rectify,[],[f46]) ).

thf(f46,axiom,
    ! [X5: term > $o] :
      ( ( ! [X0: term] :
            ( ( var @ X0 )
           => ( X5 @ X0 ) )
       => ( ! [X0: term,X1: term] :
              ( ( X5 @ X0 )
             => ( ( X5 @ X1 )
               => ( X5 @ ( ap @ X0 @ X1 ) ) ) )
         => ( ! [X0: term] :
                ( ! [X1: term] :
                    ( ( X5 @ X1 )
                   => ( X5 @ ( sub @ X0 @ ( push @ X1 @ id ) ) ) )
               => ( X5 @ ( lam @ X0 ) ) )
           => ! [X0: term] : ( X5 @ X0 ) ) ) )
      = induction2 ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',induction2) ).

thf(f351,plain,
    ( induction2lem
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( Y0 @ Y1 )
                   => ( ( Y0 @ Y2 )
                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                 => ( Y0 @ ( lam @ Y1 ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                     => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f168]) ).

thf(f168,plain,
    ( induction2lem
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( Y0 @ Y1 )
                   => ( ( Y0 @ Y2 )
                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                 => ( Y0 @ ( lam @ Y1 ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                     => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f167]) ).

thf(f167,plain,
    ( induction2lem
    = ( ! [X0: term > $o] :
          ( ! [X1: term,X2: term] :
              ( ( X0 @ X2 )
             => ( ( X0 @ X1 )
               => ( X0 @ ( ap @ X2 @ X1 ) ) ) )
         => ( ! [X3: term] :
                ( ! [X4: term] :
                    ( ( X0 @ X4 )
                   => ( X0 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
               => ( X0 @ ( lam @ X3 ) ) )
           => ! [X5: subst,X6: term] :
                ( ! [X7: term] :
                    ( ( var @ X7 )
                   => ( X0 @ ( sub @ X7 @ X5 ) ) )
               => ( X0 @ ( sub @ X6 @ X5 ) ) ) ) ) ) ),
    inference(rectify,[],[f43]) ).

thf(f43,axiom,
    ( induction2lem
    = ( ! [X5: term > $o] :
          ( ! [X1: term,X0: term] :
              ( ( X5 @ X0 )
             => ( ( X5 @ X1 )
               => ( X5 @ ( ap @ X0 @ X1 ) ) ) )
         => ( ! [X0: term] :
                ( ! [X1: term] :
                    ( ( X5 @ X1 )
                   => ( X5 @ ( sub @ X0 @ ( push @ X1 @ id ) ) ) )
               => ( X5 @ ( lam @ X0 ) ) )
           => ! [X2: subst,X0: term] :
                ( ! [X1: term] :
                    ( ( var @ X1 )
                   => ( X5 @ ( sub @ X1 @ X2 ) ) )
               => ( X5 @ ( sub @ X0 @ X2 ) ) ) ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',induction2lem) ).

thf(f402,plain,
    ( pushprop
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( var @ Y3 )
                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                 => ( ( Y0 @ Y2 )
                   => ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( var @ Y3 )
                         => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f315]) ).

thf(f315,plain,
    ( pushprop
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( var @ Y3 )
                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                 => ( ( Y0 @ Y2 )
                   => ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( var @ Y3 )
                         => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f314]) ).

thf(f314,plain,
    ! [X0: term,X1: subst,X2: term > $o] :
      ( ( ! [X3: term] :
            ( ( var @ X3 )
           => ( X2 @ ( sub @ X3 @ X1 ) ) )
       => ( ( X2 @ X0 )
         => ! [X4: term] :
              ( ( var @ X4 )
             => ( X2 @ ( sub @ X4 @ ( push @ X0 @ X1 ) ) ) ) ) )
      = pushprop ),
    inference(rectify,[],[f39]) ).

thf(f39,axiom,
    ! [X0: term,X2: subst,X5: term > $o] :
      ( ( ! [X1: term] :
            ( ( var @ X1 )
           => ( X5 @ ( sub @ X1 @ X2 ) ) )
       => ( ( X5 @ X0 )
         => ! [X1: term] :
              ( ( var @ X1 )
             => ( X5 @ ( sub @ X1 @ ( push @ X0 @ X2 ) ) ) ) ) )
      = pushprop ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',pushprop) ).

thf(f342,plain,
    ( induction
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y2 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( Y0 @ Y1 )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f124]) ).

thf(f124,plain,
    ( induction
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y2 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( Y0 @ Y1 )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f123]) ).

thf(f123,plain,
    ! [X0: term > $o] :
      ( ( ! [X1: term] :
            ( ( var @ X1 )
           => ( X0 @ X1 ) )
       => ( ! [X2: term,X3: term] :
              ( ( X0 @ X2 )
             => ( ( X0 @ X3 )
               => ( X0 @ ( ap @ X2 @ X3 ) ) ) )
         => ( ! [X4: term] :
                ( ( X0 @ X4 )
               => ( X0 @ ( lam @ X4 ) ) )
           => ! [X5: term] : ( X0 @ X5 ) ) ) )
      = induction ),
    inference(rectify,[],[f23]) ).

thf(f23,axiom,
    ! [X5: term > $o] :
      ( ( ! [X0: term] :
            ( ( var @ X0 )
           => ( X5 @ X0 ) )
       => ( ! [X0: term,X1: term] :
              ( ( X5 @ X0 )
             => ( ( X5 @ X1 )
               => ( X5 @ ( ap @ X0 @ X1 ) ) ) )
         => ( ! [X0: term] :
                ( ( X5 @ X0 )
               => ( X5 @ ( lam @ X0 ) ) )
           => ! [X0: term] : ( X5 @ X0 ) ) ) )
      = induction ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',induction) ).

thf(f353,plain,
    ( lamnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ~ ( var @ ( lam @ Y0 ) ) ) ),
    inference(cnf_transformation,[],[f248]) ).

thf(f248,plain,
    ( lamnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ~ ( var @ ( lam @ Y0 ) ) ) ),
    inference(fool_elimination,[],[f247]) ).

thf(f247,plain,
    ( lamnotvar
    = ( ! [X0: term] :
          ~ ( var @ ( lam @ X0 ) ) ) ),
    inference(rectify,[],[f22]) ).

thf(f22,axiom,
    ( lamnotvar
    = ( ! [X0: term] :
          ~ ( var @ ( lam @ X0 ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',lamnotvar) ).

thf(f388,plain,
    ( apnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) ) ),
    inference(cnf_transformation,[],[f220]) ).

thf(f220,plain,
    ( apnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) ) ),
    inference(fool_elimination,[],[f219]) ).

thf(f219,plain,
    ! [X0: term,X1: term] :
      ( ( ~ ( var @ ( ap @ X0 @ X1 ) ) )
      = apnotvar ),
    inference(rectify,[],[f21]) ).

thf(f21,axiom,
    ! [X0: term,X1: term] :
      ( ( ~ ( var @ ( ap @ X0 @ X1 ) ) )
      = apnotvar ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',apnotvar) ).

thf(f364,plain,
    ( lamnotap
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( lam @ Y1 )
                 != ( ap @ Y0 @ Y2 ) ) ) ) ) ),
    inference(cnf_transformation,[],[f227]) ).

thf(f227,plain,
    ( lamnotap
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( lam @ Y1 )
                 != ( ap @ Y0 @ Y2 ) ) ) ) ) ),
    inference(fool_elimination,[],[f226]) ).

thf(f226,plain,
    ( lamnotap
    = ( ! [X0: term,X1: term,X2: term] :
          ( ( lam @ X1 )
         != ( ap @ X2 @ X0 ) ) ) ),
    inference(rectify,[],[f20]) ).

thf(f20,axiom,
    ( lamnotap
    = ( ! [X6: term,X0: term,X1: term] :
          ( ( lam @ X0 )
         != ( ap @ X1 @ X6 ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',lamnotap) ).

thf(f357,plain,
    ( shinj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( sub @ Y1 @ sh )
                = ( sub @ Y0 @ sh ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(cnf_transformation,[],[f321]) ).

thf(f321,plain,
    ( shinj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( sub @ Y1 @ sh )
                = ( sub @ Y0 @ sh ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(fool_elimination,[],[f320]) ).

thf(f320,plain,
    ( shinj
    = ( ! [X0: term,X1: term] :
          ( ( ( sub @ X0 @ sh )
            = ( sub @ X1 @ sh ) )
         => ( X0 = X1 ) ) ) ),
    inference(rectify,[],[f19]) ).

thf(f19,axiom,
    ( shinj
    = ( ! [X1: term,X0: term] :
          ( ( ( sub @ X0 @ sh )
            = ( sub @ X1 @ sh ) )
         => ( X0 = X1 ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',shinj) ).

thf(f409,plain,
    ( laminj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( lam @ Y1 )
                = ( lam @ Y0 ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(cnf_transformation,[],[f317]) ).

thf(f317,plain,
    ( laminj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( lam @ Y1 )
                = ( lam @ Y0 ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(fool_elimination,[],[f316]) ).

thf(f316,plain,
    ! [X0: term,X1: term] :
      ( ( ( ( lam @ X0 )
          = ( lam @ X1 ) )
       => ( X0 = X1 ) )
      = laminj ),
    inference(rectify,[],[f18]) ).

thf(f18,axiom,
    ! [X1: term,X0: term] :
      ( ( ( ( lam @ X0 )
          = ( lam @ X1 ) )
       => ( X0 = X1 ) )
      = laminj ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',laminj) ).

thf(f383,plain,
    ( apinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y0 @ Y2 )
                        = ( ap @ Y3 @ Y1 ) )
                     => ( Y2 = Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f270]) ).

thf(f270,plain,
    ( apinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y0 @ Y2 )
                        = ( ap @ Y3 @ Y1 ) )
                     => ( Y2 = Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f269]) ).

thf(f269,plain,
    ( apinj2
    = ( ! [X0: term,X1: term,X2: term,X3: term] :
          ( ( ( ap @ X3 @ X1 )
            = ( ap @ X0 @ X2 ) )
         => ( X1 = X2 ) ) ) ),
    inference(rectify,[],[f17]) ).

thf(f17,axiom,
    ( apinj2
    = ( ! [X0: term,X7: term,X6: term,X1: term] :
          ( ( ( ap @ X0 @ X6 )
            = ( ap @ X1 @ X7 ) )
         => ( X6 = X7 ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',apinj2) ).

thf(f346,plain,
    ( apinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y1 @ Y2 )
                        = ( ap @ Y0 @ Y3 ) )
                     => ( Y1 = Y0 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f237]) ).

thf(f237,plain,
    ( apinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y1 @ Y2 )
                        = ( ap @ Y0 @ Y3 ) )
                     => ( Y1 = Y0 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f236]) ).

thf(f236,plain,
    ! [X0: term,X1: term,X2: term,X3: term] :
      ( ( ( ( ap @ X2 @ X1 )
          = ( ap @ X3 @ X0 ) )
       => ( X2 = X3 ) )
      = apinj1 ),
    inference(rectify,[],[f16]) ).

thf(f16,axiom,
    ! [X6: term,X7: term,X1: term,X0: term] :
      ( ( ( ( ap @ X0 @ X6 )
          = ( ap @ X1 @ X7 ) )
       => ( X0 = X1 ) )
      = apinj1 ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',apinj1) ).

thf(f379,plain,
    ( ulamvarind
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( Y0 @ one )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( ( Y0 @ Y1 )
                   => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f283]) ).

thf(f283,plain,
    ( ulamvarind
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( Y0 @ one )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( ( Y0 @ Y1 )
                   => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f282]) ).

thf(f282,plain,
    ( ulamvarind
    = ( ! [X0: term > $o] :
          ( ( X0 @ one )
         => ( ! [X1: term] :
                ( ( var @ X1 )
               => ( ( X0 @ X1 )
                 => ( X0 @ ( sub @ X1 @ sh ) ) ) )
           => ! [X2: term] :
                ( ( var @ X2 )
               => ( X0 @ X2 ) ) ) ) ) ),
    inference(rectify,[],[f15]) ).

thf(f15,axiom,
    ( ulamvarind
    = ( ! [X5: term > $o] :
          ( ( X5 @ one )
         => ( ! [X0: term] :
                ( ( var @ X0 )
               => ( ( X5 @ X0 )
                 => ( X5 @ ( sub @ X0 @ sh ) ) ) )
           => ! [X0: term] :
                ( ( var @ X0 )
               => ( X5 @ X0 ) ) ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',ulamvarind) ).

thf(f360,plain,
    ( ulamvarsh
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( var @ Y0 )
         => ( var @ ( sub @ Y0 @ sh ) ) ) ) ),
    inference(cnf_transformation,[],[f274]) ).

thf(f274,plain,
    ( ulamvarsh
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( var @ Y0 )
         => ( var @ ( sub @ Y0 @ sh ) ) ) ) ),
    inference(fool_elimination,[],[f273]) ).

thf(f273,plain,
    ( ulamvarsh
    = ( ! [X0: term] :
          ( ( var @ X0 )
         => ( var @ ( sub @ X0 @ sh ) ) ) ) ),
    inference(rectify,[],[f14]) ).

thf(f14,axiom,
    ( ulamvarsh
    = ( ! [X0: term] :
          ( ( var @ X0 )
         => ( var @ ( sub @ X0 @ sh ) ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',ulamvarsh) ).

thf(f378,plain,
    ( ulamvar1
    = ( var @ one ) ),
    inference(cnf_transformation,[],[f223]) ).

thf(f223,plain,
    ( ulamvar1
    = ( var @ one ) ),
    inference(fool_elimination,[],[f13]) ).

thf(f13,axiom,
    ( ulamvar1
    = ( var @ one ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',ulamvar1) ).

thf(f376,plain,
    ( axscons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f187]) ).

thf(f187,plain,
    ( axscons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f186]) ).

thf(f186,plain,
    ! [X0: subst] :
      ( ( ( push @ ( sub @ one @ X0 ) @ ( comp @ sh @ X0 ) )
        = X0 )
      = axscons ),
    inference(rectify,[],[f12]) ).

thf(f12,axiom,
    ! [X2: subst] :
      ( ( ( push @ ( sub @ one @ X2 ) @ ( comp @ sh @ X2 ) )
        = X2 )
      = axscons ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axscons) ).

thf(f358,plain,
    ( axvarshift
    = ( id
      = ( push @ one @ sh ) ) ),
    inference(cnf_transformation,[],[f208]) ).

thf(f208,plain,
    ( axvarshift
    = ( id
      = ( push @ one @ sh ) ) ),
    inference(fool_elimination,[],[f11]) ).

thf(f11,axiom,
    ( ( id
      = ( push @ one @ sh ) )
    = axvarshift ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axvarshift) ).

thf(f412,plain,
    ( axidr
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ Y0 @ id )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f266]) ).

thf(f266,plain,
    ( axidr
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ Y0 @ id )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f265]) ).

thf(f265,plain,
    ! [X0: subst] :
      ( ( ( comp @ X0 @ id )
        = X0 )
      = axidr ),
    inference(rectify,[],[f10]) ).

thf(f10,axiom,
    ! [X2: subst] :
      ( ( ( comp @ X2 @ id )
        = X2 )
      = axidr ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axidr) ).

thf(f381,plain,
    ( axmap
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                  = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f268]) ).

thf(f268,plain,
    ( axmap
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                  = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f267]) ).

thf(f267,plain,
    ( axmap
    = ( ! [X0: subst,X1: subst,X2: term] :
          ( ( comp @ ( push @ X2 @ X0 ) @ X1 )
          = ( push @ ( sub @ X2 @ X1 ) @ ( comp @ X0 @ X1 ) ) ) ) ),
    inference(rectify,[],[f9]) ).

thf(f9,axiom,
    ( axmap
    = ( ! [X2: subst,X3: subst,X0: term] :
          ( ( comp @ ( push @ X0 @ X2 ) @ X3 )
          = ( push @ ( sub @ X0 @ X3 ) @ ( comp @ X2 @ X3 ) ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axmap) ).

thf(f339,plain,
    ( axassoc
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                  = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) ) ),
    inference(cnf_transformation,[],[f144]) ).

thf(f144,plain,
    ( axassoc
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                  = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) ) ),
    inference(fool_elimination,[],[f143]) ).

thf(f143,plain,
    ( axassoc
    = ( ! [X0: subst,X1: subst,X2: subst] :
          ( ( comp @ X0 @ ( comp @ X1 @ X2 ) )
          = ( comp @ ( comp @ X0 @ X1 ) @ X2 ) ) ) ),
    inference(rectify,[],[f8]) ).

thf(f8,axiom,
    ( axassoc
    = ( ! [X2: subst,X3: subst,X4: subst] :
          ( ( comp @ ( comp @ X2 @ X3 ) @ X4 )
          = ( comp @ X2 @ ( comp @ X3 @ X4 ) ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axassoc) ).

thf(f399,plain,
    ( axshiftcons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
              = Y0 ) ) ) ),
    inference(cnf_transformation,[],[f291]) ).

thf(f291,plain,
    ( axshiftcons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
              = Y0 ) ) ) ),
    inference(fool_elimination,[],[f290]) ).

thf(f290,plain,
    ( axshiftcons
    = ( ! [X0: term,X1: subst] :
          ( ( comp @ sh @ ( push @ X0 @ X1 ) )
          = X1 ) ) ),
    inference(rectify,[],[f7]) ).

thf(f7,axiom,
    ( axshiftcons
    = ( ! [X0: term,X2: subst] :
          ( ( comp @ sh @ ( push @ X0 @ X2 ) )
          = X2 ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axshiftcons) ).

thf(f397,plain,
    ( axidl
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ id @ Y0 )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f214]) ).

thf(f214,plain,
    ( axidl
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ id @ Y0 )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f213]) ).

thf(f213,plain,
    ! [X0: subst] :
      ( ( ( comp @ id @ X0 )
        = X0 )
      = axidl ),
    inference(rectify,[],[f6]) ).

thf(f6,axiom,
    ! [X2: subst] :
      ( ( ( comp @ id @ X2 )
        = X2 )
      = axidl ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axidl) ).

thf(f406,plain,
    ( axclos
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                  = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) ),
    inference(cnf_transformation,[],[f134]) ).

thf(f134,plain,
    ( axclos
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                  = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) ),
    inference(fool_elimination,[],[f133]) ).

thf(f133,plain,
    ! [X0: subst,X1: term,X2: subst] :
      ( ( ( sub @ X1 @ ( comp @ X2 @ X0 ) )
        = ( sub @ ( sub @ X1 @ X2 ) @ X0 ) )
      = axclos ),
    inference(rectify,[],[f5]) ).

thf(f5,axiom,
    ! [X3: subst,X0: term,X2: subst] :
      ( ( ( sub @ ( sub @ X0 @ X2 ) @ X3 )
        = ( sub @ X0 @ ( comp @ X2 @ X3 ) ) )
      = axclos ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axclos) ).

thf(f410,plain,
    ( axabs
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( ( sub @ ( lam @ Y0 ) @ Y1 )
              = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f128]) ).

thf(f128,plain,
    ( axabs
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( ( sub @ ( lam @ Y0 ) @ Y1 )
              = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f127]) ).

thf(f127,plain,
    ! [X0: subst,X1: term] :
      ( ( ( sub @ ( lam @ X1 ) @ X0 )
        = ( lam @ ( sub @ X1 @ ( push @ one @ ( comp @ X0 @ sh ) ) ) ) )
      = axabs ),
    inference(rectify,[],[f4]) ).

thf(f4,axiom,
    ! [X2: subst,X0: term] :
      ( ( ( sub @ ( lam @ X0 ) @ X2 )
        = ( lam @ ( sub @ X0 @ ( push @ one @ ( comp @ X2 @ sh ) ) ) ) )
      = axabs ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axabs) ).

thf(f382,plain,
    ( axvarid
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( sub @ Y0 @ id )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f306]) ).

thf(f306,plain,
    ( axvarid
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( sub @ Y0 @ id )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f3]) ).

thf(f3,axiom,
    ! [X0: term] :
      ( ( ( sub @ X0 @ id )
        = X0 )
      = axvarid ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axvarid) ).

thf(f370,plain,
    ( axvarcons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
              = Y1 ) ) ) ),
    inference(cnf_transformation,[],[f195]) ).

thf(f195,plain,
    ( axvarcons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
              = Y1 ) ) ) ),
    inference(fool_elimination,[],[f194]) ).

thf(f194,plain,
    ! [X0: term,X1: subst] :
      ( ( ( sub @ one @ ( push @ X0 @ X1 ) )
        = X0 )
      = axvarcons ),
    inference(rectify,[],[f2]) ).

thf(f2,axiom,
    ! [X0: term,X2: subst] :
      ( ( ( sub @ one @ ( push @ X0 @ X2 ) )
        = X0 )
      = axvarcons ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axvarcons) ).

thf(f340,plain,
    ( axapp
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 )
                  = ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f164]) ).

thf(f164,plain,
    ( axapp
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 )
                  = ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f163]) ).

thf(f163,plain,
    ( axapp
    = ( ! [X0: term,X1: subst,X2: term] :
          ( ( sub @ ( ap @ X2 @ X0 ) @ X1 )
          = ( ap @ ( sub @ X2 @ X1 ) @ ( sub @ X0 @ X1 ) ) ) ) ),
    inference(rectify,[],[f1]) ).

thf(f1,axiom,
    ( axapp
    = ( ! [X1: term,X2: subst,X0: term] :
          ( ( sub @ ( ap @ X0 @ X1 ) @ X2 )
          = ( ap @ ( sub @ X0 @ X2 ) @ ( sub @ X1 @ X2 ) ) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',axapp) ).

thf(f386,plain,
    ( hoasinduction_lem3b_gthm
    = ( axapp
     => ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => ( hoasapnotvar
                                                                       => ( hoasinduction_lem1
                                                                         => ( hoasinduction_lem2
                                                                           => hoasinduction_lem3b ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f175]) ).

thf(f175,plain,
    ( hoasinduction_lem3b_gthm
    = ( axapp
     => ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => ( hoasapnotvar
                                                                       => ( hoasinduction_lem1
                                                                         => ( hoasinduction_lem2
                                                                           => hoasinduction_lem3b ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f174]) ).

thf(f174,plain,
    ( axapp
   => ( ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => ( hoasapnotvar
                                                                       => ( hoasinduction_lem1
                                                                         => ( hoasinduction_lem2
                                                                           => hoasinduction_lem3b ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
      = hoasinduction_lem3b_gthm ) ),
    inference(rectify,[],[f106]) ).

thf(f106,axiom,
    ( axapp
   => ( ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => ( hoasapnotvar
                                                                       => ( hoasinduction_lem1
                                                                         => ( hoasinduction_lem2
                                                                           => hoasinduction_lem3b ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
      = hoasinduction_lem3b_gthm ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',hoasinduction_lem3b_gthm) ).

thf(f391,plain,
    ( $true = ~ hoasinduction_lem3b_gthm ),
    inference(cnf_transformation,[],[f126]) ).

thf(f126,plain,
    ( $true = ~ hoasinduction_lem3b_gthm ),
    inference(fool_elimination,[],[f125]) ).

thf(f125,plain,
    ~ hoasinduction_lem3b_gthm,
    inference(rectify,[],[f115]) ).

thf(f115,negated_conjecture,
    ~ hoasinduction_lem3b_gthm,
    inference(negated_conjecture,[],[f114]) ).

thf(f114,conjecture,
    hoasinduction_lem3b_gthm,
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',thm) ).

thf(f1174,plain,
    ! [X1: subst > term > term] :
      ( ( X1 @ sh @ one )
     != ( sub @ sK8 @ id ) ),
    inference(forward_demodulation,[],[f698,f502]) ).

thf(f502,plain,
    ( id
    = ( push @ one @ sh ) ),
    inference(equality_proxy_clausification,[],[f501]) ).

thf(f501,plain,
    ( $true
    = ( id
      = ( push @ one @ sh ) ) ),
    inference(binary_proxy_clausification,[],[f498]) ).

thf(f498,plain,
    ( ( ( id
        = ( push @ one @ sh ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
              = Y0 ) )
       => ( ( var @ one )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( ( var @ Y0 )
                 => ( var @ ( sub @ Y0 @ sh ) ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( Y0 @ one )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( ( Y0 @ Y1 )
                             => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ Y1 @ Y2 )
                                    = ( ap @ Y0 @ Y3 ) )
                                 => ( Y1 = Y0 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ Y0 @ Y2 )
                                      = ( ap @ Y3 @ Y1 ) )
                                   => ( Y2 = Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( ( lam @ Y1 )
                                = ( lam @ Y0 ) )
                             => ( Y1 = Y0 ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( ( sub @ Y1 @ sh )
                                  = ( sub @ Y0 @ sh ) )
                               => ( Y1 = Y0 ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( lam @ Y1 )
                                     != ( ap @ Y0 @ Y2 ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ~ ( var @ ( lam @ Y0 ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ Y1 ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                       => ( !! @ term @ Y0 ) ) ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( var @ Y3 )
                                                   => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                             => ( ( Y0 @ Y2 )
                                               => ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( var @ Y3 )
                                                     => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y1 )
                                                 => ( ( Y0 @ Y2 )
                                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( var @ Y3 )
                                                         => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                   => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                 => ( ( !! @ ( term > $o )
                                      @ ^ [Y0: term > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( ( Y0 @ Y1 )
                                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                             => ( !! @ term @ Y0 ) ) ) ) )
                                   => ( ( ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                      = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                        & ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( ( comp @ Y0 @ id )
                                              = Y0 ) )
                                        & ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( ( comp @ id @ Y0 )
                                              = Y0 ) ) )
                                     => ( ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( ( sub @ Y0 @ id )
                                                = Y0 ) )
                                          & ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                        = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                              = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                           => ( Y3 = Y0 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                             => ( Y3 = Y2 ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > term )
                                                @ ^ [Y0: subst > term > term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                   => ( !! @ ( subst > term > term )
                                                      @ ^ [Y1: subst > term > term] :
                                                          ( ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y4: subst] :
                                                                        ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                        = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                         => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                              = ( lam @ ( Y1 @ sh @ one ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( ( Y0 @ Y3 @ Y2 )
                                                                      = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > term )
                                                  @ ^ [Y0: subst > term > term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( lam @ ( Y0 @ sh @ one ) )
                                                               != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > term )
                                                    @ ^ [Y0: subst > term > term] :
                                                        ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                      = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                   => ( ( !! @ ( subst > term > subst > $o )
                                                        @ ^ [Y0: subst > term > subst > $o] :
                                                            ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y4: term] :
                                                                              ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                             => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y4: subst] :
                                                                                ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                               => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( var @ ( sub @ Y1 @ id ) )
                                                                     => ( Y0 @ id @ Y1 @ id ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( var @ Y1 )
                                                                     => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > subst > $o )
                                                          @ ^ [Y0: subst > term > subst > $o] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y4: subst] :
                                                                                ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                               => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                             => ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y4: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                 => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( Y0 @ id @ Y1 @ id )
                                                                           => ( ( Y0 @ id @ Y2 @ id )
                                                                             => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( Y0 @ id @ Y2 @ id )
                                                                           => ( ( Y0 @ id @ Y1 @ id )
                                                                             => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( ?? @ ( subst > term > term )
                                                              @ ^ [Y1: subst > term > term] :
                                                                  ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                  = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f489]) ).

thf(f489,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ Y0 @ id )
            = Y0 ) )
     => ( ( id
          = ( push @ one @ sh ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                = Y0 ) )
         => ( ( var @ one )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( ( var @ Y0 )
                   => ( var @ ( sub @ Y0 @ sh ) ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( Y0 @ one )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( ( Y0 @ Y1 )
                               => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ Y1 @ Y2 )
                                      = ( ap @ Y0 @ Y3 ) )
                                   => ( Y1 = Y0 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ Y0 @ Y2 )
                                        = ( ap @ Y3 @ Y1 ) )
                                     => ( Y2 = Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( ( lam @ Y1 )
                                  = ( lam @ Y0 ) )
                               => ( Y1 = Y0 ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( ( sub @ Y1 @ sh )
                                    = ( sub @ Y0 @ sh ) )
                                 => ( Y1 = Y0 ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( lam @ Y1 )
                                       != ( ap @ Y0 @ Y2 ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ~ ( var @ ( lam @ Y0 ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ Y1 ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( ( Y0 @ Y1 )
                                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                         => ( !! @ term @ Y0 ) ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( var @ Y3 )
                                                     => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                               => ( ( Y0 @ Y2 )
                                                 => ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( var @ Y3 )
                                                       => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                 => ( ( !! @ ( term > $o )
                                      @ ^ [Y0: term > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y1 )
                                                   => ( ( Y0 @ Y2 )
                                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                           => ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( var @ Y3 )
                                                           => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                     => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( var @ Y1 )
                                                 => ( Y0 @ Y1 ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( ( Y0 @ Y1 )
                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                               => ( !! @ term @ Y0 ) ) ) ) )
                                     => ( ( ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                        = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                          & ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( ( comp @ Y0 @ id )
                                                = Y0 ) )
                                          & ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( ( comp @ id @ Y0 )
                                                = Y0 ) ) )
                                       => ( ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( ( sub @ Y0 @ id )
                                                  = Y0 ) )
                                            & ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                          = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                             => ( Y3 = Y0 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                               => ( Y3 = Y2 ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > term )
                                                  @ ^ [Y0: subst > term > term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                     => ( !! @ ( subst > term > term )
                                                        @ ^ [Y1: subst > term > term] :
                                                            ( ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y4: subst] :
                                                                          ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                          = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                           => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                = ( lam @ ( Y1 @ sh @ one ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( ( Y0 @ Y3 @ Y2 )
                                                                        = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > term )
                                                    @ ^ [Y0: subst > term > term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( lam @ ( Y0 @ sh @ one ) )
                                                                 != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > term )
                                                      @ ^ [Y0: subst > term > term] :
                                                          ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                        = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                     => ( ( !! @ ( subst > term > subst > $o )
                                                          @ ^ [Y0: subst > term > subst > $o] :
                                                              ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y4: term] :
                                                                                ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                               => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                             => ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y4: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                 => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( var @ ( sub @ Y1 @ id ) )
                                                                       => ( Y0 @ id @ Y1 @ id ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( var @ Y1 )
                                                                       => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > subst > $o )
                                                            @ ^ [Y0: subst > term > subst > $o] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y4: subst] :
                                                                                  ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                 => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                               => ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y4: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                   => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ id @ Y1 @ id )
                                                                             => ( ( Y0 @ id @ Y2 @ id )
                                                                               => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ id @ Y2 @ id )
                                                                             => ( ( Y0 @ id @ Y1 @ id )
                                                                               => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( ?? @ ( subst > term > term )
                                                                @ ^ [Y1: subst > term > term] :
                                                                    ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                    = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f487]) ).

thf(f487,plain,
    ( $false
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                    = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ Y0 @ id )
              = Y0 ) )
       => ( ( id
            = ( push @ one @ sh ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                  = Y0 ) )
           => ( ( var @ one )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( ( var @ Y0 )
                     => ( var @ ( sub @ Y0 @ sh ) ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( Y0 @ one )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ Y1 @ Y2 )
                                        = ( ap @ Y0 @ Y3 ) )
                                     => ( Y1 = Y0 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ Y0 @ Y2 )
                                          = ( ap @ Y3 @ Y1 ) )
                                       => ( Y2 = Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( ( lam @ Y1 )
                                    = ( lam @ Y0 ) )
                                 => ( Y1 = Y0 ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( ( sub @ Y1 @ sh )
                                      = ( sub @ Y0 @ sh ) )
                                   => ( Y1 = Y0 ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( lam @ Y1 )
                                         != ( ap @ Y0 @ Y2 ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ~ ( var @ ( lam @ Y0 ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ Y1 ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                           => ( !! @ term @ Y0 ) ) ) ) )
                                 => ( ( !! @ ( term > $o )
                                      @ ^ [Y0: term > $o] :
                                          ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( var @ Y3 )
                                                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                 => ( ( Y0 @ Y2 )
                                                   => ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( var @ Y3 )
                                                         => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y1 )
                                                     => ( ( Y0 @ Y2 )
                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( var @ Y3 )
                                                             => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                       => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                     => ( ( !! @ ( term > $o )
                                          @ ^ [Y0: term > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ Y1 ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( ( Y0 @ Y1 )
                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                 => ( !! @ term @ Y0 ) ) ) ) )
                                       => ( ( ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                          = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                            & ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( ( comp @ Y0 @ id )
                                                  = Y0 ) )
                                            & ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( ( comp @ id @ Y0 )
                                                  = Y0 ) ) )
                                         => ( ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( ( sub @ Y0 @ id )
                                                    = Y0 ) )
                                              & ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                            = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                  = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                               => ( Y3 = Y0 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                 => ( Y3 = Y2 ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > term )
                                                    @ ^ [Y0: subst > term > term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                       => ( !! @ ( subst > term > term )
                                                          @ ^ [Y1: subst > term > term] :
                                                              ( ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y4: subst] :
                                                                            ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                            = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                             => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                  = ( lam @ ( Y1 @ sh @ one ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( ( Y0 @ Y3 @ Y2 )
                                                                          = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > term )
                                                      @ ^ [Y0: subst > term > term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( lam @ ( Y0 @ sh @ one ) )
                                                                   != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > term )
                                                        @ ^ [Y0: subst > term > term] :
                                                            ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                          = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                       => ( ( !! @ ( subst > term > subst > $o )
                                                            @ ^ [Y0: subst > term > subst > $o] :
                                                                ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y4: term] :
                                                                                  ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                 => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                               => ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y4: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                   => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( ( var @ ( sub @ Y1 @ id ) )
                                                                         => ( Y0 @ id @ Y1 @ id ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( ( var @ Y1 )
                                                                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > subst > $o )
                                                              @ ^ [Y0: subst > term > subst > $o] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y4: subst] :
                                                                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                 => ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y4: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                     => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( ( Y0 @ id @ Y1 @ id )
                                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                                 => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( ( Y0 @ id @ Y2 @ id )
                                                                               => ( ( Y0 @ id @ Y1 @ id )
                                                                                 => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( ?? @ ( subst > term > term )
                                                                  @ ^ [Y1: subst > term > term] :
                                                                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f480]) ).

thf(f480,plain,
    ( $false
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                    = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                      = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ Y0 @ id )
                = Y0 ) )
         => ( ( id
              = ( push @ one @ sh ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                    = Y0 ) )
             => ( ( var @ one )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( ( var @ Y0 )
                       => ( var @ ( sub @ Y0 @ sh ) ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( Y0 @ one )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ Y1 @ Y2 )
                                          = ( ap @ Y0 @ Y3 ) )
                                       => ( Y1 = Y0 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ Y0 @ Y2 )
                                            = ( ap @ Y3 @ Y1 ) )
                                         => ( Y2 = Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( ( lam @ Y1 )
                                      = ( lam @ Y0 ) )
                                   => ( Y1 = Y0 ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( ( sub @ Y1 @ sh )
                                        = ( sub @ Y0 @ sh ) )
                                     => ( Y1 = Y0 ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( lam @ Y1 )
                                           != ( ap @ Y0 @ Y2 ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ~ ( var @ ( lam @ Y0 ) ) )
                                 => ( ( !! @ ( term > $o )
                                      @ ^ [Y0: term > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( ( Y0 @ Y1 )
                                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( Y0 @ Y1 )
                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                             => ( !! @ term @ Y0 ) ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( var @ Y3 )
                                                         => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                   => ( ( Y0 @ Y2 )
                                                     => ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( var @ Y3 )
                                                           => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                     => ( ( !! @ ( term > $o )
                                          @ ^ [Y0: term > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y1 )
                                                       => ( ( Y0 @ Y2 )
                                                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( var @ Y3 )
                                                               => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                         => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                       => ( ( !! @ ( term > $o )
                                            @ ^ [Y0: term > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( var @ Y1 )
                                                     => ( Y0 @ Y1 ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( ( Y0 @ Y1 )
                                                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                   => ( !! @ term @ Y0 ) ) ) ) )
                                         => ( ( ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                            = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                              & ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( ( comp @ Y0 @ id )
                                                    = Y0 ) )
                                              & ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( ( comp @ id @ Y0 )
                                                    = Y0 ) ) )
                                           => ( ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( ( sub @ Y0 @ id )
                                                      = Y0 ) )
                                                & ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                              = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                    = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                                 => ( Y3 = Y0 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                      = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                   => ( Y3 = Y2 ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > term )
                                                      @ ^ [Y0: subst > term > term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                         => ( !! @ ( subst > term > term )
                                                            @ ^ [Y1: subst > term > term] :
                                                                ( ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y4: subst] :
                                                                              ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                              = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                               => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                    = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( ( Y0 @ Y3 @ Y2 )
                                                                            = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > term )
                                                        @ ^ [Y0: subst > term > term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( lam @ ( Y0 @ sh @ one ) )
                                                                     != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > term )
                                                          @ ^ [Y0: subst > term > term] :
                                                              ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                            = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                         => ( ( !! @ ( subst > term > subst > $o )
                                                              @ ^ [Y0: subst > term > subst > $o] :
                                                                  ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y4: term] :
                                                                                    ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                   => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                 => ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y4: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                     => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( ( var @ ( sub @ Y1 @ id ) )
                                                                           => ( Y0 @ id @ Y1 @ id ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( ( var @ Y1 )
                                                                           => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > subst > $o )
                                                                @ ^ [Y0: subst > term > subst > $o] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y4: subst] :
                                                                                      ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                     => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                   => ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y4: subst] :
                                                                                        ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                       => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                     => ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( Y0 @ id @ Y1 @ id )
                                                                                 => ( ( Y0 @ id @ Y2 @ id )
                                                                                   => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                       => ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( Y0 @ id @ Y2 @ id )
                                                                                 => ( ( Y0 @ id @ Y1 @ id )
                                                                                   => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( ?? @ ( subst > term > term )
                                                                    @ ^ [Y1: subst > term > term] :
                                                                        ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                        = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f478]) ).

thf(f478,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                = Y0 ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                      = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                        = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ Y0 @ id )
                  = Y0 ) )
           => ( ( id
                = ( push @ one @ sh ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                      = Y0 ) )
               => ( ( var @ one )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( ( var @ Y0 )
                         => ( var @ ( sub @ Y0 @ sh ) ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( Y0 @ one )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ Y1 @ Y2 )
                                            = ( ap @ Y0 @ Y3 ) )
                                         => ( Y1 = Y0 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ Y0 @ Y2 )
                                              = ( ap @ Y3 @ Y1 ) )
                                           => ( Y2 = Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( ( lam @ Y1 )
                                        = ( lam @ Y0 ) )
                                     => ( Y1 = Y0 ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( ( sub @ Y1 @ sh )
                                          = ( sub @ Y0 @ sh ) )
                                       => ( Y1 = Y0 ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( lam @ Y1 )
                                             != ( ap @ Y0 @ Y2 ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ~ ( var @ ( lam @ Y0 ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( var @ Y1 )
                                                 => ( Y0 @ Y1 ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( ( Y0 @ Y1 )
                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                               => ( !! @ term @ Y0 ) ) ) ) )
                                     => ( ( !! @ ( term > $o )
                                          @ ^ [Y0: term > $o] :
                                              ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( var @ Y3 )
                                                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                     => ( ( Y0 @ Y2 )
                                                       => ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( var @ Y3 )
                                                             => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                       => ( ( !! @ ( term > $o )
                                            @ ^ [Y0: term > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y1 )
                                                         => ( ( Y0 @ Y2 )
                                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( var @ Y3 )
                                                                 => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                           => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                         => ( ( !! @ ( term > $o )
                                              @ ^ [Y0: term > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( var @ Y1 )
                                                       => ( Y0 @ Y1 ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( ( Y0 @ Y1 )
                                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                     => ( !! @ term @ Y0 ) ) ) ) )
                                           => ( ( ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                              = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                                & ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( ( comp @ Y0 @ id )
                                                      = Y0 ) )
                                                & ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( ( comp @ id @ Y0 )
                                                      = Y0 ) ) )
                                             => ( ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( ( sub @ Y0 @ id )
                                                        = Y0 ) )
                                                  & ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                                = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                      = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                                   => ( Y3 = Y0 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                        = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                     => ( Y3 = Y2 ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > term )
                                                        @ ^ [Y0: subst > term > term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                           => ( !! @ ( subst > term > term )
                                                              @ ^ [Y1: subst > term > term] :
                                                                  ( ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y4: subst] :
                                                                                ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                                = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                                 => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                      = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( ( Y0 @ Y3 @ Y2 )
                                                                              = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > term )
                                                          @ ^ [Y0: subst > term > term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( lam @ ( Y0 @ sh @ one ) )
                                                                       != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > term )
                                                            @ ^ [Y0: subst > term > term] :
                                                                ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                              = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                           => ( ( !! @ ( subst > term > subst > $o )
                                                                @ ^ [Y0: subst > term > subst > $o] :
                                                                    ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y4: term] :
                                                                                      ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                     => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                   => ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y4: subst] :
                                                                                        ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                       => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                     => ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( ( var @ ( sub @ Y1 @ id ) )
                                                                             => ( Y0 @ id @ Y1 @ id ) ) )
                                                                       => ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( ( var @ Y1 )
                                                                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > subst > $o )
                                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y4: subst] :
                                                                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                     => ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y4: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                         => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                       => ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                                     => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( Y0 @ id @ Y2 @ id )
                                                                                   => ( ( Y0 @ id @ Y1 @ id )
                                                                                     => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( ?? @ ( subst > term > term )
                                                                      @ ^ [Y1: subst > term > term] :
                                                                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f476]) ).

thf(f476,plain,
    ( $false
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ id @ Y0 )
            = Y0 ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                  = Y0 ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                        = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                          = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ Y0 @ id )
                    = Y0 ) )
             => ( ( id
                  = ( push @ one @ sh ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                        = Y0 ) )
                 => ( ( var @ one )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( ( var @ Y0 )
                           => ( var @ ( sub @ Y0 @ sh ) ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( Y0 @ one )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ Y1 @ Y2 )
                                              = ( ap @ Y0 @ Y3 ) )
                                           => ( Y1 = Y0 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ Y0 @ Y2 )
                                                = ( ap @ Y3 @ Y1 ) )
                                             => ( Y2 = Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( ( lam @ Y1 )
                                          = ( lam @ Y0 ) )
                                       => ( Y1 = Y0 ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( ( sub @ Y1 @ sh )
                                            = ( sub @ Y0 @ sh ) )
                                         => ( Y1 = Y0 ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( lam @ Y1 )
                                               != ( ap @ Y0 @ Y2 ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ~ ( var @ ( lam @ Y0 ) ) )
                                     => ( ( !! @ ( term > $o )
                                          @ ^ [Y0: term > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ Y1 ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( ( Y0 @ Y1 )
                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( Y0 @ Y1 )
                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                 => ( !! @ term @ Y0 ) ) ) ) )
                                       => ( ( !! @ ( term > $o )
                                            @ ^ [Y0: term > $o] :
                                                ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( var @ Y3 )
                                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                       => ( ( Y0 @ Y2 )
                                                         => ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( var @ Y3 )
                                                               => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                         => ( ( !! @ ( term > $o )
                                              @ ^ [Y0: term > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y1 )
                                                           => ( ( Y0 @ Y2 )
                                                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( var @ Y3 )
                                                                   => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                             => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                           => ( ( !! @ ( term > $o )
                                                @ ^ [Y0: term > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( var @ Y1 )
                                                         => ( Y0 @ Y1 ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                       => ( !! @ term @ Y0 ) ) ) ) )
                                             => ( ( ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                                = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                                  & ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( ( comp @ Y0 @ id )
                                                        = Y0 ) )
                                                  & ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( ( comp @ id @ Y0 )
                                                        = Y0 ) ) )
                                               => ( ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( ( sub @ Y0 @ id )
                                                          = Y0 ) )
                                                    & ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                                  = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                        = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                                     => ( Y3 = Y0 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                          = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                       => ( Y3 = Y2 ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > term )
                                                          @ ^ [Y0: subst > term > term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                             => ( !! @ ( subst > term > term )
                                                                @ ^ [Y1: subst > term > term] :
                                                                    ( ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y4: subst] :
                                                                                  ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                                  = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                                   => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                        = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( ( Y0 @ Y3 @ Y2 )
                                                                                = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > term )
                                                            @ ^ [Y0: subst > term > term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( lam @ ( Y0 @ sh @ one ) )
                                                                         != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > term )
                                                              @ ^ [Y0: subst > term > term] :
                                                                  ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                                = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                             => ( ( !! @ ( subst > term > subst > $o )
                                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                                      ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y4: term] :
                                                                                        ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                       => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                     => ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y4: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                         => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                       => ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( ( var @ ( sub @ Y1 @ id ) )
                                                                               => ( Y0 @ id @ Y1 @ id ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( ( var @ Y1 )
                                                                               => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > subst > $o )
                                                                    @ ^ [Y0: subst > term > subst > $o] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y4: subst] :
                                                                                          ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                         => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                       => ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                           => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                         => ( ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( ( Y0 @ id @ Y1 @ id )
                                                                                     => ( ( Y0 @ id @ Y2 @ id )
                                                                                       => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                           => ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( ( Y0 @ id @ Y2 @ id )
                                                                                     => ( ( Y0 @ id @ Y1 @ id )
                                                                                       => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( ?? @ ( subst > term > term )
                                                                        @ ^ [Y1: subst > term > term] :
                                                                            ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                            = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f474]) ).

thf(f474,plain,
    ( $false
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                    = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ id @ Y0 )
              = Y0 ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                    = Y0 ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                          = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                            = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ Y0 @ id )
                      = Y0 ) )
               => ( ( id
                    = ( push @ one @ sh ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                          = Y0 ) )
                   => ( ( var @ one )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( ( var @ Y0 )
                             => ( var @ ( sub @ Y0 @ sh ) ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( Y0 @ one )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ Y1 @ Y2 )
                                                = ( ap @ Y0 @ Y3 ) )
                                             => ( Y1 = Y0 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ Y0 @ Y2 )
                                                  = ( ap @ Y3 @ Y1 ) )
                                               => ( Y2 = Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( ( lam @ Y1 )
                                            = ( lam @ Y0 ) )
                                         => ( Y1 = Y0 ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( ( sub @ Y1 @ sh )
                                              = ( sub @ Y0 @ sh ) )
                                           => ( Y1 = Y0 ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( lam @ Y1 )
                                                 != ( ap @ Y0 @ Y2 ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ~ ( var @ ( lam @ Y0 ) ) )
                                       => ( ( !! @ ( term > $o )
                                            @ ^ [Y0: term > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( var @ Y1 )
                                                     => ( Y0 @ Y1 ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( ( Y0 @ Y1 )
                                                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( Y0 @ Y1 )
                                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                   => ( !! @ term @ Y0 ) ) ) ) )
                                         => ( ( !! @ ( term > $o )
                                              @ ^ [Y0: term > $o] :
                                                  ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( var @ Y3 )
                                                               => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                         => ( ( Y0 @ Y2 )
                                                           => ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( var @ Y3 )
                                                                 => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                           => ( ( !! @ ( term > $o )
                                                @ ^ [Y0: term > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y1 )
                                                             => ( ( Y0 @ Y2 )
                                                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( var @ Y3 )
                                                                     => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                               => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                             => ( ( !! @ ( term > $o )
                                                  @ ^ [Y0: term > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( var @ Y1 )
                                                           => ( Y0 @ Y1 ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( ( Y0 @ Y1 )
                                                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                         => ( !! @ term @ Y0 ) ) ) ) )
                                               => ( ( ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                                  = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                                    & ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( ( comp @ Y0 @ id )
                                                          = Y0 ) )
                                                    & ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( ( comp @ id @ Y0 )
                                                          = Y0 ) ) )
                                                 => ( ( ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( ( sub @ Y0 @ id )
                                                            = Y0 ) )
                                                      & ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                                    = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                          = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                                       => ( Y3 = Y0 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                            = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                         => ( Y3 = Y2 ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > term )
                                                            @ ^ [Y0: subst > term > term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                               => ( !! @ ( subst > term > term )
                                                                  @ ^ [Y1: subst > term > term] :
                                                                      ( ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y4: subst] :
                                                                                    ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                                    = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                                     => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                          = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                       => ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( ( Y0 @ Y3 @ Y2 )
                                                                                  = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > term )
                                                              @ ^ [Y0: subst > term > term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( lam @ ( Y0 @ sh @ one ) )
                                                                           != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > term )
                                                                @ ^ [Y0: subst > term > term] :
                                                                    ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                                  = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                               => ( ( !! @ ( subst > term > subst > $o )
                                                                    @ ^ [Y0: subst > term > subst > $o] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y4: term] :
                                                                                          ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                         => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                       => ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y3: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                           => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                         => ( ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( ( var @ ( sub @ Y1 @ id ) )
                                                                                 => ( Y0 @ id @ Y1 @ id ) ) )
                                                                           => ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( ( var @ Y1 )
                                                                                 => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > subst > $o )
                                                                      @ ^ [Y0: subst > term > subst > $o] :
                                                                          ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                         => ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y4: subst] :
                                                                                              ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                             => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                           => ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y2: term] :
                                                                                        ( ( Y0 @ id @ Y1 @ id )
                                                                                       => ( ( Y0 @ id @ Y2 @ id )
                                                                                         => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                             => ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y2: term] :
                                                                                        ( ( Y0 @ id @ Y2 @ id )
                                                                                       => ( ( Y0 @ id @ Y1 @ id )
                                                                                         => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y0: term] :
                                                                          ( ?? @ ( subst > term > term )
                                                                          @ ^ [Y1: subst > term > term] :
                                                                              ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                              = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f469]) ).

thf(f469,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( ( sub @ ( lam @ Y0 ) @ Y1 )
                = ( lam @ ( sub @ Y0 @ ( push @ one @ ( comp @ Y1 @ sh ) ) ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                      = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ id @ Y0 )
                = Y0 ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                      = Y0 ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( comp @ Y2 @ ( comp @ Y1 @ Y0 ) )
                            = ( comp @ ( comp @ Y2 @ Y1 ) @ Y0 ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( comp @ ( push @ Y0 @ Y2 ) @ Y1 )
                              = ( push @ ( sub @ Y0 @ Y1 ) @ ( comp @ Y2 @ Y1 ) ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( comp @ Y0 @ id )
                        = Y0 ) )
                 => ( ( id
                      = ( push @ one @ sh ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                            = Y0 ) )
                     => ( ( var @ one )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( ( var @ Y0 )
                               => ( var @ ( sub @ Y0 @ sh ) ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( Y0 @ one )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ Y1 @ Y2 )
                                                  = ( ap @ Y0 @ Y3 ) )
                                               => ( Y1 = Y0 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ Y0 @ Y2 )
                                                    = ( ap @ Y3 @ Y1 ) )
                                                 => ( Y2 = Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( ( lam @ Y1 )
                                              = ( lam @ Y0 ) )
                                           => ( Y1 = Y0 ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( ( sub @ Y1 @ sh )
                                                = ( sub @ Y0 @ sh ) )
                                             => ( Y1 = Y0 ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( lam @ Y1 )
                                                   != ( ap @ Y0 @ Y2 ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ~ ( var @ ( lam @ Y0 ) ) )
                                         => ( ( !! @ ( term > $o )
                                              @ ^ [Y0: term > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( var @ Y1 )
                                                       => ( Y0 @ Y1 ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( ( Y0 @ Y1 )
                                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( Y0 @ Y1 )
                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                     => ( !! @ term @ Y0 ) ) ) ) )
                                           => ( ( !! @ ( term > $o )
                                                @ ^ [Y0: term > $o] :
                                                    ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( var @ Y3 )
                                                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                           => ( ( Y0 @ Y2 )
                                                             => ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( var @ Y3 )
                                                                   => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                                             => ( ( !! @ ( term > $o )
                                                  @ ^ [Y0: term > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y1 )
                                                               => ( ( Y0 @ Y2 )
                                                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                                 => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ Y1 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term @ Y0 ) ) ) ) )
                                                 => ( ( ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                                    = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                                      & ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( ( comp @ Y0 @ id )
                                                            = Y0 ) )
                                                      & ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( ( comp @ id @ Y0 )
                                                            = Y0 ) ) )
                                                   => ( ( ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( ( sub @ Y0 @ id )
                                                              = Y0 ) )
                                                        & ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                                      = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                                            = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                                         => ( Y3 = Y0 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                                              = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                                           => ( Y3 = Y2 ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > term )
                                                              @ ^ [Y0: subst > term > term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                 => ( !! @ ( subst > term > term )
                                                                    @ ^ [Y1: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y4: subst] :
                                                                                      ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                                      = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                                       => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                                            = ( lam @ ( Y1 @ sh @ one ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( ( Y0 @ Y3 @ Y2 )
                                                                                    = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > term )
                                                                @ ^ [Y0: subst > term > term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( lam @ ( Y0 @ sh @ one ) )
                                                                             != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > term )
                                                                  @ ^ [Y0: subst > term > term] :
                                                                      ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                                    = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                                 => ( ( !! @ ( subst > term > subst > $o )
                                                                      @ ^ [Y0: subst > term > subst > $o] :
                                                                          ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y4: term] :
                                                                                            ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                                           => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                                         => ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y3: term] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y4: subst] :
                                                                                              ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                                             => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                                           => ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( ( var @ ( sub @ Y1 @ id ) )
                                                                                   => ( Y0 @ id @ Y1 @ id ) ) )
                                                                             => ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( ( var @ Y1 )
                                                                                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > subst > $o )
                                                                        @ ^ [Y0: subst > term > subst > $o] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y4: subst] :
                                                                                              ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                             => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                           => ( ( !! @ subst
                                                                                @ ^ [Y1: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y2: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y4: subst] :
                                                                                                ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                                               => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                                             => ( ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y2: term] :
                                                                                          ( ( Y0 @ id @ Y1 @ id )
                                                                                         => ( ( Y0 @ id @ Y2 @ id )
                                                                                           => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                               => ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y2: term] :
                                                                                          ( ( Y0 @ id @ Y2 @ id )
                                                                                         => ( ( Y0 @ id @ Y1 @ id )
                                                                                           => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y0: term] :
                                                                            ( ?? @ ( subst > term > term )
                                                                            @ ^ [Y1: subst > term > term] :
                                                                                ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f462]) ).

thf(f698,plain,
    ! [X1: subst > term > term] :
      ( ( X1 @ sh @ one )
     != ( sub @ sK8 @ ( push @ one @ sh ) ) ),
    inference(equality_proxy_clausification,[],[f697]) ).

thf(f697,plain,
    ! [X1: subst > term > term] :
      ( $false
      = ( ( sub @ sK8 @ ( push @ one @ sh ) )
        = ( X1 @ sh @ one ) ) ),
    inference(beta_eta_normalization,[],[f696]) ).

thf(f696,plain,
    ! [X1: subst > term > term] :
      ( ( ^ [Y0: subst > term > term] :
            ( ( sub @ sK8 @ ( push @ one @ sh ) )
            = ( Y0 @ sh @ one ) )
        @ X1 )
      = $false ),
    inference(pi_clausification,[],[f695]) ).

thf(f695,plain,
    ( $false
    = ( ?? @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( sub @ sK8 @ ( push @ one @ sh ) )
          = ( Y0 @ sh @ one ) ) ) ),
    inference(beta_eta_normalization,[],[f694]) ).

thf(f694,plain,
    ( ( ^ [Y0: term] :
          ( ?? @ ( subst > term > term )
          @ ^ [Y1: subst > term > term] :
              ( ( sub @ Y0 @ ( push @ one @ sh ) )
              = ( Y1 @ sh @ one ) ) )
      @ sK8 )
    = $false ),
    inference(sigma_clausification,[],[f692]) ).

thf(f692,plain,
    ( $false
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ?? @ ( subst > term > term )
          @ ^ [Y1: subst > term > term] :
              ( ( sub @ Y0 @ ( push @ one @ sh ) )
              = ( Y1 @ sh @ one ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f690]) ).

thf(f690,plain,
    ( $false
    = ( ( !! @ ( subst > term > subst > $o )
        @ ^ [Y0: subst > term > subst > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                             => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( !! @ subst
                            @ ^ [Y4: subst] :
                                ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                               => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ id @ Y1 @ id )
                         => ( ( Y0 @ id @ Y2 @ id )
                           => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ id @ Y2 @ id )
                         => ( ( Y0 @ id @ Y1 @ id )
                           => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
     => ( !! @ term
        @ ^ [Y0: term] :
            ( ?? @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( sub @ Y0 @ ( push @ one @ sh ) )
                = ( Y1 @ sh @ one ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f688]) ).

thf(f688,plain,
    ( $false
    = ( ( !! @ ( subst > term > subst > $o )
        @ ^ [Y0: subst > term > subst > $o] :
            ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ term
                          @ ^ [Y4: term] :
                              ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                             => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( !! @ subst
                            @ ^ [Y4: subst] :
                                ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                               => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ ( sub @ Y1 @ id ) )
                     => ( Y0 @ id @ Y1 @ id ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
     => ( ( !! @ ( subst > term > subst > $o )
          @ ^ [Y0: subst > term > subst > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( !! @ subst
                            @ ^ [Y4: subst] :
                                ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                               => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( !! @ subst
                              @ ^ [Y4: subst] :
                                  ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                 => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ id @ Y1 @ id )
                           => ( ( Y0 @ id @ Y2 @ id )
                             => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ id @ Y2 @ id )
                           => ( ( Y0 @ id @ Y1 @ id )
                             => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
       => ( !! @ term
          @ ^ [Y0: term] :
              ( ?? @ ( subst > term > term )
              @ ^ [Y1: subst > term > term] :
                  ( ( sub @ Y0 @ ( push @ one @ sh ) )
                  = ( Y1 @ sh @ one ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f675]) ).

thf(f675,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
     => ( ( !! @ ( subst > term > subst > $o )
          @ ^ [Y0: subst > term > subst > $o] :
              ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( !! @ term
                            @ ^ [Y4: term] :
                                ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                               => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( !! @ subst
                              @ ^ [Y4: subst] :
                                  ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                 => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ ( sub @ Y1 @ id ) )
                       => ( Y0 @ id @ Y1 @ id ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
       => ( ( !! @ ( subst > term > subst > $o )
            @ ^ [Y0: subst > term > subst > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( !! @ subst
                              @ ^ [Y4: subst] :
                                  ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                 => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( !! @ subst
                                @ ^ [Y4: subst] :
                                    ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                   => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ id @ Y1 @ id )
                             => ( ( Y0 @ id @ Y2 @ id )
                               => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ id @ Y2 @ id )
                             => ( ( Y0 @ id @ Y1 @ id )
                               => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
         => ( !! @ term
            @ ^ [Y0: term] :
                ( ?? @ ( subst > term > term )
                @ ^ [Y1: subst > term > term] :
                    ( ( sub @ Y0 @ ( push @ one @ sh ) )
                    = ( Y1 @ sh @ one ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f673]) ).

thf(f673,plain,
    ( $false
    = ( ( !! @ ( subst > term > term )
        @ ^ [Y0: subst > term > term] :
            ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                          = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
       => ( ( !! @ ( subst > term > subst > $o )
            @ ^ [Y0: subst > term > subst > $o] :
                ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( !! @ term
                              @ ^ [Y4: term] :
                                  ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                 => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( !! @ subst
                                @ ^ [Y4: subst] :
                                    ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                   => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ ( sub @ Y1 @ id ) )
                         => ( Y0 @ id @ Y1 @ id ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
         => ( ( !! @ ( subst > term > subst > $o )
              @ ^ [Y0: subst > term > subst > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( !! @ subst
                                @ ^ [Y4: subst] :
                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( !! @ subst
                                  @ ^ [Y4: subst] :
                                      ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                     => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ id @ Y1 @ id )
                               => ( ( Y0 @ id @ Y2 @ id )
                                 => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ id @ Y2 @ id )
                               => ( ( Y0 @ id @ Y1 @ id )
                                 => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
           => ( !! @ term
              @ ^ [Y0: term] :
                  ( ?? @ ( subst > term > term )
                  @ ^ [Y1: subst > term > term] :
                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f671]) ).

thf(f671,plain,
    ( ( ( !! @ ( subst > term > term )
        @ ^ [Y0: subst > term > term] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( lam @ ( Y0 @ sh @ one ) )
                     != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
     => ( ( !! @ ( subst > term > term )
          @ ^ [Y0: subst > term > term] :
              ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                            = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
         => ( ( !! @ ( subst > term > subst > $o )
              @ ^ [Y0: subst > term > subst > $o] :
                  ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( !! @ term
                                @ ^ [Y4: term] :
                                    ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                   => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( !! @ subst
                                  @ ^ [Y4: subst] :
                                      ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                     => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ ( sub @ Y1 @ id ) )
                           => ( Y0 @ id @ Y1 @ id ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
           => ( ( !! @ ( subst > term > subst > $o )
                @ ^ [Y0: subst > term > subst > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( !! @ subst
                                  @ ^ [Y4: subst] :
                                      ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                     => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( !! @ subst
                                    @ ^ [Y4: subst] :
                                        ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                       => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ id @ Y1 @ id )
                                 => ( ( Y0 @ id @ Y2 @ id )
                                   => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ id @ Y2 @ id )
                                 => ( ( Y0 @ id @ Y1 @ id )
                                   => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
             => ( !! @ term
                @ ^ [Y0: term] :
                    ( ?? @ ( subst > term > term )
                    @ ^ [Y1: subst > term > term] :
                        ( ( sub @ Y0 @ ( push @ one @ sh ) )
                        = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f658]) ).

thf(f658,plain,
    ( ( ( !! @ ( subst > term > term )
        @ ^ [Y0: subst > term > term] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
           => ( !! @ ( subst > term > term )
              @ ^ [Y1: subst > term > term] :
                  ( ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( !! @ subst
                            @ ^ [Y4: subst] :
                                ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                 => ( ( ( lam @ ( Y0 @ sh @ one ) )
                      = ( lam @ ( Y1 @ sh @ one ) ) )
                   => ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( ( Y0 @ Y3 @ Y2 )
                              = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
     => ( ( !! @ ( subst > term > term )
          @ ^ [Y0: subst > term > term] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( lam @ ( Y0 @ sh @ one ) )
                       != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
       => ( ( !! @ ( subst > term > term )
            @ ^ [Y0: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                              = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
           => ( ( !! @ ( subst > term > subst > $o )
                @ ^ [Y0: subst > term > subst > $o] :
                    ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( !! @ term
                                  @ ^ [Y4: term] :
                                      ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                     => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( !! @ subst
                                    @ ^ [Y4: subst] :
                                        ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                       => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ ( sub @ Y1 @ id ) )
                             => ( Y0 @ id @ Y1 @ id ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
             => ( ( !! @ ( subst > term > subst > $o )
                  @ ^ [Y0: subst > term > subst > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( !! @ subst
                                    @ ^ [Y4: subst] :
                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( !! @ subst
                                      @ ^ [Y4: subst] :
                                          ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                         => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ id @ Y1 @ id )
                                   => ( ( Y0 @ id @ Y2 @ id )
                                     => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ id @ Y2 @ id )
                                   => ( ( Y0 @ id @ Y1 @ id )
                                     => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
               => ( !! @ term
                  @ ^ [Y0: term] :
                      ( ?? @ ( subst > term > term )
                      @ ^ [Y1: subst > term > term] :
                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f656]) ).

thf(f656,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                          = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                       => ( Y3 = Y2 ) ) ) ) ) )
     => ( ( !! @ ( subst > term > term )
          @ ^ [Y0: subst > term > term] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
             => ( !! @ ( subst > term > term )
                @ ^ [Y1: subst > term > term] :
                    ( ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( !! @ subst
                              @ ^ [Y4: subst] :
                                  ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                  = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                   => ( ( ( lam @ ( Y0 @ sh @ one ) )
                        = ( lam @ ( Y1 @ sh @ one ) ) )
                     => ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( ( Y0 @ Y3 @ Y2 )
                                = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
       => ( ( !! @ ( subst > term > term )
            @ ^ [Y0: subst > term > term] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( lam @ ( Y0 @ sh @ one ) )
                         != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
         => ( ( !! @ ( subst > term > term )
              @ ^ [Y0: subst > term > term] :
                  ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
             => ( ( !! @ ( subst > term > subst > $o )
                  @ ^ [Y0: subst > term > subst > $o] :
                      ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( !! @ term
                                    @ ^ [Y4: term] :
                                        ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                       => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( !! @ subst
                                      @ ^ [Y4: subst] :
                                          ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                         => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ ( sub @ Y1 @ id ) )
                               => ( Y0 @ id @ Y1 @ id ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
               => ( ( !! @ ( subst > term > subst > $o )
                    @ ^ [Y0: subst > term > subst > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( !! @ subst
                                      @ ^ [Y4: subst] :
                                          ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                         => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                       => ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( !! @ subst
                                        @ ^ [Y4: subst] :
                                            ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                           => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ id @ Y1 @ id )
                                     => ( ( Y0 @ id @ Y2 @ id )
                                       => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ id @ Y2 @ id )
                                     => ( ( Y0 @ id @ Y1 @ id )
                                       => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                 => ( !! @ term
                    @ ^ [Y0: term] :
                        ( ?? @ ( subst > term > term )
                        @ ^ [Y1: subst > term > term] :
                            ( ( sub @ Y0 @ ( push @ one @ sh ) )
                            = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f642]) ).

thf(f642,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                          = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                       => ( Y3 = Y0 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                            = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                         => ( Y3 = Y2 ) ) ) ) ) )
       => ( ( !! @ ( subst > term > term )
            @ ^ [Y0: subst > term > term] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
               => ( !! @ ( subst > term > term )
                  @ ^ [Y1: subst > term > term] :
                      ( ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( !! @ subst
                                @ ^ [Y4: subst] :
                                    ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                    = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                     => ( ( ( lam @ ( Y0 @ sh @ one ) )
                          = ( lam @ ( Y1 @ sh @ one ) ) )
                       => ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( ( Y0 @ Y3 @ Y2 )
                                  = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
         => ( ( !! @ ( subst > term > term )
              @ ^ [Y0: subst > term > term] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( lam @ ( Y0 @ sh @ one ) )
                           != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
           => ( ( !! @ ( subst > term > term )
                @ ^ [Y0: subst > term > term] :
                    ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                  = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
               => ( ( !! @ ( subst > term > subst > $o )
                    @ ^ [Y0: subst > term > subst > $o] :
                        ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( !! @ term
                                      @ ^ [Y4: term] :
                                          ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                         => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                       => ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( !! @ subst
                                        @ ^ [Y4: subst] :
                                            ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                           => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ ( sub @ Y1 @ id ) )
                                 => ( Y0 @ id @ Y1 @ id ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > subst > $o )
                      @ ^ [Y0: subst > term > subst > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( !! @ subst
                                        @ ^ [Y4: subst] :
                                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                         => ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( !! @ subst
                                          @ ^ [Y4: subst] :
                                              ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                             => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ id @ Y1 @ id )
                                       => ( ( Y0 @ id @ Y2 @ id )
                                         => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ id @ Y2 @ id )
                                       => ( ( Y0 @ id @ Y1 @ id )
                                         => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                   => ( !! @ term
                      @ ^ [Y0: term] :
                          ( ?? @ ( subst > term > term )
                          @ ^ [Y1: subst > term > term] :
                              ( ( sub @ Y0 @ ( push @ one @ sh ) )
                              = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f640]) ).

thf(f640,plain,
    ( ( ( ( !! @ term
          @ ^ [Y0: term] :
              ( ( sub @ Y0 @ id )
              = Y0 ) )
        & ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                      = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                            = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                         => ( Y3 = Y0 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                              = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                           => ( Y3 = Y2 ) ) ) ) ) )
         => ( ( !! @ ( subst > term > term )
              @ ^ [Y0: subst > term > term] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                 => ( !! @ ( subst > term > term )
                    @ ^ [Y1: subst > term > term] :
                        ( ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( !! @ subst
                                  @ ^ [Y4: subst] :
                                      ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                      = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                       => ( ( ( lam @ ( Y0 @ sh @ one ) )
                            = ( lam @ ( Y1 @ sh @ one ) ) )
                         => ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( ( Y0 @ Y3 @ Y2 )
                                    = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
           => ( ( !! @ ( subst > term > term )
                @ ^ [Y0: subst > term > term] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( lam @ ( Y0 @ sh @ one ) )
                             != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
             => ( ( !! @ ( subst > term > term )
                  @ ^ [Y0: subst > term > term] :
                      ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                    = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                 => ( ( !! @ ( subst > term > subst > $o )
                      @ ^ [Y0: subst > term > subst > $o] :
                          ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( !! @ term
                                        @ ^ [Y4: term] :
                                            ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                           => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                         => ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( !! @ subst
                                          @ ^ [Y4: subst] :
                                              ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                             => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ ( sub @ Y1 @ id ) )
                                   => ( Y0 @ id @ Y1 @ id ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > subst > $o )
                        @ ^ [Y0: subst > term > subst > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( !! @ subst
                                          @ ^ [Y4: subst] :
                                              ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                             => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                           => ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( !! @ subst
                                            @ ^ [Y4: subst] :
                                                ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                               => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ id @ Y1 @ id )
                                         => ( ( Y0 @ id @ Y2 @ id )
                                           => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ id @ Y2 @ id )
                                         => ( ( Y0 @ id @ Y1 @ id )
                                           => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                     => ( !! @ term
                        @ ^ [Y0: term] :
                            ( ?? @ ( subst > term > term )
                            @ ^ [Y1: subst > term > term] :
                                ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f638]) ).

thf(f638,plain,
    ( $false
    = ( ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                      = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
        & ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ Y0 @ id )
              = Y0 ) )
        & ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ id @ Y0 )
              = Y0 ) ) )
     => ( ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sub @ Y0 @ id )
                = Y0 ) )
          & ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                        = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                              = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                           => ( Y3 = Y0 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                             => ( Y3 = Y2 ) ) ) ) ) )
           => ( ( !! @ ( subst > term > term )
                @ ^ [Y0: subst > term > term] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                   => ( !! @ ( subst > term > term )
                      @ ^ [Y1: subst > term > term] :
                          ( ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( !! @ subst
                                    @ ^ [Y4: subst] :
                                        ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                        = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                         => ( ( ( lam @ ( Y0 @ sh @ one ) )
                              = ( lam @ ( Y1 @ sh @ one ) ) )
                           => ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( ( Y0 @ Y3 @ Y2 )
                                      = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
             => ( ( !! @ ( subst > term > term )
                  @ ^ [Y0: subst > term > term] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( lam @ ( Y0 @ sh @ one ) )
                               != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
               => ( ( !! @ ( subst > term > term )
                    @ ^ [Y0: subst > term > term] :
                        ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                      = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                   => ( ( !! @ ( subst > term > subst > $o )
                        @ ^ [Y0: subst > term > subst > $o] :
                            ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( !! @ term
                                          @ ^ [Y4: term] :
                                              ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                             => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                           => ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( !! @ subst
                                            @ ^ [Y4: subst] :
                                                ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                               => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ ( sub @ Y1 @ id ) )
                                     => ( Y0 @ id @ Y1 @ id ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > subst > $o )
                          @ ^ [Y0: subst > term > subst > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( !! @ subst
                                            @ ^ [Y4: subst] :
                                                ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                               => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                             => ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( !! @ subst
                                              @ ^ [Y4: subst] :
                                                  ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                 => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ id @ Y1 @ id )
                                           => ( ( Y0 @ id @ Y2 @ id )
                                             => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ id @ Y2 @ id )
                                           => ( ( Y0 @ id @ Y1 @ id )
                                             => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                       => ( !! @ term
                          @ ^ [Y0: term] :
                              ( ?? @ ( subst > term > term )
                              @ ^ [Y1: subst > term > term] :
                                  ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                  = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f571]) ).

thf(f571,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( ( Y0 @ Y1 )
                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                     => ( Y0 @ ( lam @ Y1 ) ) ) )
               => ( !! @ term @ Y0 ) ) ) ) )
     => ( ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                        = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
          & ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ Y0 @ id )
                = Y0 ) )
          & ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ id @ Y0 )
                = Y0 ) ) )
       => ( ( ( !! @ term
              @ ^ [Y0: term] :
                  ( ( sub @ Y0 @ id )
                  = Y0 ) )
            & ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                          = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                             => ( Y3 = Y0 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                  = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                               => ( Y3 = Y2 ) ) ) ) ) )
             => ( ( !! @ ( subst > term > term )
                  @ ^ [Y0: subst > term > term] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                     => ( !! @ ( subst > term > term )
                        @ ^ [Y1: subst > term > term] :
                            ( ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( !! @ subst
                                      @ ^ [Y4: subst] :
                                          ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                          = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                           => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                = ( lam @ ( Y1 @ sh @ one ) ) )
                             => ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( ( Y0 @ Y3 @ Y2 )
                                        = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
               => ( ( !! @ ( subst > term > term )
                    @ ^ [Y0: subst > term > term] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( lam @ ( Y0 @ sh @ one ) )
                                 != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > term )
                      @ ^ [Y0: subst > term > term] :
                          ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                        = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                     => ( ( !! @ ( subst > term > subst > $o )
                          @ ^ [Y0: subst > term > subst > $o] :
                              ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( !! @ term
                                            @ ^ [Y4: term] :
                                                ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                               => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                             => ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( !! @ subst
                                              @ ^ [Y4: subst] :
                                                  ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                 => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ ( sub @ Y1 @ id ) )
                                       => ( Y0 @ id @ Y1 @ id ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > subst > $o )
                            @ ^ [Y0: subst > term > subst > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( !! @ subst
                                              @ ^ [Y4: subst] :
                                                  ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                 => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                               => ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( !! @ subst
                                                @ ^ [Y4: subst] :
                                                    ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                   => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ id @ Y1 @ id )
                                             => ( ( Y0 @ id @ Y2 @ id )
                                               => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ id @ Y2 @ id )
                                             => ( ( Y0 @ id @ Y1 @ id )
                                               => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                         => ( !! @ term
                            @ ^ [Y0: term] :
                                ( ?? @ ( subst > term > term )
                                @ ^ [Y1: subst > term > term] :
                                    ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                    = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f553]) ).

thf(f553,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y1 )
                     => ( ( Y0 @ Y2 )
                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( var @ Y3 )
                             => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                       => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ Y1 ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( ( Y0 @ Y1 )
                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                 => ( !! @ term @ Y0 ) ) ) ) )
       => ( ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                          = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
            & ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ Y0 @ id )
                  = Y0 ) )
            & ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ id @ Y0 )
                  = Y0 ) ) )
         => ( ( ( !! @ term
                @ ^ [Y0: term] :
                    ( ( sub @ Y0 @ id )
                    = Y0 ) )
              & ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                            = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                  = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                               => ( Y3 = Y0 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                    = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                 => ( Y3 = Y2 ) ) ) ) ) )
               => ( ( !! @ ( subst > term > term )
                    @ ^ [Y0: subst > term > term] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                       => ( !! @ ( subst > term > term )
                          @ ^ [Y1: subst > term > term] :
                              ( ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( !! @ subst
                                        @ ^ [Y4: subst] :
                                            ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                            = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                             => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                  = ( lam @ ( Y1 @ sh @ one ) ) )
                               => ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( ( Y0 @ Y3 @ Y2 )
                                          = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > term )
                      @ ^ [Y0: subst > term > term] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( lam @ ( Y0 @ sh @ one ) )
                                   != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > term )
                        @ ^ [Y0: subst > term > term] :
                            ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                          = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                       => ( ( !! @ ( subst > term > subst > $o )
                            @ ^ [Y0: subst > term > subst > $o] :
                                ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( !! @ term
                                              @ ^ [Y4: term] :
                                                  ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                 => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                               => ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( !! @ subst
                                                @ ^ [Y4: subst] :
                                                    ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                   => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ ( sub @ Y1 @ id ) )
                                         => ( Y0 @ id @ Y1 @ id ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > subst > $o )
                              @ ^ [Y0: subst > term > subst > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( !! @ subst
                                                @ ^ [Y4: subst] :
                                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                 => ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y4: subst] :
                                                      ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                     => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ id @ Y1 @ id )
                                               => ( ( Y0 @ id @ Y2 @ id )
                                                 => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ id @ Y2 @ id )
                                               => ( ( Y0 @ id @ Y1 @ id )
                                                 => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                           => ( !! @ term
                              @ ^ [Y0: term] :
                                  ( ?? @ ( subst > term > term )
                                  @ ^ [Y1: subst > term > term] :
                                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f551]) ).

thf(f551,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( var @ Y3 )
                         => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                   => ( ( Y0 @ Y2 )
                     => ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y1 )
                       => ( ( Y0 @ Y2 )
                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                     => ( Y0 @ ( lam @ Y1 ) ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( var @ Y3 )
                               => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                         => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ Y1 ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( ( Y0 @ Y1 )
                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                   => ( !! @ term @ Y0 ) ) ) ) )
         => ( ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                            = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
              & ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ Y0 @ id )
                    = Y0 ) )
              & ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ id @ Y0 )
                    = Y0 ) ) )
           => ( ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( ( sub @ Y0 @ id )
                      = Y0 ) )
                & ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                              = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                    = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                 => ( Y3 = Y0 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                      = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                   => ( Y3 = Y2 ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > term )
                      @ ^ [Y0: subst > term > term] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                         => ( !! @ ( subst > term > term )
                            @ ^ [Y1: subst > term > term] :
                                ( ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( !! @ subst
                                          @ ^ [Y4: subst] :
                                              ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                              = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                               => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                    = ( lam @ ( Y1 @ sh @ one ) ) )
                                 => ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( ( Y0 @ Y3 @ Y2 )
                                            = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > term )
                        @ ^ [Y0: subst > term > term] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( lam @ ( Y0 @ sh @ one ) )
                                     != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > term )
                          @ ^ [Y0: subst > term > term] :
                              ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                            = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                         => ( ( !! @ ( subst > term > subst > $o )
                              @ ^ [Y0: subst > term > subst > $o] :
                                  ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( !! @ term
                                                @ ^ [Y4: term] :
                                                    ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                   => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                 => ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y4: subst] :
                                                      ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                     => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ ( sub @ Y1 @ id ) )
                                           => ( Y0 @ id @ Y1 @ id ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > subst > $o )
                                @ ^ [Y0: subst > term > subst > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y4: subst] :
                                                      ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                     => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                   => ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y4: subst] :
                                                        ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                       => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ id @ Y1 @ id )
                                                 => ( ( Y0 @ id @ Y2 @ id )
                                                   => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ id @ Y2 @ id )
                                                 => ( ( Y0 @ id @ Y1 @ id )
                                                   => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                             => ( !! @ term
                                @ ^ [Y0: term] :
                                    ( ?? @ ( subst > term > term )
                                    @ ^ [Y1: subst > term > term] :
                                        ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                        = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f549]) ).

thf(f549,plain,
    ( $false
    = ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( ( Y0 @ Y1 )
                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( Y0 @ Y1 )
                     => ( Y0 @ ( lam @ Y1 ) ) ) )
               => ( !! @ term @ Y0 ) ) ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                     => ( ( Y0 @ Y2 )
                       => ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( var @ Y3 )
                             => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y1 )
                         => ( ( Y0 @ Y2 )
                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( var @ Y3 )
                                 => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                           => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ Y1 ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( ( Y0 @ Y1 )
                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                     => ( !! @ term @ Y0 ) ) ) ) )
           => ( ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                              = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                & ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ Y0 @ id )
                      = Y0 ) )
                & ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ id @ Y0 )
                      = Y0 ) ) )
             => ( ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( ( sub @ Y0 @ id )
                        = Y0 ) )
                  & ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                      = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                   => ( Y3 = Y0 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                        = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                     => ( Y3 = Y2 ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > term )
                        @ ^ [Y0: subst > term > term] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                           => ( !! @ ( subst > term > term )
                              @ ^ [Y1: subst > term > term] :
                                  ( ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( !! @ subst
                                            @ ^ [Y4: subst] :
                                                ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                 => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                      = ( lam @ ( Y1 @ sh @ one ) ) )
                                   => ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( ( Y0 @ Y3 @ Y2 )
                                              = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > term )
                          @ ^ [Y0: subst > term > term] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( lam @ ( Y0 @ sh @ one ) )
                                       != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > term )
                            @ ^ [Y0: subst > term > term] :
                                ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                              = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                           => ( ( !! @ ( subst > term > subst > $o )
                                @ ^ [Y0: subst > term > subst > $o] :
                                    ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y4: term] :
                                                      ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                     => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                   => ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y4: subst] :
                                                        ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                       => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ ( sub @ Y1 @ id ) )
                                             => ( Y0 @ id @ Y1 @ id ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > subst > $o )
                                  @ ^ [Y0: subst > term > subst > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y4: subst] :
                                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                     => ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y4: subst] :
                                                          ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                         => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ id @ Y1 @ id )
                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                     => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ id @ Y2 @ id )
                                                   => ( ( Y0 @ id @ Y1 @ id )
                                                     => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ?? @ ( subst > term > term )
                                      @ ^ [Y1: subst > term > term] :
                                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f542]) ).

thf(f542,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ~ ( var @ ( lam @ Y0 ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ Y1 ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( ( Y0 @ Y1 )
                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( Y0 @ Y1 )
                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                 => ( !! @ term @ Y0 ) ) ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( var @ Y3 )
                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                       => ( ( Y0 @ Y2 )
                         => ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( var @ Y3 )
                               => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y1 )
                           => ( ( Y0 @ Y2 )
                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( var @ Y3 )
                                   => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                             => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ Y1 ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                       => ( !! @ term @ Y0 ) ) ) ) )
             => ( ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                  & ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( comp @ Y0 @ id )
                        = Y0 ) )
                  & ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( comp @ id @ Y0 )
                        = Y0 ) ) )
               => ( ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( ( sub @ Y0 @ id )
                          = Y0 ) )
                    & ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                  = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                        = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                     => ( Y3 = Y0 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                          = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                       => ( Y3 = Y2 ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > term )
                          @ ^ [Y0: subst > term > term] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                             => ( !! @ ( subst > term > term )
                                @ ^ [Y1: subst > term > term] :
                                    ( ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( !! @ subst
                                              @ ^ [Y4: subst] :
                                                  ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                  = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                   => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                        = ( lam @ ( Y1 @ sh @ one ) ) )
                                     => ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( ( Y0 @ Y3 @ Y2 )
                                                = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > term )
                            @ ^ [Y0: subst > term > term] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( lam @ ( Y0 @ sh @ one ) )
                                         != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > term )
                              @ ^ [Y0: subst > term > term] :
                                  ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                             => ( ( !! @ ( subst > term > subst > $o )
                                  @ ^ [Y0: subst > term > subst > $o] :
                                      ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y4: term] :
                                                        ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                       => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                     => ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y4: subst] :
                                                          ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                         => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ ( sub @ Y1 @ id ) )
                                               => ( Y0 @ id @ Y1 @ id ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > subst > $o )
                                    @ ^ [Y0: subst > term > subst > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y4: subst] :
                                                          ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                         => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                       => ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y4: subst] :
                                                            ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                           => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ id @ Y1 @ id )
                                                     => ( ( Y0 @ id @ Y2 @ id )
                                                       => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                           => ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ id @ Y2 @ id )
                                                     => ( ( Y0 @ id @ Y1 @ id )
                                                       => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( ?? @ ( subst > term > term )
                                        @ ^ [Y1: subst > term > term] :
                                            ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                            = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f532]) ).

thf(f532,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ~ ( var @ ( lam @ Y0 ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ Y1 ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( ( Y0 @ Y1 )
                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( Y0 @ Y1 )
                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                   => ( !! @ term @ Y0 ) ) ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( var @ Y3 )
                               => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                         => ( ( Y0 @ Y2 )
                           => ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( var @ Y3 )
                                 => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y1 )
                             => ( ( Y0 @ Y2 )
                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( var @ Y3 )
                                     => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                               => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ Y1 ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                         => ( !! @ term @ Y0 ) ) ) ) )
               => ( ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                  = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                    & ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ Y0 @ id )
                          = Y0 ) )
                    & ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ id @ Y0 )
                          = Y0 ) ) )
                 => ( ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( ( sub @ Y0 @ id )
                            = Y0 ) )
                      & ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                    = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                          = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                       => ( Y3 = Y0 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                            = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                         => ( Y3 = Y2 ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > term )
                            @ ^ [Y0: subst > term > term] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                               => ( !! @ ( subst > term > term )
                                  @ ^ [Y1: subst > term > term] :
                                      ( ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( !! @ subst
                                                @ ^ [Y4: subst] :
                                                    ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                    = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                     => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                          = ( lam @ ( Y1 @ sh @ one ) ) )
                                       => ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( ( Y0 @ Y3 @ Y2 )
                                                  = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > term )
                              @ ^ [Y0: subst > term > term] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( lam @ ( Y0 @ sh @ one ) )
                                           != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > term )
                                @ ^ [Y0: subst > term > term] :
                                    ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                  = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                               => ( ( !! @ ( subst > term > subst > $o )
                                    @ ^ [Y0: subst > term > subst > $o] :
                                        ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y4: term] :
                                                          ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                         => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                       => ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y4: subst] :
                                                            ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                           => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( var @ ( sub @ Y1 @ id ) )
                                                 => ( Y0 @ id @ Y1 @ id ) ) )
                                           => ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( var @ Y1 )
                                                 => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > subst > $o )
                                      @ ^ [Y0: subst > term > subst > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y4: subst] :
                                                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                         => ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y4: subst] :
                                                              ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                             => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ id @ Y1 @ id )
                                                       => ( ( Y0 @ id @ Y2 @ id )
                                                         => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ id @ Y2 @ id )
                                                       => ( ( Y0 @ id @ Y1 @ id )
                                                         => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( ?? @ ( subst > term > term )
                                          @ ^ [Y1: subst > term > term] :
                                              ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                              = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f523]) ).

thf(f523,plain,
    ( $false
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( lam @ Y1 )
                   != ( ap @ Y0 @ Y2 ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ~ ( var @ ( lam @ Y0 ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ Y1 ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( ( Y0 @ Y1 )
                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( Y0 @ Y1 )
                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                     => ( !! @ term @ Y0 ) ) ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( var @ Y3 )
                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                           => ( ( Y0 @ Y2 )
                             => ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( var @ Y3 )
                                   => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y1 )
                               => ( ( Y0 @ Y2 )
                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( var @ Y3 )
                                       => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                 => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ Y1 ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                           => ( !! @ term @ Y0 ) ) ) ) )
                 => ( ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                    = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                      & ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( comp @ Y0 @ id )
                            = Y0 ) )
                      & ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( comp @ id @ Y0 )
                            = Y0 ) ) )
                   => ( ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( ( sub @ Y0 @ id )
                              = Y0 ) )
                        & ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                      = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                            = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                         => ( Y3 = Y0 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                              = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                           => ( Y3 = Y2 ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > term )
                              @ ^ [Y0: subst > term > term] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                 => ( !! @ ( subst > term > term )
                                    @ ^ [Y1: subst > term > term] :
                                        ( ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y4: subst] :
                                                      ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                      = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                       => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                            = ( lam @ ( Y1 @ sh @ one ) ) )
                                         => ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( ( Y0 @ Y3 @ Y2 )
                                                    = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > term )
                                @ ^ [Y0: subst > term > term] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( lam @ ( Y0 @ sh @ one ) )
                                             != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > term )
                                  @ ^ [Y0: subst > term > term] :
                                      ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                    = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                 => ( ( !! @ ( subst > term > subst > $o )
                                      @ ^ [Y0: subst > term > subst > $o] :
                                          ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y4: term] :
                                                            ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                           => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                         => ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y4: subst] :
                                                              ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                             => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ ( sub @ Y1 @ id ) )
                                                   => ( Y0 @ id @ Y1 @ id ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > subst > $o )
                                        @ ^ [Y0: subst > term > subst > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y4: subst] :
                                                              ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                             => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                           => ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y4: subst] :
                                                                ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                               => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ id @ Y1 @ id )
                                                         => ( ( Y0 @ id @ Y2 @ id )
                                                           => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ id @ Y2 @ id )
                                                         => ( ( Y0 @ id @ Y1 @ id )
                                                           => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( ?? @ ( subst > term > term )
                                            @ ^ [Y1: subst > term > term] :
                                                ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(binary_proxy_clausification,[],[f521]) ).

thf(f521,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( ( sub @ Y1 @ sh )
                  = ( sub @ Y0 @ sh ) )
               => ( Y1 = Y0 ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( lam @ Y1 )
                     != ( ap @ Y0 @ Y2 ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ~ ( var @ ( lam @ Y0 ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ Y1 ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( Y0 @ Y1 )
                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                       => ( !! @ term @ Y0 ) ) ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( var @ Y3 )
                                   => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                             => ( ( Y0 @ Y2 )
                               => ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( var @ Y3 )
                                     => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y1 )
                                 => ( ( Y0 @ Y2 )
                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( var @ Y3 )
                                         => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                   => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ Y1 ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                             => ( !! @ term @ Y0 ) ) ) ) )
                   => ( ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                      = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                        & ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ Y0 @ id )
                              = Y0 ) )
                        & ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ id @ Y0 )
                              = Y0 ) ) )
                     => ( ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( ( sub @ Y0 @ id )
                                = Y0 ) )
                          & ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                        = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                              = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                           => ( Y3 = Y0 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                             => ( Y3 = Y2 ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > term )
                                @ ^ [Y0: subst > term > term] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                   => ( !! @ ( subst > term > term )
                                      @ ^ [Y1: subst > term > term] :
                                          ( ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y4: subst] :
                                                        ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                        = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                         => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                              = ( lam @ ( Y1 @ sh @ one ) ) )
                                           => ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( ( Y0 @ Y3 @ Y2 )
                                                      = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > term )
                                  @ ^ [Y0: subst > term > term] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( lam @ ( Y0 @ sh @ one ) )
                                               != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > term )
                                    @ ^ [Y0: subst > term > term] :
                                        ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                      = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                   => ( ( !! @ ( subst > term > subst > $o )
                                        @ ^ [Y0: subst > term > subst > $o] :
                                            ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y4: term] :
                                                              ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                             => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                           => ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y4: subst] :
                                                                ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                               => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( var @ ( sub @ Y1 @ id ) )
                                                     => ( Y0 @ id @ Y1 @ id ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( var @ Y1 )
                                                     => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > subst > $o )
                                          @ ^ [Y0: subst > term > subst > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y4: subst] :
                                                                ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                               => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                             => ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y4: subst] :
                                                                  ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                 => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ id @ Y1 @ id )
                                                           => ( ( Y0 @ id @ Y2 @ id )
                                                             => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ id @ Y2 @ id )
                                                           => ( ( Y0 @ id @ Y1 @ id )
                                                             => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( ?? @ ( subst > term > term )
                                              @ ^ [Y1: subst > term > term] :
                                                  ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                  = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f519]) ).

thf(f519,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( ( lam @ Y1 )
                  = ( lam @ Y0 ) )
               => ( Y1 = Y0 ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( ( sub @ Y1 @ sh )
                    = ( sub @ Y0 @ sh ) )
                 => ( Y1 = Y0 ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( lam @ Y1 )
                       != ( ap @ Y0 @ Y2 ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ~ ( var @ ( lam @ Y0 ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ Y1 ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( Y0 @ Y1 )
                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                         => ( !! @ term @ Y0 ) ) ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( var @ Y3 )
                                     => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                               => ( ( Y0 @ Y2 )
                                 => ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( var @ Y3 )
                                       => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y1 )
                                   => ( ( Y0 @ Y2 )
                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( var @ Y3 )
                                           => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                     => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ Y1 ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                               => ( !! @ term @ Y0 ) ) ) ) )
                     => ( ( ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                        = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                          & ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( ( comp @ Y0 @ id )
                                = Y0 ) )
                          & ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( ( comp @ id @ Y0 )
                                = Y0 ) ) )
                       => ( ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( ( sub @ Y0 @ id )
                                  = Y0 ) )
                            & ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                          = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                             => ( Y3 = Y0 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                               => ( Y3 = Y2 ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > term )
                                  @ ^ [Y0: subst > term > term] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                     => ( !! @ ( subst > term > term )
                                        @ ^ [Y1: subst > term > term] :
                                            ( ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y4: subst] :
                                                          ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                          = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                           => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                = ( lam @ ( Y1 @ sh @ one ) ) )
                                             => ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( ( Y0 @ Y3 @ Y2 )
                                                        = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > term )
                                    @ ^ [Y0: subst > term > term] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( lam @ ( Y0 @ sh @ one ) )
                                                 != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > term )
                                      @ ^ [Y0: subst > term > term] :
                                          ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                        = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                     => ( ( !! @ ( subst > term > subst > $o )
                                          @ ^ [Y0: subst > term > subst > $o] :
                                              ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y4: term] :
                                                                ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                               => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                             => ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y4: subst] :
                                                                  ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                 => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( var @ ( sub @ Y1 @ id ) )
                                                       => ( Y0 @ id @ Y1 @ id ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( var @ Y1 )
                                                       => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > subst > $o )
                                            @ ^ [Y0: subst > term > subst > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y4: subst] :
                                                                  ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                 => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                               => ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y4: subst] :
                                                                    ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                   => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ id @ Y1 @ id )
                                                             => ( ( Y0 @ id @ Y2 @ id )
                                                               => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ id @ Y2 @ id )
                                                             => ( ( Y0 @ id @ Y1 @ id )
                                                               => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( ?? @ ( subst > term > term )
                                                @ ^ [Y1: subst > term > term] :
                                                    ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                    = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f517]) ).

thf(f517,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ Y0 @ Y2 )
                          = ( ap @ Y3 @ Y1 ) )
                       => ( Y2 = Y1 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( ( lam @ Y1 )
                    = ( lam @ Y0 ) )
                 => ( Y1 = Y0 ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( ( ( sub @ Y1 @ sh )
                      = ( sub @ Y0 @ sh ) )
                   => ( Y1 = Y0 ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( lam @ Y1 )
                         != ( ap @ Y0 @ Y2 ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ~ ( var @ ( lam @ Y0 ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ Y1 ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                           => ( !! @ term @ Y0 ) ) ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( var @ Y3 )
                                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                 => ( ( Y0 @ Y2 )
                                   => ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( var @ Y3 )
                                         => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y1 )
                                     => ( ( Y0 @ Y2 )
                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( var @ Y3 )
                                             => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                       => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ Y1 ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                 => ( !! @ term @ Y0 ) ) ) ) )
                       => ( ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                          = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                            & ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( comp @ Y0 @ id )
                                  = Y0 ) )
                            & ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( comp @ id @ Y0 )
                                  = Y0 ) ) )
                         => ( ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( ( sub @ Y0 @ id )
                                    = Y0 ) )
                              & ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                            = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                  = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                               => ( Y3 = Y0 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                 => ( Y3 = Y2 ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > term )
                                    @ ^ [Y0: subst > term > term] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                       => ( !! @ ( subst > term > term )
                                          @ ^ [Y1: subst > term > term] :
                                              ( ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y4: subst] :
                                                            ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                            = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                             => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                  = ( lam @ ( Y1 @ sh @ one ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( ( Y0 @ Y3 @ Y2 )
                                                          = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > term )
                                      @ ^ [Y0: subst > term > term] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( lam @ ( Y0 @ sh @ one ) )
                                                   != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > term )
                                        @ ^ [Y0: subst > term > term] :
                                            ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                          = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                       => ( ( !! @ ( subst > term > subst > $o )
                                            @ ^ [Y0: subst > term > subst > $o] :
                                                ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y4: term] :
                                                                  ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                 => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                               => ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y4: subst] :
                                                                    ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                   => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( var @ ( sub @ Y1 @ id ) )
                                                         => ( Y0 @ id @ Y1 @ id ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( var @ Y1 )
                                                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > subst > $o )
                                              @ ^ [Y0: subst > term > subst > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y4: subst] :
                                                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                 => ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y4: subst] :
                                                                      ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                     => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ id @ Y1 @ id )
                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                 => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ id @ Y2 @ id )
                                                               => ( ( Y0 @ id @ Y1 @ id )
                                                                 => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                           => ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( ?? @ ( subst > term > term )
                                                  @ ^ [Y1: subst > term > term] :
                                                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f515]) ).

thf(f515,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ Y1 @ Y2 )
                          = ( ap @ Y0 @ Y3 ) )
                       => ( Y1 = Y0 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ Y0 @ Y2 )
                            = ( ap @ Y3 @ Y1 ) )
                         => ( Y2 = Y1 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( ( ( lam @ Y1 )
                      = ( lam @ Y0 ) )
                   => ( Y1 = Y0 ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( ( sub @ Y1 @ sh )
                        = ( sub @ Y0 @ sh ) )
                     => ( Y1 = Y0 ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( lam @ Y1 )
                           != ( ap @ Y0 @ Y2 ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ~ ( var @ ( lam @ Y0 ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ Y1 ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                             => ( !! @ term @ Y0 ) ) ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( var @ Y3 )
                                         => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                   => ( ( Y0 @ Y2 )
                                     => ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( var @ Y3 )
                                           => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y1 )
                                       => ( ( Y0 @ Y2 )
                                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( var @ Y3 )
                                               => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                         => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ Y1 ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                   => ( !! @ term @ Y0 ) ) ) ) )
                         => ( ( ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                            = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                              & ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( ( comp @ Y0 @ id )
                                    = Y0 ) )
                              & ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( ( comp @ id @ Y0 )
                                    = Y0 ) ) )
                           => ( ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ( sub @ Y0 @ id )
                                      = Y0 ) )
                                & ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                              = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                    = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                 => ( Y3 = Y0 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                      = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                   => ( Y3 = Y2 ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > term )
                                      @ ^ [Y0: subst > term > term] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                         => ( !! @ ( subst > term > term )
                                            @ ^ [Y1: subst > term > term] :
                                                ( ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y4: subst] :
                                                              ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                              = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                               => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                    = ( lam @ ( Y1 @ sh @ one ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( ( Y0 @ Y3 @ Y2 )
                                                            = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > term )
                                        @ ^ [Y0: subst > term > term] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                           => ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( lam @ ( Y0 @ sh @ one ) )
                                                     != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > term )
                                          @ ^ [Y0: subst > term > term] :
                                              ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                            = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                         => ( ( !! @ ( subst > term > subst > $o )
                                              @ ^ [Y0: subst > term > subst > $o] :
                                                  ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y4: term] :
                                                                    ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                   => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                 => ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y4: subst] :
                                                                      ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                     => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( var @ ( sub @ Y1 @ id ) )
                                                           => ( Y0 @ id @ Y1 @ id ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( var @ Y1 )
                                                           => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > subst > $o )
                                                @ ^ [Y0: subst > term > subst > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y4: subst] :
                                                                      ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                     => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                   => ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y4: subst] :
                                                                        ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                       => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ id @ Y1 @ id )
                                                                 => ( ( Y0 @ id @ Y2 @ id )
                                                                   => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ id @ Y2 @ id )
                                                                 => ( ( Y0 @ id @ Y1 @ id )
                                                                   => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( ?? @ ( subst > term > term )
                                                    @ ^ [Y1: subst > term > term] :
                                                        ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                        = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f510]) ).

thf(f510,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( Y0 @ one )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( ( Y0 @ Y1 )
                     => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ Y1 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ Y1 @ Y2 )
                            = ( ap @ Y0 @ Y3 ) )
                         => ( Y1 = Y0 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ Y0 @ Y2 )
                              = ( ap @ Y3 @ Y1 ) )
                           => ( Y2 = Y1 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( ( lam @ Y1 )
                        = ( lam @ Y0 ) )
                     => ( Y1 = Y0 ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( ( sub @ Y1 @ sh )
                          = ( sub @ Y0 @ sh ) )
                       => ( Y1 = Y0 ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( lam @ Y1 )
                             != ( ap @ Y0 @ Y2 ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ~ ( var @ ( lam @ Y0 ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ Y1 ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                               => ( !! @ term @ Y0 ) ) ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( var @ Y3 )
                                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                     => ( ( Y0 @ Y2 )
                                       => ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( var @ Y3 )
                                             => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y1 )
                                         => ( ( Y0 @ Y2 )
                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( var @ Y3 )
                                                 => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                           => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ Y1 ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                     => ( !! @ term @ Y0 ) ) ) ) )
                           => ( ( ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                              = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                & ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( ( comp @ Y0 @ id )
                                      = Y0 ) )
                                & ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( ( comp @ id @ Y0 )
                                      = Y0 ) ) )
                             => ( ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( ( sub @ Y0 @ id )
                                        = Y0 ) )
                                  & ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                      = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                   => ( Y3 = Y0 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                        = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                     => ( Y3 = Y2 ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > term )
                                        @ ^ [Y0: subst > term > term] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                           => ( !! @ ( subst > term > term )
                                              @ ^ [Y1: subst > term > term] :
                                                  ( ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y4: subst] :
                                                                ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                 => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                      = ( lam @ ( Y1 @ sh @ one ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( ( Y0 @ Y3 @ Y2 )
                                                              = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > term )
                                          @ ^ [Y0: subst > term > term] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( lam @ ( Y0 @ sh @ one ) )
                                                       != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > term )
                                            @ ^ [Y0: subst > term > term] :
                                                ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                              = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                           => ( ( !! @ ( subst > term > subst > $o )
                                                @ ^ [Y0: subst > term > subst > $o] :
                                                    ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y4: term] :
                                                                      ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                     => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                   => ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y4: subst] :
                                                                        ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                       => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ ( sub @ Y1 @ id ) )
                                                             => ( Y0 @ id @ Y1 @ id ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > subst > $o )
                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y4: subst] :
                                                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                     => ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y4: subst] :
                                                                          ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                         => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                     => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ id @ Y2 @ id )
                                                                   => ( ( Y0 @ id @ Y1 @ id )
                                                                     => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( ?? @ ( subst > term > term )
                                                      @ ^ [Y1: subst > term > term] :
                                                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f508]) ).

thf(f508,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( ( var @ Y0 )
           => ( var @ ( sub @ Y0 @ sh ) ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( Y0 @ one )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ Y1 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ Y1 @ Y2 )
                              = ( ap @ Y0 @ Y3 ) )
                           => ( Y1 = Y0 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ Y0 @ Y2 )
                                = ( ap @ Y3 @ Y1 ) )
                             => ( Y2 = Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( ( lam @ Y1 )
                          = ( lam @ Y0 ) )
                       => ( Y1 = Y0 ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( ( sub @ Y1 @ sh )
                            = ( sub @ Y0 @ sh ) )
                         => ( Y1 = Y0 ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( lam @ Y1 )
                               != ( ap @ Y0 @ Y2 ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ~ ( var @ ( lam @ Y0 ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ Y1 ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                 => ( !! @ term @ Y0 ) ) ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( var @ Y3 )
                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                       => ( ( Y0 @ Y2 )
                                         => ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( var @ Y3 )
                                               => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y1 )
                                           => ( ( Y0 @ Y2 )
                                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( var @ Y3 )
                                                   => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                             => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ Y1 ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                       => ( !! @ term @ Y0 ) ) ) ) )
                             => ( ( ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                  & ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( ( comp @ Y0 @ id )
                                        = Y0 ) )
                                  & ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( ( comp @ id @ Y0 )
                                        = Y0 ) ) )
                               => ( ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( ( sub @ Y0 @ id )
                                          = Y0 ) )
                                    & ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                  = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                        = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                     => ( Y3 = Y0 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                          = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                       => ( Y3 = Y2 ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > term )
                                          @ ^ [Y0: subst > term > term] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                             => ( !! @ ( subst > term > term )
                                                @ ^ [Y1: subst > term > term] :
                                                    ( ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y4: subst] :
                                                                  ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                  = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                   => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                        = ( lam @ ( Y1 @ sh @ one ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( ( Y0 @ Y3 @ Y2 )
                                                                = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > term )
                                            @ ^ [Y0: subst > term > term] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( lam @ ( Y0 @ sh @ one ) )
                                                         != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > term )
                                              @ ^ [Y0: subst > term > term] :
                                                  ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                             => ( ( !! @ ( subst > term > subst > $o )
                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                      ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y4: term] :
                                                                        ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                       => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                     => ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y4: subst] :
                                                                          ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                         => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( var @ ( sub @ Y1 @ id ) )
                                                               => ( Y0 @ id @ Y1 @ id ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( var @ Y1 )
                                                               => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > subst > $o )
                                                    @ ^ [Y0: subst > term > subst > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y4: subst] :
                                                                          ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                         => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                       => ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y4: subst] :
                                                                            ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                           => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ id @ Y1 @ id )
                                                                     => ( ( Y0 @ id @ Y2 @ id )
                                                                       => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ id @ Y2 @ id )
                                                                     => ( ( Y0 @ id @ Y1 @ id )
                                                                       => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( ?? @ ( subst > term > term )
                                                        @ ^ [Y1: subst > term > term] :
                                                            ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                            = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f503]) ).

thf(f503,plain,
    ( ( ( var @ one )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( ( var @ Y0 )
             => ( var @ ( sub @ Y0 @ sh ) ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( Y0 @ one )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( ( Y0 @ Y1 )
                         => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ Y1 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ Y1 @ Y2 )
                                = ( ap @ Y0 @ Y3 ) )
                             => ( Y1 = Y0 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ Y0 @ Y2 )
                                  = ( ap @ Y3 @ Y1 ) )
                               => ( Y2 = Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( ( lam @ Y1 )
                            = ( lam @ Y0 ) )
                         => ( Y1 = Y0 ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( ( sub @ Y1 @ sh )
                              = ( sub @ Y0 @ sh ) )
                           => ( Y1 = Y0 ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( lam @ Y1 )
                                 != ( ap @ Y0 @ Y2 ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ~ ( var @ ( lam @ Y0 ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ Y1 ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                   => ( !! @ term @ Y0 ) ) ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( var @ Y3 )
                                               => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                         => ( ( Y0 @ Y2 )
                                           => ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( var @ Y3 )
                                                 => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y1 )
                                             => ( ( Y0 @ Y2 )
                                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( var @ Y3 )
                                                     => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                               => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ Y1 ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( ( Y0 @ Y1 )
                                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                         => ( !! @ term @ Y0 ) ) ) ) )
                               => ( ( ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                  = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                    & ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( ( comp @ Y0 @ id )
                                          = Y0 ) )
                                    & ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( ( comp @ id @ Y0 )
                                          = Y0 ) ) )
                                 => ( ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( ( sub @ Y0 @ id )
                                            = Y0 ) )
                                      & ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                    = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                          = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                       => ( Y3 = Y0 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                            = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                         => ( Y3 = Y2 ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > term )
                                            @ ^ [Y0: subst > term > term] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                               => ( !! @ ( subst > term > term )
                                                  @ ^ [Y1: subst > term > term] :
                                                      ( ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y4: subst] :
                                                                    ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                    = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                     => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                          = ( lam @ ( Y1 @ sh @ one ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( ( Y0 @ Y3 @ Y2 )
                                                                  = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > term )
                                              @ ^ [Y0: subst > term > term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( lam @ ( Y0 @ sh @ one ) )
                                                           != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > term )
                                                @ ^ [Y0: subst > term > term] :
                                                    ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                  = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                               => ( ( !! @ ( subst > term > subst > $o )
                                                    @ ^ [Y0: subst > term > subst > $o] :
                                                        ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y4: term] :
                                                                          ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                         => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                       => ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y4: subst] :
                                                                            ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                           => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ ( sub @ Y1 @ id ) )
                                                                 => ( Y0 @ id @ Y1 @ id ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ Y1 )
                                                                 => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > subst > $o )
                                                      @ ^ [Y0: subst > term > subst > $o] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y4: subst] :
                                                                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                         => ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y4: subst] :
                                                                              ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                             => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ id @ Y1 @ id )
                                                                       => ( ( Y0 @ id @ Y2 @ id )
                                                                         => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ id @ Y2 @ id )
                                                                       => ( ( Y0 @ id @ Y1 @ id )
                                                                         => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( ?? @ ( subst > term > term )
                                                          @ ^ [Y1: subst > term > term] :
                                                              ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                              = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f500]) ).

thf(f500,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
            = Y0 ) )
     => ( ( var @ one )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( var @ Y0 )
               => ( var @ ( sub @ Y0 @ sh ) ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( Y0 @ one )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( ( Y0 @ Y1 )
                           => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ Y1 @ Y2 )
                                  = ( ap @ Y0 @ Y3 ) )
                               => ( Y1 = Y0 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ Y0 @ Y2 )
                                    = ( ap @ Y3 @ Y1 ) )
                                 => ( Y2 = Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( ( lam @ Y1 )
                              = ( lam @ Y0 ) )
                           => ( Y1 = Y0 ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( ( sub @ Y1 @ sh )
                                = ( sub @ Y0 @ sh ) )
                             => ( Y1 = Y0 ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( lam @ Y1 )
                                   != ( ap @ Y0 @ Y2 ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ~ ( var @ ( lam @ Y0 ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ Y1 ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                     => ( !! @ term @ Y0 ) ) ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( var @ Y3 )
                                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                           => ( ( Y0 @ Y2 )
                                             => ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( var @ Y3 )
                                                   => ( Y0 @ ( sub @ Y3 @ ( push @ Y2 @ Y1 ) ) ) ) ) ) ) ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y1 )
                                               => ( ( Y0 @ Y2 )
                                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( var @ Y3 )
                                                       => ( Y0 @ ( sub @ Y3 @ Y2 ) ) ) )
                                                 => ( Y0 @ ( sub @ Y1 @ Y2 ) ) ) ) ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ Y1 ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                           => ( !! @ term @ Y0 ) ) ) ) )
                                 => ( ( ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( ( comp @ ( comp @ Y0 @ Y1 ) @ Y2 )
                                                    = ( comp @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) )
                                      & ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( ( comp @ Y0 @ id )
                                            = Y0 ) )
                                      & ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( ( comp @ id @ Y0 )
                                            = Y0 ) ) )
                                   => ( ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( ( sub @ Y0 @ id )
                                              = Y0 ) )
                                        & ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 )
                                                      = ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( ( ap @ ( sub @ Y0 @ id ) @ Y2 )
                                                            = ( ap @ ( sub @ Y3 @ id ) @ Y1 ) )
                                                         => ( Y3 = Y0 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( ( ap @ ( sub @ Y1 @ id ) @ Y3 )
                                                              = ( ap @ ( sub @ Y0 @ id ) @ Y2 ) )
                                                           => ( Y3 = Y2 ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > term )
                                              @ ^ [Y0: subst > term > term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                 => ( !! @ ( subst > term > term )
                                                    @ ^ [Y1: subst > term > term] :
                                                        ( ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y4: subst] :
                                                                      ( ( Y1 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y3 @ Y4 ) )
                                                                      = ( sub @ ( Y1 @ Y2 @ Y3 ) @ Y4 ) ) ) ) )
                                                       => ( ( ( lam @ ( Y0 @ sh @ one ) )
                                                            = ( lam @ ( Y1 @ sh @ one ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( ( Y0 @ Y3 @ Y2 )
                                                                    = ( Y1 @ Y3 @ Y2 ) ) ) ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > term )
                                                @ ^ [Y0: subst > term > term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( lam @ ( Y0 @ sh @ one ) )
                                                             != ( ap @ ( sub @ Y1 @ id ) @ Y2 ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > term )
                                                  @ ^ [Y0: subst > term > term] :
                                                      ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( sub @ ( Y0 @ Y1 @ Y3 ) @ Y2 )
                                                                    = ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) ) ) ) ) )
                                                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y1 @ id ) @ Y0 ) @ id ) ) ) )
                                                 => ( ( !! @ ( subst > term > subst > $o )
                                                      @ ^ [Y0: subst > term > subst > $o] :
                                                          ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y4: term] :
                                                                            ( ( Y0 @ Y3 @ Y4 @ ( comp @ Y1 @ Y2 ) )
                                                                           => ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y4 @ Y1 ) @ Y2 ) ) ) ) ) )
                                                         => ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y4: subst] :
                                                                              ( ( Y0 @ ( comp @ Y1 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y4 )
                                                                             => ( Y0 @ Y1 @ Y3 @ ( comp @ Y2 @ Y4 ) ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ ( sub @ Y1 @ id ) )
                                                                   => ( Y0 @ id @ Y1 @ id ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ Y1 )
                                                                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > subst > $o )
                                                        @ ^ [Y0: subst > term > subst > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y4: subst] :
                                                                              ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                             => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                           => ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y4: subst] :
                                                                                ( ( Y0 @ ( comp @ Y4 @ Y3 ) @ ( sub @ Y2 @ Y3 ) @ Y1 )
                                                                               => ( Y0 @ Y4 @ Y2 @ ( comp @ Y3 @ Y1 ) ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ id @ Y1 @ id )
                                                                         => ( ( Y0 @ id @ Y2 @ id )
                                                                           => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ id @ Y2 @ id )
                                                                         => ( ( Y0 @ id @ Y1 @ id )
                                                                           => ( Y0 @ id @ ( ap @ Y2 @ Y1 ) @ id ) ) ) ) ) ) ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( ?? @ ( subst > term > term )
                                                            @ ^ [Y1: subst > term > term] :
                                                                ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f498]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.10/0.12  % Problem    : ALG267^1 : TPTP v8.2.0. Bugfixed v5.2.0.
% 0.10/0.14  % Command    : vampire --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule file --schedule_file /export/starexec/sandbox/solver/bin/quickGreedyProduceRating_steal_pow3.txt --cores 8 -m 12000 -t %d %s
% 0.15/0.35  % Computer : n021.cluster.edu
% 0.15/0.35  % Model    : x86_64 x86_64
% 0.15/0.35  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.15/0.35  % Memory   : 8042.1875MB
% 0.15/0.35  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.15/0.35  % CPULimit   : 300
% 0.15/0.35  % WCLimit    : 300
% 0.15/0.35  % DateTime   : Sat May 18 23:33:23 EDT 2024
% 0.15/0.35  % CPUTime    : 
% 0.15/0.35  This is a TH0_THM_EQU_NAR problem
% 0.15/0.36  Running vampire_ho --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule snake_tptp_hol --cores 8 -m 12000 -t 300 /export/starexec/sandbox/benchmark/theBenchmark.p
% 0.15/0.39  % (9143)lrs+1002_1:1_au=on:bd=off:e2e=on:sd=2:sos=on:ss=axioms:i=275:si=on:rtra=on_0 on theBenchmark for (2999ds/275Mi)
% 0.15/0.39  % (9139)lrs+10_1:1_c=on:cnfonf=conj_eager:fd=off:fe=off:kws=frequency:spb=intro:i=4:si=on:rtra=on_0 on theBenchmark for (2999ds/4Mi)
% 0.15/0.39  % (9144)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on theBenchmark for (2999ds/18Mi)
% 0.15/0.39  % (9138)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on theBenchmark for (2999ds/183Mi)
% 0.15/0.39  % (9145)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on theBenchmark for (2999ds/3Mi)
% 0.15/0.39  % (9139)Instruction limit reached!
% 0.15/0.39  % (9139)------------------------------
% 0.15/0.39  % (9139)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.39  % (9139)Termination reason: Unknown
% 0.15/0.39  % (9139)Termination phase: shuffling
% 0.15/0.39  
% 0.15/0.39  % (9139)Memory used [KB]: 1279
% 0.15/0.39  % (9139)Time elapsed: 0.004 s
% 0.15/0.39  % (9139)Instructions burned: 4 (million)
% 0.15/0.39  % (9139)------------------------------
% 0.15/0.39  % (9139)------------------------------
% 0.15/0.39  % (9145)Instruction limit reached!
% 0.15/0.39  % (9145)------------------------------
% 0.15/0.39  % (9145)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.39  % (9145)Termination reason: Unknown
% 0.15/0.39  % (9145)Termination phase: shuffling
% 0.15/0.39  
% 0.15/0.39  % (9145)Memory used [KB]: 1279
% 0.15/0.39  % (9145)Time elapsed: 0.004 s
% 0.15/0.39  % (9145)Instructions burned: 3 (million)
% 0.15/0.39  % (9142)lrs+1002_1:128_aac=none:au=on:cnfonf=lazy_not_gen_be_off:sos=all:i=2:si=on:rtra=on_0 on theBenchmark for (2999ds/2Mi)
% 0.15/0.39  % (9145)------------------------------
% 0.15/0.39  % (9145)------------------------------
% 0.15/0.39  % (9142)Instruction limit reached!
% 0.15/0.39  % (9142)------------------------------
% 0.15/0.39  % (9142)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.39  % (9142)Termination reason: Unknown
% 0.15/0.39  % (9142)Termination phase: shuffling
% 0.15/0.39  
% 0.15/0.39  % (9142)Memory used [KB]: 1279
% 0.15/0.39  % (9142)Time elapsed: 0.005 s
% 0.15/0.39  % (9142)Instructions burned: 2 (million)
% 0.15/0.39  % (9142)------------------------------
% 0.15/0.39  % (9142)------------------------------
% 0.15/0.39  % (9140)dis+1010_1:1_au=on:cbe=off:chr=on:fsr=off:hfsq=on:nm=64:sos=theory:sp=weighted_frequency:i=27:si=on:rtra=on_0 on theBenchmark for (2999ds/27Mi)
% 0.15/0.39  % (9141)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on theBenchmark for (2999ds/2Mi)
% 0.15/0.39  % (9141)Instruction limit reached!
% 0.15/0.39  % (9141)------------------------------
% 0.15/0.39  % (9141)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.39  % (9141)Termination reason: Unknown
% 0.15/0.39  % (9141)Termination phase: shuffling
% 0.15/0.39  
% 0.15/0.39  % (9141)Memory used [KB]: 1279
% 0.15/0.39  % (9141)Time elapsed: 0.003 s
% 0.15/0.39  % (9141)Instructions burned: 3 (million)
% 0.15/0.39  % (9141)------------------------------
% 0.15/0.39  % (9141)------------------------------
% 0.15/0.40  % (9144)Instruction limit reached!
% 0.15/0.40  % (9144)------------------------------
% 0.15/0.40  % (9144)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.40  % (9144)Termination reason: Unknown
% 0.15/0.40  % (9144)Termination phase: Property scanning
% 0.15/0.40  
% 0.15/0.40  % (9144)Memory used [KB]: 1663
% 0.15/0.40  % (9144)Time elapsed: 0.013 s
% 0.15/0.40  % (9144)Instructions burned: 18 (million)
% 0.15/0.40  % (9144)------------------------------
% 0.15/0.40  % (9144)------------------------------
% 0.15/0.40  % (9140)Instruction limit reached!
% 0.15/0.40  % (9140)------------------------------
% 0.15/0.40  % (9140)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.40  % (9140)Termination reason: Unknown
% 0.15/0.40  % (9140)Termination phase: Property scanning
% 0.15/0.40  
% 0.15/0.40  % (9140)Memory used [KB]: 1791
% 0.15/0.40  % (9140)Time elapsed: 0.016 s
% 0.15/0.40  % (9140)Instructions burned: 27 (million)
% 0.15/0.40  % (9140)------------------------------
% 0.15/0.40  % (9140)------------------------------
% 0.15/0.40  % (9146)lrs+1002_1:1_cnfonf=lazy_not_be_gen:hud=14:prag=on:sp=weighted_frequency:tnu=1:i=37:si=on:rtra=on_0 on theBenchmark for (2999ds/37Mi)
% 0.15/0.40  % (9148)dis+21_1:1_cbe=off:cnfonf=off:fs=off:fsr=off:hud=1:inj=on:i=3:si=on:rtra=on_0 on theBenchmark for (2999ds/3Mi)
% 0.15/0.41  % (9148)Instruction limit reached!
% 0.15/0.41  % (9148)------------------------------
% 0.15/0.41  % (9148)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.41  % (9148)Termination reason: Unknown
% 0.15/0.41  % (9148)Termination phase: shuffling
% 0.15/0.41  
% 0.15/0.41  % (9148)Memory used [KB]: 1279
% 0.15/0.41  % (9148)Time elapsed: 0.004 s
% 0.15/0.41  % (9148)Instructions burned: 3 (million)
% 0.15/0.41  % (9148)------------------------------
% 0.15/0.41  % (9148)------------------------------
% 0.15/0.41  % (9143)Refutation not found, incomplete strategy
% 0.15/0.41  % (9143)------------------------------
% 0.15/0.41  % (9143)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.41  % (9143)Termination reason: Refutation not found, incomplete strategy
% 0.15/0.41  
% 0.15/0.41  
% 0.15/0.41  % (9143)Memory used [KB]: 6268
% 0.15/0.41  % (9143)Time elapsed: 0.024 s
% 0.15/0.41  % (9143)Instructions burned: 36 (million)
% 0.15/0.41  % (9143)------------------------------
% 0.15/0.41  % (9143)------------------------------
% 0.15/0.41  % (9147)lrs+2_16:1_acc=model:au=on:bd=off:c=on:e2e=on:nm=2:sos=all:i=15:si=on:rtra=on_0 on theBenchmark for (2999ds/15Mi)
% 0.15/0.41  % (9149)lrs+1002_1:1_aac=none:au=on:cnfonf=lazy_gen:plsq=on:plsqc=1:plsqr=4203469,65536:i=1041:si=on:rtra=on_0 on theBenchmark for (2999ds/1041Mi)
% 0.15/0.41  % (9150)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on theBenchmark for (2999ds/7Mi)
% 0.22/0.41  % (9150)Instruction limit reached!
% 0.22/0.41  % (9150)------------------------------
% 0.22/0.41  % (9150)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.42  % (9150)Termination reason: Unknown
% 0.22/0.42  % (9150)Termination phase: shuffling
% 0.22/0.42  
% 0.22/0.42  % (9150)Memory used [KB]: 1407
% 0.22/0.42  % (9150)Time elapsed: 0.006 s
% 0.22/0.42  % (9150)Instructions burned: 7 (million)
% 0.22/0.42  % (9150)------------------------------
% 0.22/0.42  % (9150)------------------------------
% 0.22/0.42  % (9147)Instruction limit reached!
% 0.22/0.42  % (9147)------------------------------
% 0.22/0.42  % (9147)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.42  % (9147)Termination reason: Unknown
% 0.22/0.42  % (9147)Termination phase: Property scanning
% 0.22/0.42  
% 0.22/0.42  % (9147)Memory used [KB]: 1663
% 0.22/0.42  % (9147)Time elapsed: 0.012 s
% 0.22/0.42  % (9147)Instructions burned: 16 (million)
% 0.22/0.42  % (9147)------------------------------
% 0.22/0.42  % (9147)------------------------------
% 0.22/0.42  % (9151)lrs+10_1:1_acc=on:amm=sco:cs=on:tgt=full:i=16:si=on:rtra=on_0 on theBenchmark for (2999ds/16Mi)
% 0.22/0.42  % (9152)lrs+21_1:1_au=on:cnfonf=off:fd=preordered:fe=off:fsr=off:hud=11:inj=on:kws=precedence:s2pl=no:sp=weighted_frequency:tgt=full:i=3:si=on:rtra=on_0 on theBenchmark for (2999ds/3Mi)
% 0.22/0.42  % (9146)Instruction limit reached!
% 0.22/0.42  % (9146)------------------------------
% 0.22/0.42  % (9146)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.42  % (9146)Termination reason: Unknown
% 0.22/0.42  % (9146)Termination phase: Property scanning
% 0.22/0.42  
% 0.22/0.42  % (9146)Memory used [KB]: 1791
% 0.22/0.42  % (9146)Time elapsed: 0.020 s
% 0.22/0.42  % (9146)Instructions burned: 37 (million)
% 0.22/0.42  % (9146)------------------------------
% 0.22/0.42  % (9146)------------------------------
% 0.22/0.42  % (9153)lrs+2_1:1_apa=on:au=on:bd=preordered:cnfonf=off:cs=on:ixr=off:sos=on:i=3:si=on:rtra=on_0 on theBenchmark for (2999ds/3Mi)
% 0.22/0.42  % (9152)Instruction limit reached!
% 0.22/0.42  % (9152)------------------------------
% 0.22/0.42  % (9152)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.42  % (9152)Termination reason: Unknown
% 0.22/0.42  % (9152)Termination phase: shuffling
% 0.22/0.42  
% 0.22/0.42  % (9152)Memory used [KB]: 1279
% 0.22/0.42  % (9152)Time elapsed: 0.004 s
% 0.22/0.42  % (9152)Instructions burned: 3 (million)
% 0.22/0.42  % (9152)------------------------------
% 0.22/0.42  % (9152)------------------------------
% 0.22/0.42  % (9153)Instruction limit reached!
% 0.22/0.42  % (9153)------------------------------
% 0.22/0.42  % (9153)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.42  % (9153)Termination reason: Unknown
% 0.22/0.42  % (9153)Termination phase: shuffling
% 0.22/0.42  
% 0.22/0.42  % (9153)Memory used [KB]: 1279
% 0.22/0.42  % (9153)Time elapsed: 0.004 s
% 0.22/0.42  % (9153)Instructions burned: 3 (million)
% 0.22/0.42  % (9153)------------------------------
% 0.22/0.42  % (9153)------------------------------
% 0.22/0.43  % (9151)Instruction limit reached!
% 0.22/0.43  % (9151)------------------------------
% 0.22/0.43  % (9151)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.43  % (9151)Termination reason: Unknown
% 0.22/0.43  % (9151)Termination phase: shuffling
% 0.22/0.43  
% 0.22/0.43  % (9151)Memory used [KB]: 1535
% 0.22/0.43  % (9151)Time elapsed: 0.010 s
% 0.22/0.43  % (9151)Instructions burned: 16 (million)
% 0.22/0.43  % (9151)------------------------------
% 0.22/0.43  % (9151)------------------------------
% 0.22/0.43  % (9154)lrs+10_1:1_cnfonf=off:cs=on:hud=3:prag=on:sup=off:i=7:si=on:rtra=on_0 on theBenchmark for (2999ds/7Mi)
% 0.22/0.43  % (9155)dis+1002_1:1_add=large:cnfonf=lazy_pi_sigma_gen:fe=off:prag=on:i=3:si=on:rtra=on_0 on theBenchmark for (2999ds/3Mi)
% 0.22/0.43  % (9154)Instruction limit reached!
% 0.22/0.43  % (9154)------------------------------
% 0.22/0.43  % (9154)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.43  % (9154)Termination reason: Unknown
% 0.22/0.43  % (9154)Termination phase: shuffling
% 0.22/0.43  
% 0.22/0.43  % (9154)Memory used [KB]: 1407
% 0.22/0.43  % (9154)Time elapsed: 0.006 s
% 0.22/0.43  % (9154)Instructions burned: 8 (million)
% 0.22/0.43  % (9154)------------------------------
% 0.22/0.43  % (9154)------------------------------
% 0.22/0.43  % (9155)Instruction limit reached!
% 0.22/0.43  % (9155)------------------------------
% 0.22/0.43  % (9155)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.44  % (9155)Termination reason: Unknown
% 0.22/0.44  % (9155)Termination phase: shuffling
% 0.22/0.44  
% 0.22/0.44  % (9155)Memory used [KB]: 1279
% 0.22/0.44  % (9155)Time elapsed: 0.003 s
% 0.22/0.44  % (9155)Instructions burned: 3 (million)
% 0.22/0.44  % (9155)------------------------------
% 0.22/0.44  % (9155)------------------------------
% 0.22/0.44  % (9156)dis+1004_1:1_cha=on:cs=on:fe=off:hud=1:i=4:si=on:rtra=on_0 on theBenchmark for (2999ds/4Mi)
% 0.22/0.44  % (9157)lrs+1002_1:1_anc=all_dependent:au=on:cbe=off:fde=unused:ntd=on:i=18:si=on:rtra=on_0 on theBenchmark for (2999ds/18Mi)
% 0.22/0.44  % (9156)Instruction limit reached!
% 0.22/0.44  % (9156)------------------------------
% 0.22/0.44  % (9156)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.44  % (9156)Termination reason: Unknown
% 0.22/0.44  % (9156)Termination phase: shuffling
% 0.22/0.44  
% 0.22/0.44  % (9156)Memory used [KB]: 1279
% 0.22/0.44  % (9156)Time elapsed: 0.004 s
% 0.22/0.44  % (9156)Instructions burned: 4 (million)
% 0.22/0.44  % (9156)------------------------------
% 0.22/0.44  % (9156)------------------------------
% 0.22/0.44  % (9158)lrs+10_1:1_e2e=on:sd=1:sgt=8:ss=axioms:i=710:si=on:rtra=on_0 on theBenchmark for (2999ds/710Mi)
% 0.22/0.44  % (9159)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on theBenchmark for (2999ds/6Mi)
% 0.22/0.44  % (9159)Instruction limit reached!
% 0.22/0.44  % (9159)------------------------------
% 0.22/0.44  % (9159)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.44  % (9159)Termination reason: Unknown
% 0.22/0.44  % (9159)Termination phase: shuffling
% 0.22/0.44  
% 0.22/0.44  % (9159)Memory used [KB]: 1279
% 0.22/0.44  % (9159)Time elapsed: 0.005 s
% 0.22/0.44  % (9159)Instructions burned: 6 (million)
% 0.22/0.44  % (9159)------------------------------
% 0.22/0.44  % (9159)------------------------------
% 0.22/0.45  % (9157)Instruction limit reached!
% 0.22/0.45  % (9157)------------------------------
% 0.22/0.45  % (9157)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.45  % (9157)Termination reason: Unknown
% 0.22/0.45  % (9157)Termination phase: shuffling
% 0.22/0.45  
% 0.22/0.45  % (9157)Memory used [KB]: 1663
% 0.22/0.45  % (9157)Time elapsed: 0.011 s
% 0.22/0.45  % (9157)Instructions burned: 18 (million)
% 0.22/0.45  % (9157)------------------------------
% 0.22/0.45  % (9157)------------------------------
% 0.22/0.45  % (9160)dis+1002_5:1_au=on:bd=off:e2e=on:fde=none:fs=off:fsr=off:sos=on:i=902:si=on:rtra=on_0 on theBenchmark for (2999ds/902Mi)
% 0.22/0.45  % (9161)dis+21_1:8_apa=on:cnfonf=off:fd=off:fsr=off:hud=0:ins=1:kws=inv_frequency:nwc=10.0:ss=axioms:st=5.0:i=21:si=on:rtra=on_0 on theBenchmark for (2999ds/21Mi)
% 0.22/0.45  % (9162)dis+10_1:1_cnfonf=lazy_gen:fe=off:i=5:si=on:rtra=on_0 on theBenchmark for (2999ds/5Mi)
% 0.22/0.46  % (9162)Instruction limit reached!
% 0.22/0.46  % (9162)------------------------------
% 0.22/0.46  % (9162)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.46  % (9162)Termination reason: Unknown
% 0.22/0.46  % (9162)Termination phase: shuffling
% 0.22/0.46  
% 0.22/0.46  % (9162)Memory used [KB]: 1279
% 0.22/0.46  % (9162)Time elapsed: 0.005 s
% 0.22/0.46  % (9162)Instructions burned: 6 (million)
% 0.22/0.46  % (9162)------------------------------
% 0.22/0.46  % (9162)------------------------------
% 0.22/0.46  % (9158)Refutation not found, incomplete strategy
% 0.22/0.46  % (9158)------------------------------
% 0.22/0.46  % (9158)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.46  % (9158)Termination reason: Refutation not found, incomplete strategy
% 0.22/0.46  
% 0.22/0.46  
% 0.22/0.46  % (9158)Memory used [KB]: 6268
% 0.22/0.46  % (9158)Time elapsed: 0.044 s
% 0.22/0.46  % (9158)Instructions burned: 29 (million)
% 0.22/0.46  % (9158)------------------------------
% 0.22/0.46  % (9158)------------------------------
% 0.22/0.46  % (9163)lrs+2_1:1_cnfonf=lazy_not_gen_be_off:cs=on:fe=off:hud=10:inj=on:ins=3:plsq=on:plsqc=1:sd=10:ss=axioms:tnu=1:i=6:si=on:rtra=on_0 on theBenchmark for (2999ds/6Mi)
% 0.22/0.46  % (9161)Instruction limit reached!
% 0.22/0.46  % (9161)------------------------------
% 0.22/0.46  % (9161)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.46  % (9161)Termination reason: Unknown
% 0.22/0.46  % (9161)Termination phase: shuffling
% 0.22/0.46  
% 0.22/0.46  % (9161)Memory used [KB]: 1663
% 0.22/0.46  % (9161)Time elapsed: 0.013 s
% 0.22/0.46  % (9161)Instructions burned: 22 (million)
% 0.22/0.46  % (9161)------------------------------
% 0.22/0.46  % (9161)------------------------------
% 0.22/0.46  % (9163)Instruction limit reached!
% 0.22/0.46  % (9163)------------------------------
% 0.22/0.46  % (9163)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.46  % (9164)lrs+1002_1:128_au=on:c=on:fsr=off:piset=equals:i=377:si=on:rtra=on_0 on theBenchmark for (2999ds/377Mi)
% 0.22/0.46  % (9163)Termination reason: Unknown
% 0.22/0.46  % (9163)Termination phase: shuffling
% 0.22/0.46  
% 0.22/0.46  % (9163)Memory used [KB]: 1279
% 0.22/0.46  % (9163)Time elapsed: 0.005 s
% 0.22/0.46  % (9163)Instructions burned: 6 (million)
% 0.22/0.46  % (9163)------------------------------
% 0.22/0.46  % (9163)------------------------------
% 0.22/0.47  % (9138)Instruction limit reached!
% 0.22/0.47  % (9138)------------------------------
% 0.22/0.47  % (9138)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.47  % (9138)Termination reason: Unknown
% 0.22/0.47  % (9138)Termination phase: Saturation
% 0.22/0.47  
% 0.22/0.47  % (9138)Memory used [KB]: 6652
% 0.22/0.47  % (9138)Time elapsed: 0.085 s
% 0.22/0.47  % (9138)Instructions burned: 184 (million)
% 0.22/0.47  % (9138)------------------------------
% 0.22/0.47  % (9138)------------------------------
% 0.22/0.47  % (9165)dis+1010_1:4_atotf=0.2:c=on:cbe=off:cnfonf=lazy_simp:fe=off:ins=2:ntd=on:s2a=on:s2at=5.0:sgt=5:ss=axioms:st=1.5:i=779:si=on:rtra=on_0 on theBenchmark for (2999ds/779Mi)
% 0.22/0.48  % (9167)lrs+1010_1:1_au=on:s2a=on:sd=1:sgt=50:ss=axioms:i=879:si=on:rtra=on_0 on theBenchmark for (2999ds/879Mi)
% 0.22/0.48  % (9168)dis+1002_1:128_acc=on:er=filter:i=17:si=on:rtra=on_0 on theBenchmark for (2999ds/17Mi)
% 0.22/0.48  % (9166)lrs+10_1:1_cnfonf=lazy_not_be_gen:ntd=on:sp=const_min:ss=axioms:sup=off:i=19:si=on:rtra=on_0 on theBenchmark for (2999ds/19Mi)
% 0.22/0.48  % (9169)ott+21_1:1_apa=on:au=on:cnfonf=off:sos=on:i=3:si=on:rtra=on_0 on theBenchmark for (2998ds/3Mi)
% 0.22/0.49  % (9166)Instruction limit reached!
% 0.22/0.49  % (9166)------------------------------
% 0.22/0.49  % (9166)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.49  % (9166)Termination reason: Unknown
% 0.22/0.49  % (9166)Termination phase: shuffling
% 0.22/0.49  
% 0.22/0.49  % (9166)Memory used [KB]: 1663
% 0.22/0.49  % (9166)Time elapsed: 0.009 s
% 0.22/0.49  % (9166)Instructions burned: 21 (million)
% 0.22/0.49  % (9166)------------------------------
% 0.22/0.49  % (9166)------------------------------
% 0.22/0.49  % (9169)Instruction limit reached!
% 0.22/0.49  % (9169)------------------------------
% 0.22/0.49  % (9169)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.49  % (9169)Termination reason: Unknown
% 0.22/0.49  % (9169)Termination phase: shuffling
% 0.22/0.49  
% 0.22/0.49  % (9169)Memory used [KB]: 1279
% 0.22/0.49  % (9169)Time elapsed: 0.004 s
% 0.22/0.49  % (9169)Instructions burned: 3 (million)
% 0.22/0.49  % (9169)------------------------------
% 0.22/0.49  % (9169)------------------------------
% 0.22/0.49  % (9168)Instruction limit reached!
% 0.22/0.49  % (9168)------------------------------
% 0.22/0.49  % (9168)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.49  % (9168)Termination reason: Unknown
% 0.22/0.49  % (9168)Termination phase: shuffling
% 0.22/0.49  
% 0.22/0.49  % (9168)Memory used [KB]: 1535
% 0.22/0.49  % (9168)Time elapsed: 0.013 s
% 0.22/0.49  % (9168)Instructions burned: 17 (million)
% 0.22/0.49  % (9168)------------------------------
% 0.22/0.49  % (9168)------------------------------
% 0.22/0.50  % (9170)lrs+1010_1:8_cnfonf=off:hud=1:inj=on:tnu=5:i=30:si=on:rtra=on_0 on theBenchmark for (2998ds/30Mi)
% 0.22/0.50  % (9171)dis+10_1:1_ixr=off:plsq=on:plsqc=1:plsqr=32,1:s2a=on:i=127:si=on:rtra=on_0 on theBenchmark for (2998ds/127Mi)
% 0.22/0.50  % (9172)lrs+1002_1:1_au=on:cbe=off:cnfonf=conj_eager:cond=on:hi=on:i=100:si=on:rtra=on_0 on theBenchmark for (2998ds/100Mi)
% 0.22/0.50  % (9167)Refutation not found, incomplete strategy
% 0.22/0.50  % (9167)------------------------------
% 0.22/0.50  % (9167)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.50  % (9167)Termination reason: Refutation not found, incomplete strategy
% 0.22/0.50  
% 0.22/0.50  
% 0.22/0.50  % (9167)Memory used [KB]: 6268
% 0.22/0.50  % (9167)Time elapsed: 0.030 s
% 0.22/0.50  % (9167)Instructions burned: 60 (million)
% 0.22/0.50  % (9167)------------------------------
% 0.22/0.50  % (9167)------------------------------
% 0.22/0.51  % (9170)Instruction limit reached!
% 0.22/0.51  % (9170)------------------------------
% 0.22/0.51  % (9170)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.51  % (9170)Termination reason: Unknown
% 0.22/0.51  % (9170)Termination phase: Property scanning
% 0.22/0.51  
% 0.22/0.51  % (9170)Memory used [KB]: 1791
% 0.22/0.51  % (9170)Time elapsed: 0.017 s
% 0.22/0.51  % (9170)Instructions burned: 33 (million)
% 0.22/0.51  % (9170)------------------------------
% 0.22/0.51  % (9170)------------------------------
% 0.22/0.51  % (9173)dis+10_1:1_anc=none:cnfonf=lazy_gen:fd=preordered:fe=off:hud=10:ins=3:ixr=off:nwc=5.0:plsq=on:plsqc=1:plsqr=32,1:sp=const_frequency:uhcvi=on:i=3:si=on:rtra=on_0 on theBenchmark for (2998ds/3Mi)
% 0.22/0.52  % (9173)Instruction limit reached!
% 0.22/0.52  % (9173)------------------------------
% 0.22/0.52  % (9173)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.52  % (9173)Termination reason: Unknown
% 0.22/0.52  % (9173)Termination phase: shuffling
% 0.22/0.52  
% 0.22/0.52  % (9173)Memory used [KB]: 1279
% 0.22/0.52  % (9173)Time elapsed: 0.003 s
% 0.22/0.52  % (9173)Instructions burned: 6 (million)
% 0.22/0.52  % (9173)------------------------------
% 0.22/0.52  % (9173)------------------------------
% 0.22/0.52  % (9174)lrs+10_8:1_au=on:avsq=on:e2e=on:ins=3:s2a=on:s2at=3.0:ss=axioms:i=20:si=on:rtra=on_0 on theBenchmark for (2998ds/20Mi)
% 0.22/0.52  % (9160)Refutation not found, incomplete strategy
% 0.22/0.52  % (9160)------------------------------
% 0.22/0.52  % (9160)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.52  % (9160)Termination reason: Refutation not found, incomplete strategy
% 0.22/0.52  
% 0.22/0.52  
% 0.22/0.52  % (9160)Memory used [KB]: 8059
% 0.22/0.52  % (9160)Time elapsed: 0.076 s
% 0.22/0.52  % (9160)Instructions burned: 198 (million)
% 0.22/0.52  % (9160)------------------------------
% 0.22/0.52  % (9160)------------------------------
% 0.22/0.52  % (9175)dis+1002_1:1_cbe=off:hud=5:nm=4:plsq=on:plsqr=7,1:prag=on:sp=const_max:tnu=1:i=86:si=on:rtra=on_0 on theBenchmark for (2998ds/86Mi)
% 0.22/0.52  % (9172)Instruction limit reached!
% 0.22/0.52  % (9172)------------------------------
% 0.22/0.52  % (9172)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.52  % (9172)Termination reason: Unknown
% 0.22/0.52  % (9172)Termination phase: Saturation
% 0.22/0.52  
% 0.22/0.52  % (9172)Memory used [KB]: 6524
% 0.22/0.52  % (9172)Time elapsed: 0.027 s
% 0.22/0.52  % (9172)Instructions burned: 100 (million)
% 0.22/0.52  % (9172)------------------------------
% 0.22/0.52  % (9172)------------------------------
% 0.22/0.53  % (9174)Instruction limit reached!
% 0.22/0.53  % (9174)------------------------------
% 0.22/0.53  % (9174)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.53  % (9174)Termination reason: Unknown
% 0.22/0.53  % (9174)Termination phase: Property scanning
% 0.22/0.53  
% 0.22/0.53  % (9174)Memory used [KB]: 1663
% 0.22/0.53  % (9174)Time elapsed: 0.008 s
% 0.22/0.53  % (9174)Instructions burned: 21 (million)
% 0.22/0.53  % (9174)------------------------------
% 0.22/0.53  % (9174)------------------------------
% 0.22/0.53  % (9176)lrs+1010_1:1_au=on:cbe=off:nm=2:ntd=on:sd=2:ss=axioms:st=5.0:i=107:si=on:rtra=on_0 on theBenchmark for (2998ds/107Mi)
% 0.22/0.53  % (9171)Instruction limit reached!
% 0.22/0.53  % (9171)------------------------------
% 0.22/0.53  % (9171)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.53  % (9171)Termination reason: Unknown
% 0.22/0.53  % (9171)Termination phase: Saturation
% 0.22/0.53  
% 0.22/0.53  % (9171)Memory used [KB]: 6524
% 0.22/0.53  % (9171)Time elapsed: 0.035 s
% 0.22/0.53  % (9171)Instructions burned: 129 (million)
% 0.22/0.53  % (9171)------------------------------
% 0.22/0.53  % (9171)------------------------------
% 0.22/0.53  % (9177)lrs+2_1:1024_cnfonf=lazy_gen:fe=off:hud=15:plsq=on:plsqc=1:plsqr=32,1:i=39:si=on:rtra=on_0 on theBenchmark for (2998ds/39Mi)
% 0.22/0.54  % (9178)dis+10_1:1_cnfonf=lazy_not_gen:fsr=off:kws=precedence:nwc=5.0:s2a=on:ss=axioms:st=1.5:i=448:si=on:rtra=on_0 on theBenchmark for (2998ds/448Mi)
% 0.22/0.54  % (9179)lrs+10_1:512_au=on:fde=unused:lma=on:nm=32:plsq=on:plsqc=1:plsqr=16121663,131072:sfv=off:sp=const_max:ss=axioms:st=3.0:tgt=full:i=46:si=on:rtra=on_0 on theBenchmark for (2998ds/46Mi)
% 0.22/0.54  % (9177)Instruction limit reached!
% 0.22/0.54  % (9177)------------------------------
% 0.22/0.54  % (9177)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.54  % (9177)Termination reason: Unknown
% 0.22/0.54  % (9177)Termination phase: Property scanning
% 0.22/0.54  
% 0.22/0.54  % (9177)Memory used [KB]: 1791
% 0.22/0.54  % (9177)Time elapsed: 0.012 s
% 0.22/0.54  % (9177)Instructions burned: 40 (million)
% 0.22/0.54  % (9177)------------------------------
% 0.22/0.54  % (9177)------------------------------
% 0.22/0.55  % (9175)Instruction limit reached!
% 0.22/0.55  % (9175)------------------------------
% 0.22/0.55  % (9175)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.55  % (9175)Termination reason: Unknown
% 0.22/0.55  % (9175)Termination phase: Property scanning
% 0.22/0.55  
% 0.22/0.55  % (9175)Memory used [KB]: 2046
% 0.22/0.55  % (9175)Time elapsed: 0.024 s
% 0.22/0.55  % (9175)Instructions burned: 88 (million)
% 0.22/0.55  % (9175)------------------------------
% 0.22/0.55  % (9175)------------------------------
% 0.22/0.55  % (9180)lrs+10_1:10_au=on:av=off:cbe=off:cnfonf=lazy_pi_sigma_gen:ntd=on:plsq=on:plsqc=1:plsqr=32,1:i=98:si=on:rtra=on_0 on theBenchmark for (2998ds/98Mi)
% 0.22/0.55  % (9179)Instruction limit reached!
% 0.22/0.55  % (9179)------------------------------
% 0.22/0.55  % (9179)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.55  % (9179)Termination reason: Unknown
% 0.22/0.55  % (9179)Termination phase: SInE selection
% 0.22/0.55  
% 0.22/0.55  % (9179)Memory used [KB]: 1791
% 0.22/0.55  % (9179)Time elapsed: 0.014 s
% 0.22/0.55  % (9179)Instructions burned: 47 (million)
% 0.22/0.55  % (9179)------------------------------
% 0.22/0.55  % (9179)------------------------------
% 0.22/0.56  % (9181)ott+1002_1:1_apa=on:au=on:bd=off:cnfonf=off:fd=off:sos=on:sp=weighted_frequency:i=507:si=on:rtra=on_0 on theBenchmark for (2998ds/507Mi)
% 0.22/0.56  % (9176)Instruction limit reached!
% 0.22/0.56  % (9176)------------------------------
% 0.22/0.56  % (9176)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.56  % (9176)Termination reason: Unknown
% 0.22/0.56  % (9176)Termination phase: Saturation
% 0.22/0.56  
% 0.22/0.56  % (9176)Memory used [KB]: 6396
% 0.22/0.56  % (9176)Time elapsed: 0.030 s
% 0.22/0.56  % (9176)Instructions burned: 108 (million)
% 0.22/0.56  % (9176)------------------------------
% 0.22/0.56  % (9176)------------------------------
% 0.22/0.56  % (9182)dis+1010_2:3_amm=off:fd=preordered:ixr=off:nm=0:pe=on:piset=equals:prag=on:sac=on:tgt=ground:i=149:si=on:rtra=on_0 on theBenchmark for (2998ds/149Mi)
% 1.71/0.57  % (9183)lrs+21_1:16_au=on:bd=off:piset=and:i=39:si=on:rtra=on_0 on theBenchmark for (2998ds/39Mi)
% 1.71/0.58  % (9180)Instruction limit reached!
% 1.71/0.58  % (9180)------------------------------
% 1.71/0.58  % (9180)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.71/0.58  % (9180)Termination reason: Unknown
% 1.71/0.58  % (9180)Termination phase: Saturation
% 1.71/0.58  
% 1.71/0.58  % (9180)Memory used [KB]: 2046
% 1.71/0.58  % (9180)Time elapsed: 0.026 s
% 1.71/0.58  % (9180)Instructions burned: 99 (million)
% 1.71/0.58  % (9180)------------------------------
% 1.71/0.58  % (9180)------------------------------
% 1.71/0.58  % (9183)Instruction limit reached!
% 1.71/0.58  % (9183)------------------------------
% 1.71/0.58  % (9183)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.71/0.58  % (9183)Termination reason: Unknown
% 1.71/0.58  % (9183)Termination phase: Property scanning
% 1.71/0.58  
% 1.71/0.58  % (9183)Memory used [KB]: 1791
% 1.71/0.58  % (9183)Time elapsed: 0.014 s
% 1.71/0.58  % (9183)Instructions burned: 42 (million)
% 1.71/0.58  % (9183)------------------------------
% 1.71/0.58  % (9183)------------------------------
% 1.71/0.59  % (9184)lrs+1004_1:1_cnfonf=lazy_pi_sigma_gen:fe=off:gs=on:hud=10:prag=on:tnu=1:i=6:si=on:rtra=on_0 on theBenchmark for (2997ds/6Mi)
% 1.71/0.59  % (9184)Instruction limit reached!
% 1.71/0.59  % (9184)------------------------------
% 1.71/0.59  % (9184)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.71/0.59  % (9184)Termination reason: Unknown
% 1.71/0.59  % (9184)Termination phase: shuffling
% 1.71/0.59  
% 1.71/0.59  % (9184)Memory used [KB]: 1279
% 1.71/0.59  % (9184)Time elapsed: 0.003 s
% 1.71/0.59  % (9184)Instructions burned: 7 (million)
% 1.71/0.59  % (9184)------------------------------
% 1.71/0.59  % (9184)------------------------------
% 1.86/0.59  % (9165)First to succeed.
% 1.86/0.59  % (9164)Refutation not found, non-redundant clauses discarded% (9164)------------------------------
% 1.86/0.59  % (9164)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.86/0.59  % (9164)Termination reason: Refutation not found, non-redundant clauses discarded
% 1.86/0.59  
% 1.86/0.59  % (9164)Memory used [KB]: 7547
% 1.86/0.59  % (9164)Time elapsed: 0.132 s
% 1.86/0.59  % (9164)Instructions burned: 371 (million)
% 1.86/0.59  % (9164)------------------------------
% 1.86/0.59  % (9164)------------------------------
% 1.86/0.59  % (9185)dis+1002_1:1_aac=none:au=on:e2e=on:nm=2:nwc=10.0:sd=1:ss=axioms:st=3.0:i=1087:si=on:rtra=on_0 on theBenchmark for (2997ds/1087Mi)
% 1.86/0.60  % (9186)dis+10_1:1_aac=none:cs=on:i=47:si=on:rtra=on_0 on theBenchmark for (2997ds/47Mi)
% 1.86/0.60  % (9187)lrs+1010_1:128_av=off:cbe=off:cnfonf=lazy_simp:fsr=off:ntd=on:ss=axioms:st=1.5:i=44:si=on:rtra=on_0 on theBenchmark for (2997ds/44Mi)
% 1.86/0.60  % (9185)Refutation not found, incomplete strategy
% 1.86/0.60  % (9185)------------------------------
% 1.86/0.60  % (9185)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.86/0.60  % (9185)Termination reason: Refutation not found, incomplete strategy
% 1.86/0.60  
% 1.86/0.60  
% 1.86/0.60  % (9185)Memory used [KB]: 6268
% 1.86/0.60  % (9185)Time elapsed: 0.011 s
% 1.86/0.60  % (9185)Instructions burned: 29 (million)
% 1.86/0.60  % (9185)------------------------------
% 1.86/0.60  % (9185)------------------------------
% 1.86/0.61  % (9182)Instruction limit reached!
% 1.86/0.61  % (9182)------------------------------
% 1.86/0.61  % (9182)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.86/0.61  % (9182)Termination reason: Unknown
% 1.86/0.61  % (9182)Termination phase: Saturation
% 1.86/0.61  
% 1.86/0.61  % (9182)Memory used [KB]: 6908
% 1.86/0.61  % (9182)Time elapsed: 0.045 s
% 1.86/0.61  % (9182)Instructions burned: 149 (million)
% 1.86/0.61  % (9182)------------------------------
% 1.86/0.61  % (9182)------------------------------
% 1.86/0.61  % (9186)Instruction limit reached!
% 1.86/0.61  % (9186)------------------------------
% 1.86/0.61  % (9186)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.86/0.61  % (9186)Termination reason: Unknown
% 1.86/0.61  % (9186)Termination phase: Property scanning
% 1.86/0.61  
% 1.86/0.61  % (9186)Memory used [KB]: 1791
% 1.86/0.61  % (9186)Time elapsed: 0.015 s
% 1.86/0.61  % (9186)Instructions burned: 49 (million)
% 1.86/0.61  % (9186)------------------------------
% 1.86/0.61  % (9186)------------------------------
% 1.86/0.61  % (9187)Instruction limit reached!
% 1.86/0.61  % (9187)------------------------------
% 1.86/0.61  % (9187)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.86/0.61  % (9187)Termination reason: Unknown
% 1.86/0.61  % (9187)Termination phase: Property scanning
% 1.86/0.61  
% 1.86/0.61  % (9187)Memory used [KB]: 1791
% 1.86/0.61  % (9187)Time elapsed: 0.013 s
% 1.86/0.61  % (9187)Instructions burned: 44 (million)
% 1.86/0.61  % (9187)------------------------------
% 1.86/0.61  % (9187)------------------------------
% 1.86/0.62  % (9189)lrs+10_7:1_cnfonf=lazy_gen:fe=off:nwc=5.0:plsq=on:i=62:si=on:rtra=on_0 on theBenchmark for (2997ds/62Mi)
% 1.86/0.62  % (9188)dis+10_1:1_av=off:bd=off:cnfonf=lazy_gen:fe=off:hud=10:plsq=on:plsqc=1:plsqr=32,1:prag=on:tnu=1:i=432:si=on:rtra=on_0 on theBenchmark for (2997ds/432Mi)
% 1.86/0.62  % (9190)lrs+1010_1:16_add=large:amm=off:anc=all_dependent:chr=on:fd=off:ins=2:sp=const_max:tnu=5:uhcvi=on:i=31:si=on:rtra=on_0 on theBenchmark for (2997ds/31Mi)
% 1.86/0.62  % (9191)dis+10_1:128_hud=1:i=96:si=on:rtra=on_0 on theBenchmark for (2997ds/96Mi)
% 2.12/0.63  % (9190)Instruction limit reached!
% 2.12/0.63  % (9190)------------------------------
% 2.12/0.63  % (9190)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 2.12/0.63  % (9190)Termination reason: Unknown
% 2.12/0.63  % (9190)Termination phase: Property scanning
% 2.12/0.63  
% 2.12/0.63  % (9190)Memory used [KB]: 1791
% 2.12/0.63  % (9190)Time elapsed: 0.010 s
% 2.12/0.63  % (9190)Instructions burned: 32 (million)
% 2.12/0.63  % (9190)------------------------------
% 2.12/0.63  % (9190)------------------------------
% 2.12/0.63  % (9165)Refutation found. Thanks to Tanya!
% 2.12/0.63  % SZS status Theorem for theBenchmark
% 2.12/0.63  % SZS output start Proof for theBenchmark
% See solution above
% 2.12/0.63  % (9165)------------------------------
% 2.12/0.63  % (9165)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 2.12/0.63  % (9165)Termination reason: Refutation
% 2.12/0.63  
% 2.12/0.63  % (9165)Memory used [KB]: 10362
% 2.12/0.63  % (9165)Time elapsed: 0.149 s
% 2.12/0.63  % (9165)Instructions burned: 298 (million)
% 2.12/0.63  % (9165)------------------------------
% 2.12/0.63  % (9165)------------------------------
% 2.12/0.63  % (9137)Success in time 0.254 s
% 2.15/0.63  % Vampire---4.8 exiting
%------------------------------------------------------------------------------